리눅스 서버를 처음 만지면 검은 화면에 깜박이는 커서만 보입니다. 하지만 아래 30개 명령어만 익히면 파일 관리, 시스템 모니터링, 네트워크 확인까지 기본적인 서버 운영이 가능합니다. 각 명령어에 실전에서 자주 쓰는 옵션을 함께 정리했습니다.
📁 파일/디렉토리 관리 (가장 많이 사용)
명령어
설명
자주 쓰는 예시
ls
파일 목록 보기
ls -la (숨김파일 + 상세정보 + 권한)
cd
디렉토리 이동
cd /var/log, cd .. (상위), cd ~ (홈)
pwd
현재 위치 확인
pwd → /home/wpadmin
mkdir
디렉토리 생성
mkdir -p project/src/components (중간 경로도 생성)
rm
삭제
rm file.txt, rm -rf folder/ (폴더 강제 삭제, 매우 주의!)
cp
복사
cp -r source/ dest/ (폴더 전체 복사)
mv
이동/이름변경
mv old.txt new.txt, mv file.txt /backup/
touch
빈 파일 생성
touch index.html style.css (여러 파일 동시 생성)
find
파일 검색
find / -name "*.log" -mtime -7 (7일 내 수정된 .log 파일)
ln
심볼릭 링크
ln -s /원본경로 /링크경로 (바로가기 생성)
📄 파일 내용 확인/편집
명령어
설명
자주 쓰는 예시
cat
파일 전체 출력
cat config.txt
head
앞부분 출력
head -20 log.txt (상위 20줄)
tail
뒷부분 출력
tail -f access.log (실시간 로그 모니터링, 가장 많이 사용!)
grep
텍스트 검색
grep -r "error" /var/log/ (하위 폴더 포함 검색)
less
페이지 단위 보기
less largefile.txt (q로 종료, /로 검색)
nano
간단한 편집기
nano config.txt (Ctrl+O 저장, Ctrl+X 종료)
vi/vim
강력한 편집기
vim file.txt (i=입력, Esc=명령, :wq=저장종료)
wc
줄/단어/바이트 수
wc -l file.txt (줄 수 확인)
🔧 시스템 관리
명령어
설명
자주 쓰는 예시
sudo
관리자 권한 실행
sudo systemctl restart nginx
chmod
권한 변경
chmod 755 script.sh (소유자: rwx, 그룹/기타: rx)
chown
소유자 변경
chown -R www-data:www-data /var/www/
ps
프로세스 확인
ps aux | grep nginx (nginx 프로세스 찾기)
top/htop
시스템 모니터링
htop (CPU, 메모리 실시간 확인. 설치: sudo apt install htop)
df
디스크 사용량
df -h (-h: 사람이 읽기 쉬운 단위)
free
메모리 사용량
free -h
kill
프로세스 종료
kill -9 PID (강제 종료)
systemctl
서비스 관리
systemctl status nginx, systemctl restart php8.4-fpm
🌐 네트워크
명령어
설명
자주 쓰는 예시
ping
네트워크 연결 확인
ping -c 4 google.com (4번만 ping)
curl
URL 요청
curl -I https://example.com (헤더만 확인)
wget
파일 다운로드
wget https://example.com/file.zip
ssh
원격 서버 접속
ssh user@192.168.1.100
scp
원격 파일 복사
scp file.txt user@server:/path/
실전 조합 예시 (가장 유용!)
리눅스의 진짜 힘은 명령어를 파이프(|)로 조합하는 것입니다.
# 1. 로그에서 에러만 찾아서 최근 20건 보기
cat /var/log/nginx/error.log | grep "error" | tail -20
# 2. 현재 디렉토리에서 가장 큰 파일 10개 찾기
du -ah . | sort -rh | head -10
# 3. 특정 포트를 사용하는 프로세스 찾기
sudo lsof -i :80 # 80번 포트 사용 프로세스
# 4. 디스크 용량이 큰 디렉토리 찾기
du -h --max-depth=1 / | sort -rh | head -10
# 5. 실행 중인 nginx 프로세스 수 확인
ps aux | grep nginx | wc -l
# 6. 파일에서 특정 텍스트를 다른 텍스트로 바꾸기
sed -i 's/old_text/new_text/g' config.txt
자주 실수하는 것들
실수
결과
예방법
rm -rf /
시스템 전체 삭제 (!)
rm 전에 항상 ls로 확인, 절대 경로에 rm -rf 사용 주의
chmod 777
모든 사용자에게 모든 권한
보안 위험. 웹 파일은 755(디렉토리), 644(파일) 사용
sudo 남용
시스템 파일 변경 사고
꼭 필요한 경우에만 sudo 사용
config 파일 편집 전 백업 안 함
설정 복구 불가
cp config config.bak 후 편집
마무리
이 30개 명령어를 전부 외울 필요는 없습니다. 자주 쓰는 10개(ls, cd, cat, grep, tail -f, chmod, sudo, ps, df, systemctl)만 먼저 익히고, 나머지는 필요할 때 이 글을 참고하세요. 가장 빠른 학습 방법은 직접 서버에서 타이핑해보는 것입니다.