하우위키

리눅스 실무 명령어 모음

IT 컴퓨터 | 2025년 12월 01일 09시 31분
리눅스 서버를 운영할때 생각보다 명령어 사용을 자주 사용하는경우가 많다. 특히 자주 사용하는 명령어들의 경우 서로 연관되는 경우가 많고, 리눅스 서버 관리나 서버프로그래밍을 한다면 더욱 필요하다. 윈도우 서버와는 다르게 리눅스 서버는 GUI방식보다는 터미널 환경에서 작업을 많이 하기 때문에 명령어 사용법에 대해서 보다 자세히 익숙해질 필요가 있다. 어떤 명령어들이 있는지 한 번 알아보자. 리눅스 실무 명령어 [lwptoc]

1. 시스템 명령어

w 시스템운영시간, 날짜, 서버부하, 로그인 사용자 확인 stat 파일이나 시스템 상태를 출력 -c %w : 최초 만들어진 날짜 출력 -c %x : 마지막 엑세스 날짜 출력 -c %y : 마지막 수정된 날짜 출력 -c %z : 마지막 변경돈 날짜 출력 crontab 정기적으로 설정된 명령을 실행. 예약스케쥴러 설정 crontab -e 편집으로 실행 dmesg 커널 시스템 메시지 확인 dmesg dmesg -c (메세지 내용 지우기) date 현재 날짜를 출력 date date +%Y 현재 년도 출력 (참고로 +%Y 앞에 빈공간 있어야 한다.) date +%m 현재 달 출력 date +%d 현재 일자 출력 cal 현재 달력을 출력 -y : 년도 -m : 월 cal cal -y 1993 1993년도 달력 출력 cal -m 7 7월 달력 출력 time 현재 시간을 출력 uname 커널 버전을 표시 uname -a uname -mrs cat /proc/version lsb_release 배포한 리눅스 버전을 표시 lsb_release lsb_release -a cat /etc/*-release hdparm 하드디스트 검사 hdparm -T /dev/sda hdparm -Tt /dev/sda iostat 시스템의 자원 사용율을 보여준다. iostat -d 디스크의 속도 iostat -c CPU의 이용 pvscan 물리적인 볼륨을 스캔 PV /dev/sdb1 VG Secondary lvm2 [1.82 TiB / 0 free] PV /dev/sda1 VG Primary lvm2 [1.82 TiB / 0 free] blkid 디바이스 정보를 출력한다. 암호화된 볼륨등을 확인 할 수 있다. clear 터미널의 창을 깨끗히 지우는 명령어 su User 변경을 하기위한 명령어 halt 시스템 종료 reboot 시스템을 끄거나 리부팅 shutdown 시스템을 종료하거나 리부팅할때사용.. shutdown -r now 즉시 리부팅 adduser 사용자 계정을 추가 passwd 패스워드 입력 및 변경 userdel 사용자 계정 삭제 who, w, whoami, who am i 현재 로그인한 사용자들을 보고자할때 사용하는 명령어 free 스왑영역,램 사용량과 남은 용량을 표시 which 명령어의 위치를 출력 whereis 명령어의 실행파일 경로 및 소스 메뉴얼 페이지 파일의 경로를 출력 whatis 명령어의 기본 기능을 출력 ps 현재 실행중인 프로세스 출력 finger 시스템유저들에 대한 정보를 출력

2. 권한 명령어

chown 사용자 권한을 지정 -R daemon.daemon [디렉토리명] -R 옵션은 해당 디렉토리와 내부의 모든 디렉토리 및 파일에 적용하는 옵션 chmod 파일의 권한(rwx)을 지정 숫자로 지정시 첫번째 숫자는 유저, 두번째 숫자는 그룹, 세번째 숫자는 나머지의 권한을 뜻한다. 알파벳으로 지정시 -, + 기호를 사용하여 해당 소유권자(u, g, o, a)와 권한을 지정한다. chmod 777 test.txt 유저, 그룹, 그외 모두 읽기, 쓰기, 실행 가능 chmod 755 test.txt 유저는 읽기, 쓰기, 실행 가능하나 그룹과 나머지는 읽기, 실행만 가능하다. chmod u+r test.txt u는 유저를 뜻하며 +는 추가를 뜻한다. r은 읽기 권한 속성을 의미한다. 즉, 유저에게만 읽기 권한을 추가한다. chmod g-w test.txt g는 그룹을 뜻하며 -는 삭제를 뜻한다. w은 쓰기 권한 속성을 의미한다. 즉, 그룹에게 쓰기 권한을 주지 않는 다는 것이다. chmod o+x test.txt 위와 같은 방식으로 유저, 그룹을 제외한 나머지 소유자들에게 실행권한을 준다는 것이다. chmod a+w test.txt a는 모든 소유자에게 준다는 것으로 모두 쓰기 권한을 준다는 것이다.

3. 파일 및 디렉토리 명령어

pwd 현재 위치한 절대경로 출력 PATH 경로를 보여준다. 대문자로 적어야 한다 echo $PATH [PATH 설정] 자신의 홈 디렉토리의 .profile 또는 .bash_profile에다가 콜론( : )을 통해 경로를 계속 추가한다. 그러면 어느 위치에서든지 설정된 경로내의 프로그램을 실행 시킬 수 있다. 재시작을 해야 적용이 되나 테스트하기 위해 source .profile 또는 source .bash_profile를 통해 확인 해 볼 수 있다. mkdir 디렉토리를 생성 mkdir a a라는 이름의 디렉토리 생성 mkdir -p /home/a 경로명에 따라 없는 모든 디렉토리 생성 cp 파일을 복사 -a : 원본 파일의 속성, 링크 정보들을 그대로 유지하면서 복사 -f : 복사할 대상 파일이 이미 있는 경우 지우고 복사한다. -i : 덮어쓰기 전에 여부를 묻는다. -p : 가능하다면 파일 속성을 유지한다. -r : 하위 디렉토리까지 복사한다. -s : 복사하는 대신 심볼릭 링크를 만든다. -u : 소스 파일이 복사될 파일보다 새것이거나 복사될 파일이 없을 때만 복사한다. cp a.txt b.txt a.txt 파일을 b.txt파일로 복사 cp -r mk /home mk 디렉토리 전부를 /home 안에 복사한다. scp 네트워크를 통해 파일을 복사한다. s는 Secure로서 안전하게 복사하도록 한다. scp src desc 순으로 src의 값을 desc로 보낸다. scp -P 22 /home/a.txt 192.168.0.1:/home ls 디렉토리 목록을 표시 -a : 숨긴 파일 표시 -l : 리스트 정리로 표시 ls -a 숨긴 것까지 보이게 ls -al 숨긴 것과 리스트로 정렬해 보이기 ll --full-time 파일의 대한 모든 시간을 보여준다. cat 표준 입출력으로 파일 내용을 이어 붙이거나, 복사 cat text1 > text2 text1의 내용을 text2에 복사한다. (text2의 기존 내용은 사라진다.) cat text1 >> text2 text1의 내용을 text2에 복사한다. (text2의 기존 내용 뒤에 text1의 내용이 추가된다.) cat text1 text2 > text2 여러개의 파일을 이어 붙이거나 복사가 가능하다. rsync 파일 디렉토리 동기화 -a 디렉토리를 싱크 할 경우 -v 처리 과정, 결과 출력 -z 파일 전송시 압축 처리 --delete desc엔 있지만 src에 없는 파일이라면 desc의 파일을 삭제 --exclude= 싱크에서 제외할 파일 -e desc의 특정한 bshell 사용 rsync test.txt /home rsync text.txt 192.168.0.1:/home rsync -avz --delete -e ssh text_directory 192.168.0.1:/home cd 디렉토리 이동 cd : 홈디렉토리로 이동 cd.. : 상위 디렉토리로 이동 cd. : 현재 디렉토리로 이동 cd- : 이전 디렉토리로 이동 cd~ : 홈디렉토리로 이동 rmdir 디렉토리 지우는 명령어 mv 파일이나 디렉토리를 옮기는 명령어 rm 파일 or 디렉토리 삭제 ln 링크 파일을 생성하는 명령어 df 현재디스크의 사용량과 남은 용량을 출력 du 옵션으로 지정한 디렉토리의 용량을 표시 split 파일을 쪼갤때 사용하는 명령어

4. 검색 명령어

find 파일이나 디렉토리 검색 -name : 파일명 검색 -type : 파일 타입 검색 -ctime : create 시간으로 검색 -size : size로 검색 -regex : 정규식 패턴 -gegextype : 정규식 타입 find / -name a.txt 루트 디렉토리인 '/'에서부터 하위까지 이름으로 a.txt 파일 검색 find -type d 디렉토리들만 검색 find -regextype posix-extended -regex '.{0,}' 정규식으로 검색 find -ctime +2 만든지 2일 이상 된것 검색 find -size +100M 100메가 이상 파일 검색 find -name *.log -exec du -h {} \; 로그 파일을 찾은 후 du 명령어로 파일 사이즈를 출력한다. grep 찾을 문자값, 파일 값 등을 찾는다. grep "main" text.c text.c 파일에서 main을 찾는다. dmesg | grep "Linux" dmesg에서 Linux에 해당하는 값을 찾는다. awk 특정 값을 잡아서 출력, 필드를 구분하여 출력 ls -al | awk '{print $1}' 첫 번째 필드 부분만 출력한다. ls -al | awk '{print $NF}' 마지막 필드 부분만 출력한다. ls -al | awk '{print $FNR}' 라인에 따라 필드 위치가 1씩 증가하면서 해당 필드 부분만 출력한다. ls -al | awk -F '/' '{print $NF}' -F 옵션에 따라 /값을 구분으로 필드를 분리한다. ls -al | awk '{print $1, $2}' 여러 필드 출력 awk '{print $1} 파일명 파일 내용도 awk를 이용해 출력 할 수 있다.

5. 압축 명령어

tar 파일, 디렉토리를 압축 및 해제 tar cvfz m.tar a.txt a.txt 파일을 압축해서 m.tar이라는 압축파일 생성 tar xvfz m.tar m.tar파일을 압축 해제한다. tar xvfzP m.tar /home/bin/* 절대경로로 할경우 옵션에 대문자 P 추가한다. tar tvf m.tar 압축해제 없이 내부 목록 보기 zip 파일, 폴더를 압축 및 해제 zip m a.txt b.txt // a.txt b.txt를 m.zip으로 압축한다. .zip은 자동으로 생성된다. zip -r m // 디렉토리까지 모두 압축한다. unzip m.zip // 압축을 해제한다. zip -r m * -x /\*/.svn/\* // 압축할 디렉토리에 .svn의 모든 폴더 내용을 제외하고 압축한다. (/\* 기호는 모든 디렉토리에서 .svn안에 있는 /\*모든 파일을 지운다)

© Copyright 2021 - 2025 하우위키. All rights reserved.