아래는 Ubuntu 사용자라면 반드시 알아야 할 주요 명령어들에 자주 쓰는 옵션들과 예제를 함께 정리한 버전입니다.
❏ 파일 및 디렉토리 조작
명령어 | 설명 및 자주 쓰는 옵션 | 예제 |
---|---|---|
ls | 디렉토리 목록 보기 • -l: 상세 정보 • -a: 숨김 파일 포함 • -h: 사람 친화적 크기 | ls -alh /etc |
cd | 디렉토리 이동 | cd /var/log |
pwd | 현재 디렉토리 경로 표시 | pwd |
cp | 파일/디렉토리 복사 • -r: 재귀 복사 • -u: 최신 파일만 복사 • -v: 진행 표시 | cp -ruv /data/* /backup/ |
mv | 파일/폴더 이동 또는 이름 변경 • -v: 진행 표시 | mv -v old.txt new.txt |
rm | 파일/디렉토리 삭제 • -r: 디렉토리 포함 삭제 • -f: 묻지 않고 강제 삭제 • -v: 진행 표시 | rm -rfv /tmp/test |
mkdir | 디렉토리 생성 • -p: 상위 디렉토리까지 자동 생성 | mkdir -p /data/archive/2025 |
touch | 빈 파일 생성 또는 파일 시간 변경 | touch index.html |
❏ 파일 보기 및 편집
명령어 | 설명 및 자주 쓰는 옵션 | 예제 |
---|---|---|
cat | 파일 전체 출력 | cat /etc/os-release |
less / more | 페이지 단위로 보기 • less: 위/아래 자유 스크롤 • q: 종료 | less /var/log/syslog |
head / tail | 처음/끝 N줄 보기 • -n N: 줄 수 지정 • -f: 실시간 보기 (tail 전용) | tail -n 50 /var/log/auth.logtail -f /var/log/syslog |
nano | 간단한 텍스트 편집기 | sudo nano /etc/fstab |
vim | 고급 텍스트 편집기 | vim ~/.bashrc |
❏ 시스템 정보 및 상태 확인
명령어 | 설명 및 자주 쓰는 옵션 | 예제 |
---|---|---|
uname | 커널 정보 • -a: 모든 정보 표시 | uname -a |
top | 실시간 프로세스 보기 | top |
htop | 컬러 인터페이스 프로세스 보기 (설치 필요) | htop |
df | 디스크 사용량 확인 • -h: 사람 읽기 쉬운 형식 | df -h |
du | 디렉토리/파일 용량 확인 • - sh: 합계, 단위 출력 | du -sh * |
free | 메모리 사용량 확인 • -m: MB 단위 • -h: 자동 단위 | free -h |
uptime | 시스템 가동 시간 및 로드 평균 | uptime |
❏ 사용자 및 권한 관리
명령어 | 설명 및 자주 쓰는 옵션 | 예제 |
---|---|---|
adduser | 사용자 추가 (대화형) | sudo adduser devuser |
passwd | 사용자 비밀번호 설정 | sudo passwd devuser |
chown | 소유권 변경 • -R: 재귀적 변경 | sudo chown -R www-data:www-data /var/www/html |
chmod | 권한 변경 • 755: 실행 가능 • 644: 읽기/쓰기(파일) | chmod 755 script.sh |
id | 사용자 및 그룹 정보 확인 | id |
❏ 패키지 관리 (APT)
명령어 | 설명 및 자주 쓰는 옵션 | 예제 |
---|---|---|
apt update | 패키지 목록 갱신 | sudo apt update |
apt upgrade | 모든 패키지 업그레이드 • - y: 자동 승인 | sudo apt upgrade -y |
apt install | 패키지 설치 | sudo apt install nginx |
apt remove | 패키지 제거 | sudo apt remove nginx |
apt purge | 설정 파일까지 제거 | sudo apt purge nginx |
dpkg -l | 설치된 패키지 목록 보기 | dpkg -l |
apt search | 패키지 검색 | apt search docker |
❏ 서비스 및 프로세스 제어
명령어 | 설명 및 자주 쓰는 옵션 | 예제 |
---|---|---|
systemctl | 서비스 상태 관리 • start, stop, restart, status, enable | sudo systemctl restart ssh sudo systemctl enable nginx |
ps aux | 전체 프로세스 확인 | ps aux |
kill | PID로 프로세스 종료 | kill -9 12345 |
killall | 이름으로 모든 프로세스 종료 | killall firefox |
❏ 네트워크 관련
명령어 | 설명 및 자주 쓰는 옵션 | 예제 |
---|---|---|
ip a | 네트워크 인터페이스 정보 | ip a |
ping | 네트워크 연결 확인 | ping 8.8.8.8 -c 4 |
ss | 포트 상태 확인 • -tuln: TCP/UDP 리스닝 포트 | ss -tuln |
curl | HTTP 요청 | curl -I https://example.com |
dig | DNS 정보 조회 | dig google.com |
❏ 로그 및 시스템 감시
명령어 | 설명 및 자주 쓰는 옵션 | 예제 |
---|---|---|
journalctl | systemd 로그 확인 • - xe: 에러 로그 실시간 표시 | journalctl -xe |
last | 로그인 기록 보기 | last |
who | 현재 로그인된 사용자 보기 | who |
❏ 검색 및 기타 유틸리티
명령어 | 설명 및 자주 쓰는 옵션 | 예제 |
---|---|---|
find | 파일/디렉토리 검색 • - name, - type, - mtime 등 | find /var -name “*.log” |
grep | 문자열 검색 • -i: 대소문자 무시 • - r: 재귀적 검색 | grep -i “fail” /var/log/syslog |
tar | 압축/해제 • - czvf: 압축• - xzvf: 해제 | tar -czvf backup.tar.gz /etc |
alias | 명령어 단축 설정 | alias ll=’ls -alF’ |
crontab -e | 자동 실행 작업 예약 | 0 3 * * * /usr/bin/backup.sh |
※ 재귀적이라는 말은, 어떤 작업을 수행할 때 현재 위치뿐만 아니라 하위 구조(디렉토리 등)까지 반복적으로 동일한 작업을 적용하는 방식.