CentOS 명령어 정리

haribo·2021년 3월 11일
0

Linux

목록 보기
1/1

로그아웃

logout
exit
# ctrl + d 단축키도 가능하다.

history

# 사용하면 그동안 썼던 명령어 내역이 나온다.
history

# 번호를 택해서 쓰면 된다.
!(사용할 번호)

자동완성 Tap

셧다운

shutdown -h now # 지금 즉시 종료
shutdown -h +1 # 로그인 사용자에게 1분 후 종료가 된다는 메시지를 보낸 후 1분 후 종료

리부팅

# 지금 즉시 리부팅
shutdown -r now 
reboot

shutdown -r +1 # 로그인 사용자에게 1분 후 종료가 된다는 메시지를 보낸 후 1분 후 리부팅

vi편집기 실행

vi test.txt 

test.txt 파일이 있으면 실행되고, 없으면 새로 만들어서 실행된다.

vi 명령어

w : write

q : quit

파일 내용 확인

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/사용자계정명

su - 일반 사용자가 root 계정으로 전환하기

파일 접근 권한 변경

chmod 654 test

권한은 8진법으로 표현

r=4

w=2

x=1

r-x → 4+1 → 5

read, write, execute

파일 소유자 변경

chown 소유자명 파일명

파일 소유그룹 변경

chgrp 소유그룹 파일명

프로세스


ps 명령어 옵션

프로세스 정보

프로세스 상태

프로세스 종료

  • 강제종료 옵션 : -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포트번호]

제목 없음

profile
그림 그리는 백엔드 개발자

0개의 댓글