Linux 기본 명령어 30개 – 서버 관리의 첫걸음 (실전 예제 포함)

리눅스 서버를 처음 만지면 검은 화면에 깜박이는 커서만 보입니다. 하지만 아래 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)
curlURL 요청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)만 먼저 익히고, 나머지는 필요할 때 이 글을 참고하세요. 가장 빠른 학습 방법은 직접 서버에서 타이핑해보는 것입니다.

Leave a Comment