반응형
[참조] https://velog.io/@hari6180/CentOS-%EB%AA%85%EB%A0%B9%EC%96%B4-%EC%A0%95%EB%A6%AC
CentOS 기본 명령
CentOS 명령어도 대부분 우분트와 같다.
로그아웃
logout
exit
# ctrl + d 단축키도 가능하다.
history
# 사용하면 그동안 썼던 명령어 내역이 나온다.
history
# 번호를 택해서 쓰면 된다.
!(사용할 번호)
자동완성
탭 키
자동 완성 기능이 동작하지 않을 때 --> http://egloos.zum.com/mcchae/v/11215844
셧다운
shutdown -h now # 지금 즉시 종료
shutdown -h +1 # 로그인 사용자에게 1분 후 종료가 된다는 메시지를 보낸 후 1분 후 종료
리부팅
# 지금 즉시 리부팅
shutdown -r now
reboot
shutdown -r +1 # 로그인 사용자에게 1분 후 종료가 된다는 메시지를 보낸 후 1분 후 리부팅
vi편집기 실행
vi test.txt
test.txt 파일이 있으면 실행되고, 없으면 새로 만들어서 실행된다.
w : write
q : quit
wq: 저장하고 종료
파일 내용 확인
cat "파일 이름.파일형식"
파일 및 디렉토리
디렉토리 변경
# 절대 패스
cd /home/student
# 상대 패스
cd ../home/student
# 현재 작업 디렉토리의 위치와 상관없이 홈 디렉토리로 이동
cd + enter키
cd ~
현재 작업 디렉토리 절대 패스로 출력
pwd
디렉토리 파일목록 출력
# 간략히 보기
ls "디렉토리명"
# 자세히 보기
ls -l
# 숨김파일 보기(.으로 시작하는 파일)
ls -a
# 숨김파일까지 자세히 보기
ls -al
-al 로 표시되는 파일은
파일 종류, 접근권한, 링크수, 소유자, 소유그룹, 파일크기, 마지막 수정일시, 숨김파일등 으로 나온다.
디렉토리 생성 및 삭제
# 생성
mkdir "디렉토리 이름"
# 삭제 - 디렉토리 안에 다른 파일이나 디렉토리가 존재하지 않아야만 가능
rmdir "디렉토리 이름"
파일 복사, 삭제, 파일 및 디렉토리 이동
# 복사
cp "파일명.확장자" "(복사한)파일명.확장자"
# 삭제
rm "파일명.확장자"
# 이동
mv "파일명.확장자" "이동할 경로"/"(변경가능)파일명.확장자"
mv "이동할 대상" "디렉토리 이름" # 이동할 대상의 이름은 그대로 유지
심볼릭 링크 생성
- 심볼릭 링크 : 두개의 파일을 연결해놓고 하나의 파일처럼 쓰는 것, 하나의 저장공간 사용, 하나의 파일을 변경하면 연결된 다른 파일도 변경된다.
ln -s file1 file2
- 하드링크 : 물리적으로 연결, 별도 저장공간 차지
ln file1 file2
file 종류 표시
file 대상파일경로(혹은 파일경로패턴)
파일 찾기
find 검색시작위치 -name "파일명패턴"
# 특정 파일명 패턴을 갖는 파일들을 검색해서 지우기
find 검색시작위치 -name "파일명패턴" -delete
ah를 붙이면 모든 파일(a)에 대한 단위 적용(h)해서 볼 수 있음
파일 다운로드 / 압축
파일 내려받기
wget 다운로드URL
- 이상하게 저장되는 경우가 있어서 다음 명령어 사용 많이함
다른 이름으로 저장하기
wget -O 저장될 파일이름 다운로드URL
이어받기
wget -c 다운로드URL
압축하기
tar zcvf 생성될압축파일이름 압축할원본파일_혹은_디렉토리
해제하기
tar zxvf 압축파일_이름
- c : 새로운 묶음 만듬
- x : 묶인 파일 풀어줌
- f : 묶음 파일의 이름 지정 옵션
- v : 묶음 파일을 풀거나 묶을 때 과정을 화면에 출력
zip 명령어 압축/해제
zip 압축파일이름 압축대상파일이름
unzip 파일이름
gzip 명령어와 달리 묶음 파일을 거치지 않고 바로 압축/해제 가능
사용자 및 그룹 관리
관리자 로그인
su
/etc/passwd 파일 열기
vi /etc/passwd
# q! 를 입력하여 변경사항 저장없이 나온다.
설정파일에 공백이라도 수정이 들어가면 리눅스 다시깔아야함
shadow(비번 저장, md5로 암호화 되어있음), group 파일도 똑같이 연다
사용자 그룹 추가 / 삭제
groupadd [-g 그룹번호] 그룹명
groupdel 그룹명
사용자 그룹 생성/삭제 결과 확인
grep 검색어 검색할파일경로
사용자 계정 관리
# 사용자 계정 생성
useradd [-g 그룹명] 사용자명
# 생성된 사용자 비밀번호 설정
passwd 사용자명
# 사용자 그룹 연결
groupmod -g 그룹명 사용자명
# 사용자 계정 삭제
userdel 사용자명 #passwd, shadow파일 내용 삭제되지만, 홈디렉토리는 남아있음
# 삭제 강제하기
rm -rf /home/사용자계정명
파일 접근 권한 변경
chmod 654 test
권한은 8진법으로 표현
r=4
w=2
x=1
r-x → 4+1 → 5
read, write, execute
파일 소유자 변경
chown 소유자명 파일명
파일 소유그룹 변경
chgrp 소유그룹 파일명
프로세스
프로세스 종료
- 강제종료 옵션 : -9
- PID를 활용하여 종료
- Background Process : kill
- Foreground Process : ctrl+c
kill -9 PID
Foreground / Background 관리
- Background process 실행 : &
- B → F 전환 : fg
- Foreground Process 정지 : Ctrl + z
- F → B 전환 : bg
- Background Process 목록 보기 : jobs
모니터링 명령어
출력결과 나누기
명령어 | more
필터링
ps -ef | grep "검색할문자열"
화면 한페이지 단위로 출력
명령어 | less
파일 내용 앞부분만 출력
head 파일경로
파일이 있는지 없는지 확인하는용 (잘 안씀)
파일 내용 뒷부분만 출력
tail 파일경로
파일 추가된거 확인 (많이씀)
리다이렉션
표준입출력 방향 변경(키보드 입력대신 파일 입력으로 바꾼다거나, 모니터 출력대신 파일 출력으로 바꾼다거나)
프로세스 상태 저장
ps -ef > ps.txt
저장된 파일 cat 명령어에 전달
cat < ps.txt
Shell
명령어 별칭 지정
alias 별칭='명령어'
쉘 프롬프트 변경
PS1='$LOGNAME@ $PWD #'
prompt : 컴퓨터 터미널의 CLI(커맨드 라인 인터페이스)의 명령줄 대기모드
환경변수 관련 명령어
# 전체 환경변수 보기
printenv [|grep]
env
# 특정 환경변수 보기
echo $환경변수
# 환경변수 설정
export 환경변수이름='값'
쉘 초기화 파일 설정
# 파일 열기
vi $HOME/.bash_profile
vi ~/.bash_profile
# 수정 후 로드
source $HOME/.bash_profile
source ~/.bash_profile
YUM
기타
- which 파일명 : 파일 경로 찾기
- readlink -f 심볼릭링크 : 심볼릭 링크 원본 경로 확인
- javac 자바파일 : JAVA 컴파일
- java 자바파일 : 컴파일 된 파일 실행
방화벽
포트 추가
firewall-cmd [--permanent] --zone=public --add-port=포트/종류
permanent 옵션을 넣지 않으면 일시적으로 즉시 반영되어 재부팅할 경우 삭제된다.
옵션을 넣었으면 재로드 해서 영구적으로 적용시키자
방화벽 재로드
firewall-cmd --reload
포트 삭제
firewall-cmd [--permanent] --zone=public --remove-port=포트/종류
서비스 추가
firewall-cmd [--permanent] --zone=public --add-service=포트/종류
서비스 삭제
firewall-cmd [--permanent] --zone=public --remove-service=포트/종류
외부에서 SSH서버로 접속
ssh 사용자아이디@접속할주소 [-p포트번호]
반응형
'Linux, Mac' 카테고리의 다른 글
curl 설치 및 사용법 - HTTP GET/POST, REST API 연계 (0) | 2021.12.09 |
---|---|
CentOS에서 apt, apt-get 사용하기 (0) | 2021.12.07 |
배치 파일 명령과 쉘 스크립트 명령 비교표 (0) | 2021.11.30 |
VI 편집기 명령어 (0) | 2021.11.30 |
이것이 리눅스다(CentOS 8) (0) | 2021.11.27 |