리눅스 명령어 정리 | 서버관리·개발자 필수 실무 명령어 가이드
리눅스 실무 필수 명령어 총정리 안녕하세요 이번 글에서는 리눅스(Linux) 환경에서 꼭 알아야 할 실무 명령어들을 한눈에 정리해봤습니다.
🐧 리눅스 실무 필수 명령어 총정리
안녕하세요 😊
이번 글에서는 리눅스(Linux) 환경에서 꼭 알아야 할 실무 명령어 들을 한눈에 정리해봤습니다.
시스템 관리, 네트워크 점검, 파일 조작 등 기본적인 작업부터 자주 쓰이는 실전 명령까지 모두 담았습니다.
📑 로그 & 파일 관리
🔍 로그 파일에서 특정 문자열 검색
cat test.log | grep error
👉 로그 파일에서 ‘error’ 문자열이 포함된 줄 만 출력합니다.
시스템 에러나 특정 이벤트를 찾을 때 자주 사용됩니다.
🔐 파일 권한 변경 (읽기/쓰기/실행)
chmod 0644 file.txt
chmod +x script.sh
- 0644 : 읽기/쓰기 권한 설정 (소유자는 읽기·쓰기, 그 외는 읽기만 가능)
- +x : 실행 권한 추가
✏️ 파일 편집 (vi/vim)
vi /etc/nginx/nginx.conf
👉 서버 설정 파일을 수정할 때 자주 사용됩니다.
vi 모드에서는 i로 입력 모드에 진입하고, 수정 후 Esc → :wq로 저장 및 종료합니다.
🌐 네트워크 & 원격 접속
💻 원격 서버 접속 (SSH)
ssh user@hostname
👉 다른 서버에 원격으로 접속할 때 사용합니다.
예: ssh root@192.168.0.10
📤 파일을 원격 서버로 복사 (SCP)
scp file.txt user@host:/path/
scp -r dir/ user@host:/path/
👉 -r 옵션을 사용하면 디렉토리 전체를 복사할 수 있습니다.
로컬 ↔ 원격 간 파일 전송 시 유용합니다.
🌍 네트워크 정보 확인
ip addr
ip route
👉 ip addr : IP 주소 확인
👉 ip route : 라우팅 테이블 확인
⚙️ 시스템 & 서비스 관리
📦 패키지 설치/삭제/업데이트
# Ubuntu/Debian
sudo apt-get install -y nginx
# CentOS/RHEL
sudo yum install -y nginx
# Fedora/RHEL8+
sudo dnf install -y nginx
👉 리눅스 배포판별 패키지 관리 명령어 입니다.
🔁 서비스 제어 (systemd)
systemctl start nginx
systemctl stop nginx
systemctl restart nginx
systemctl enable nginx
systemctl status nginx
👉 서비스 시작/중지/재시작/자동실행 설정/상태 확인 가능.
서버 운영 시 가장 자주 쓰이는 명령어 중 하나입니다.
⏰ 주기적 작업(cron) 등록
crontab -e
# 매일 새벽 3시 실행
0 3 * * * /usr/sbin/logrotate
👉 자동 백업, 로그 정리 등 정기 작업 자동화 에 사용됩니다.
💾 디렉토리 & 스토리지
1. 디렉토리 생성
mkdir /var/www
mkdir -p /var/www/html
👉 -p 옵션은 하위 디렉토리까지 한 번에 생성 합니다.
2. 디스크/디렉토리 용량 확인
df -h
du -sh /var/log/*
👉 df -h : 디스크 전체 용량 확인
👉 du -sh : 디렉토리별 용량 요약 표시
📂 파일 시스템 탐색 명령어
1. 현재 경로 확인
pwd
👉 현재 작업 중인 디렉토리의 절대 경로를 출력합니다.
2. 디렉토리/파일 목록 확인
# 상세 목록
ls -l
# 숨김 파일 포함
ls -a
# inode 번호 + 상세 목록
ls -li
👉 파일 권한, 소유자, 크기, 수정시간 등을 한눈에 확인할 수 있습니다.
3. 디렉토리 이동
# 루트 디렉토리
cd /
# 상위 디렉토리
cd ..
# 홈 디렉토리
cd ~
# 이전 경로로 복귀
cd -
4. 파일/디렉토리 검색
find /etc -type d -name "systemd"
👉 /etc 아래에서 이름이 systemd인 디렉토리를 검색합니다.
5. 실행 파일 위치 확인
which python
👉 실행 파일의 절대 경로 를 출력합니다.
6. 파일 생성
touch new_file.txt
👉 빈 파일을 생성하거나 파일의 수정 시간을 갱신 합니다.
7. 파일 내용 확인
cat file.txt
cat file1.txt file2.txt
👉 파일 내용을 화면에 출력하며, 여러 파일을 이어서 볼 수도 있습니다.
8. 문자열 출력 및 파일에 쓰기
echo "hello world"
# 덮어쓰기
echo "hello world" > new.txt
# 이어쓰기
echo "hi world" >> new.txt
👉 출력한 문자열을 파일에 저장하거나 기존 파일에 추가할 수 있습니다.
9. 파일 복사
cp file.txt dir1/
cp -r dir1 dir2
👉 파일 또는 디렉토리를 복사합니다. -r은 재귀 복사 옵션입니다.
10. 파일 이동 및 이름 변경
mv file1.txt file2.txt
mv file.txt dir1/
👉 파일을 이동하거나 이름을 바꿀 때 사용합니다.
11. 파일/디렉토리 삭제
rm file.txt
rm -r dir2
👉 -r 옵션으로 하위 디렉토리까지 삭제합니다.
⚠️ 복구 불가능하므로 주의!
12. 텍스트 검색 (grep)
grep은 파일 내에서 특정 문자열을 검색 하는 명령어입니다.
grep "world" *.txt
👉 현재 디렉토리의 모든 .txt 파일에서 “world”라는 문자열이 포함된 줄 출력.
grep -n "world" *.txt
👉 결과에 줄 번호(line number) 를 함께 표시.
grep -ni "world" *.txt
👉 대소문자 구분 없이(case-insensitive) “world” 검색.
grep -nir "world" ./
👉 하위 디렉토리까지 재귀적으로(recursive) “world” 검색.
특정 단어를 프로젝트 전체에서 찾을 때 유용합니다.
13. 환경변수 설정
export MY_DIR="dir1"
cd $MY_DIR
unset MY_DIR
👉 환경변수를 설정하고, 이후 $MY_DIR처럼 사용할 수 있습니다.
✅ 한 줄 요약
💡 Tip:
이 명령어들만 익혀도 리눅스 서버 운영의 80%는 해결됩니다.
자주 사용하는 명령은 alias로 등록해두면 훨씬 편리하게 사용할 수 있습니다.
📌 #리눅스 #Linux #리눅스명령어 #서버관리 #시스템운영 #리눅스기초 #개발자팁