본문 바로가기

Development/Linux

[Linux] 리눅스 자주 사용하는 명령어

리눅스 자주 사용하는 명령어

 

Ⅰ 계정관련 명령어

 

ㅇ 계정목록 확인

# cat etc/passwd 


ㅇ 계정이 있는지 확인

# cat etc/passwd|grep[계정명] 


ㅇ 계정생성
- 우분투, SUSE, Arch의 경우

# useradd [계정명] -m -s /bin/bash 


- CentOS

# sudo adduser [계정명] 
# useradd [계정명] 


ㅇ 계정삭제
- 계정 + 홈 디렉토리 삭제

# userdel -r [계정명] 


- 계정만 삭제

# userdel [계정명]

 

 

Ⅱ 소유자/퍼미션 변경 명령어

 

ㅇ 소유자 변경
- 사용자 변경

# chown [사용자명][변경할 파일 또는 디렉토리] 


- 사용자 + 그룹 변경

# chown [사용자명]:[그룹대상] 


- 하위 디렉토리까지 모두 변경

# chown [사용자명]:[그룹대상] [디렉토리 경로] 


ㅇ 퍼미션 변경
- 하위 디렉토리까지 모두 변경

# chmod [퍼미션(8bit permission)][파일명 또는 디렉토리명] 


 

 

Ⅲ 디렉토리 생성 명령어

 

ㅇ 디렉토리 생성

# mkdir [디렉토리명] 


ㅇ 하위 디렉토리까지 생성

# mkdir -p [디렉토리명]/[하위 디렉토리명] 


ㅇ 특정 퍼미션을 가진 디렉토리 생성

# mkdir -m [퍼미션(8bit permission)] [디렉토리명] 


ㅇ 일반파일 생성

# touch [파일명]

 

 

Ⅳ 디렉토리 삭제 명령어

 

ㅇ 디렉토리 삭제(하위 디렉토리가 있다면 삭제 불가능)

# rmdir [디렉토리명] 


ㅇ 디렉토리 삭제(하위 디렉토리가 있어도 삭제)

# rm -rf [디렉토리명] 


ㅇ 옵션

r : 파일 디렉토리와 함께 삭제 
f : 파일 유무와 상관없이 삭제 
v : 어떻게 처리되었는지 출력

 

 

Ⅴ 디렉토리 이동 명령어

 

ㅇ 입력한 디렉토리로 이동

# cd [디렉토리 경로] 


ㅇ 현재 디렉토리

# cd . 


ㅇ 한 단계 상위 디렉토리로 이동

# cd .. 


ㅇ 최상위 디렉토리로 이동

# cd / 


ㅇ 변수에 저장된 경로로 이동

# cd $변수명 


ㅇ 입력한 사용자의 홈 디렉토리로 이동

# cd ~계정명 


ㅇ 현재 경로보기

# pwd

 

 

Ⅵ 디렉토리 용량 확인

 

ㅇ 해당 디렉토리 용량 확인

# du -hs [폴더명] 


ㅇ 현재 디렉토리에 있는 디렉토리 및 파일 용량 확인

# du -hs *

 

 

Ⅶ 파일이동 및 파일명 변경

 

ㅇ 파일명 변경

#mv [변경전 파일] [변경후 파일명]
#rename [변경전 파일명] [변경후 파일명] [변경할 파일명]

 

ㅇ 디렉토리/파일 이동

#mv [이동할 파일] [이동할 디렉토리 경로]

#mv [이동할 디렉토리] [이동할 디렉토리 경로]

 

 

Ⅷ 파일/디렉토리 복사 명령어

 

ㅇ 동일 서버내 파일 복사

# cp [복사할 파일 경로]/[복사할 파일명] [복사될 파일 경로]/[복사될 파일명] 


ㅇ 서로다른 서버간 디렉토리 복사

# scp -r [경로] [계정명]@[IP주소]:[복사될 경로] 


- 예시 (111.222.333.444 서버 홈 디렉토리의 aaa 디렉토리를 111.222.333.555 서버의 홈 디렉토리로 복사)

# scp -r /home/aaa aaa@111.222.333.555:/home/ 


- 포트번호가 22번이 아닌 임의의 포트번호일 경우

# scp -P [포트번호] -r [경로] [계정명]@[IP주소]:[복사할 디렉토리 경로] [복사될 경로] 


ㅇ 서로다른 서버에서 디렉토리 복사해서 가져오기(계정 먼저 생성)

# rsync -av -e [계정명]@[IP주소]:[복사할 경로] [복사될 경로] 


- 예시 (111.222.333.444 서버 홈 디렉토리의 bbb 디렉토리를 111.222.333.555 서버 홈 디렉토리로 가져오기)

# rsync -av -e bbb@111.222.333.444:/home/bbb /home/ 


- 포트번호가 22번이 아닌 임의의 포트번호일 경우

# rsync -av -e 'ssh -p [포트번호]' [계정명]@[IP주소]:[복사할 경로] [복사될 경로]

 

 

Ⅸ 파일열기/파일닫기

 

ㅇ 파일열기

# vi [파일명] 
# vim [파일명] 


ㅇ 파일닫기

# :q 


ㅇ 파일저장 후 닫기

# :wq

 

 

Ⅹ 아파치 재시작

# systemctl restart httpd.service 
# systemctl restart httpd 
# service httpd restart 
# apachectl restart