Linux 디렉터리 구조와 명령어

2026. 6. 13. 20:00리눅스


Ⅰ. Linux 디렉터리 구조 

디렉터리  역할 및 설명

 개념  최상위 경로
모든 파일과 디렉터리의 시작점
/bin
개념 기본 명령어 (binary) 저장소
일반 사용자와 관리자 모두 사용 가능 
예시
ex) ls
ex) cp
ex) mv
/sbin
개념  시스템 관리용 명령어 저장소 
예시 ex) shutdown
ex) reboot
ex) ifconfig
/boot 개념 부팅 관련 파일 (커널 이미지, GRUB 설정 등) 저장
/dev
개념 장치 파일  저장
하드디스크, USB, 키보드 같은 장치를 파일 형태로 관리
/etc
개념 시스템 및 애플리케이션 설정 파일 저장
예시  ex) /etc/passwd
ex) /etc/hosts
/home 개념 일반 사용자 계정의 홈 디렉터리
/root 개념 root (관리자) 계정의 홈 디렉터리 
/lib, /lib64
개념 프로그램 실행에 필요한 기본 라이브러리 저장소
32비트 / 64비트별 구분
/media 개념 USB, CD-ROM과 같은 이동식 미디어 자동 마운트 지점
/mnt 개념 임시로 다른 파일 시스템을 마운트하는 지점
/opt 개념 추가 애플리케이션 소프트웨어 패키지 설치 경로
/proc 개념 실행 중인 프로세스 및 커널 정보를 담은 가상 파일 시스템
/srv 개념  시스템에서 제공하는 서비스 관련 데이터 저장 
예시 ex) 웹서버 /srv/www
/tmp
개념 임시 파일 저장소
재부팅 시 자동 삭제
/usr 개념 사용자 프로그램, 라이브러리, 매뉴얼 저장
/var 개념 로그, 메일, 캐시 등 자주 변경되는 데이터 저장
/run
개념 시스템이 부팅된 후 동작 중인 프로세스의 런타임 데이터 (소켓, PID 파일 등) 저장
/var/run의 대체 경로
/lost + found 개념 파일 시스템 복구 (fsck) 시 손상되거나 잃어버린 파일 조각 보관하는 디렉터리

(파티션별 존재)
/sys 개념 커널의 장치, 모듈, 매개변수 등을 관리하는 가상 파일 시스템
/proc과 유사하지만 구조적
/var/log
개념 시스템 로그 저장

예시

ex) /var/log/messages
ex) /var/log/syslog
ex) /var/log/secure
/var/lib
개념 프로그램 실행 중 변경되는 데이터 저장
예시 ex) 데이터베이스
ex) 패키지 관리 정보
/var/cache
개념 애플리케이션 캐시 데이터 저장

예시
ex) dnf 캐시
ex) yum 캐시
ex) apt 캐시

 


Ⅱ. 리눅스 기본 명령어


Ⅱ-Ⅰ. 파일 및 디렉터리 관련 명령어

 

● ls (list) 

명령어 설명
ls 디렉터리 내용 확인
ls -l  파일 권한, 소유자, 크기 등 상세 정보 표시
ls -a 숨김 파일 포함 출력
ls -i inode 번호 표시
ls -R 하위 디렉터리까지 재귀적으로 표시
ls -F
/ (디렉터리) 표시
* (실행 파일) 표시
@ (링크 파일) 표시
ls -lh 용량을 사람이 읽기 쉬운 단위로 표시
ls -color=auto 파일 타입에 따라 색상 구분

 

● cd (change directory) 

명령어 설명 
cd 홈 디렉터리로 이동
cd 경로 지정한 디렉터리로 이동
cd ..  상위 디렉터리로 이동
cd -  직전 디렉터리로 이동
cd / 최상위 디렉터리인 루트 (/) 디렉터리로 이동

 

● pwd (print working directory) 

명령어  설명
pwd 현재 디렉터리 확인
현재 작업 중인 절대 경로 출력

 

● cp (copy)

명령어 설명
cp 파일 및 디렉터리 복사
cp -r 디렉터리를 재귀적으로 복사
cp -i 덮어쓰기 전 사용자 확인
cp -p 권한, 소유자, 시간 정보 유지
cp -v 복사 과정 상세 표시

 

● mv (move) 

명령어 설명
mv 파일 이동 및 이름 변경
mv -i 덮어쓰기 전 확
mv -v 이동 / 변경 과정을 상세히 표시
mv fileA fileB fileA의 이름을 fileB로 변경
mv file dir file을 dir로 이동
mv dirA dirB dirA의 이름을 dirB로 변경

 

● rm (remove) 

명령어 설명
rm 파일 및 디렉터리 삭제
rm -r 디렉터리와 내부 파일 모두 삭제
rm -f 확인 없이 강제 삭제
rm -i 삭제 시 사용자에게 확인 요청 후 삭제

 

● mkdir (make directory)

명령어 설명
mkdir 디렉터리명 디렉터리 생성
mkdir -p 경로 상위 디렉터리가 없을 경우, 함께 생성
mkdir -v 생성되는 디렉터리 이름 출력

 

● rmdir (remove directory)

명령어 설명
rmdir 디렉터리명 비어있는 디렉터리 삭제
rmdir -p 경로 하위 디렉터리 포함 삭제

 

● touch

명령어  설명
touch  파일명 파일 없는 경우, 비어있는 파일 생성
touch -t 파일의 시간 정보 변경

 

● df  (disk free)

명령어 설명
df 전체 디스크 용량 확인
df -h 읽기 쉬운 단위 (KB, MB, GB)로 표시
df -T 파일시스템 종류 표시

 

● du (disk usage)

명령어 설명
du 디렉터리별 사용 용량 표시
du -h 사람이 읽기 쉬운 단위로 표시
du -s 전체 합계만 표시

 

● ln (link)

명령어 설명
ln 파일이나 디렉터리에 링크 (연결 파일)을 생성
ln 파일명 링크명 하드링크 생성 원본 파일의 데이터 블록 직접 참조
동일 inode 번호 사용
ln -s 대상경로 링크명 심볼릭링크 (소프트링크) 생성 원본 경로 참조
원본 삭제 시 링크 깨짐

 

 


Ⅱ-. 권한 및 소유자 관련 명령어

 

● chmod (change mode)

명령어 설명
chmod 파일 권한 변경
chmod 755 file 숫자로 권한 설정
user = 읽기쓰기실행 = rwx = 421 = 7
group = 읽기-실행 = r-x = 4-1 =5
others = 읽기-실행 = r-x = 4-1 = 5
chmod u + x file 사용자에게 실행 권한 추가
chmod g - w file 그룹에서 쓰기 권한 제거

 

● chown (change owner)

명령어 설명 
chown 파일 소유자 변경
chown user file 소유자를 usre로 변경
chown user:group file 소유자와 그룹 변경

 

● chgrp (change group)

명령어 설명
chgrp 파일과 디렉터리의 소유 그룹 변경

 

● pwconv / pwunconv

명령어 설명
pwconv
/etc/shadow 생성
암호 해시 분리 저장
pwunconv /etc/shadow 제거
해시를 /etc/passwd로 이동

 


Ⅱ- Ⅲ. 프로세스 관련 명령어

 

● ps (process status) 

명령어 실행
ps 현재 실행 중인 프로세스 목록 표시
ps -ef 전체 프로세스 표시
ps -u 사용자 특정 사용자의 프로세스만 표시

 

● top

명령어 설명
top CPU 및 메모리 사용률 실시간 확인
프로세스 상태 실시간 확인

 

● kill 

명령어 설명
kill 프로세스 종료
kill PID 지정한 PID 프로세스 종료
kill -9 PID 강제 종료 (SIGKILL)

 

● jobs / fg / bg 

명령어 설명
jobs 백그라운드 실행 중인 작업 목록 표시
fg %번호 해당 작업을 포그라운드로 전환
bg %번호 해당 작업을 백그라운드로 전환

Ⅱ-Ⅳ. 시스템 관련 명령어

 

● uptime

명령어 설명
uptime 시스템 가동 시간, 부하, 사용자 수 확인
uptime -p 가동 시간만 간단히 표시
uptime -s 시스템 부팅 시간 출력

 

● who / w / whoami 

명령어 설명
who  현재 로그한 사용자 정보 표시
who -q  로그인한 사용자 이름만 출력
who -b  마지막 부팅 시간 표시
w 로그인 사용자 및 실행 중인 작업 표시
whoami 현재 사용자 이름 출력

 

● id /  groups

명령어 설명
id UID, GID 정보 확인
groups  사용자가 속한 그룹 확인

 

● shutdown / reboot

명령어 설명
shutdown -h now 즉시 종료
shutdown -r now 즉시 재부팅
shutdown +10 10분 후 종료 예약
shutdown -c 예약된 종료 취소
reboot  즉시 재부팅
reboot -f 강제 재부팅

 

● fdisk 

명령어 설명
fdisk d 파티션 삭제
fdisk n 새 파티션 생성
fdisk p 파티션 테이블 출력하여 현재 상태 확인
fdisk w 변경 사항을 디스크에 저장하고 종료
fdisk q 변경 사항을 디스크에 저장하지 않고 종료 
fdisk t 파티션의 타입 변경
fdisk L 파티션의 타입 리스트 확인

 


Ⅱ- Ⅴ. 네트워크 관련 명령어

 

● ping 

명령어 설명
ping 주소
네트워크 연결 상태 확인
ICMP 패킷 전송
ping -c N 주소 N회만 테스트 후 종료
ping -i N 주소 N초 간격으로 패킷 전송

 

● curl

명령어 설명
curl URL URL 요청 및 응답 확인
curl -O URL 원본 파일 이름 유지한 채 다운로드
curl -o 파일명 URL 지정 이름으로 다운로드
curl -I URL HTTP 헤더만 확인

 

● wget 

명령어 설명
wget URL 파일 다운로드
wget -O 파일명 URL 저장 파일 이름 지정
wget -c URL 중단된 다운로드 이어받기
wget -r URL 웹사이트 전체 재귀 다운로드

 

● netstat / ss

명령어 설명
netstat -tuln 열러 있는 포트와 연결 상태 확인
ss -tuln 포트 및 소켓 상태 빠르게 확인

 

● ip / ifconfig / nslookup

명령어 설명
ip addr IP 주소 및 네트워크 인터페이스 정보 확인
ifconfig 네트워크 장치 상태 확인 (구버전)
nslookup 도메인 DNS 서버를 통한 IP 주소 조회

 


Ⅱ-  Ⅵ. 검색 / 출력 관련 명령어

 

● cat (concatenate) 

명령어 설명
cat 파일 파일 내용 출력
cat -n 줄 번호 포함 출력
cat 파일1 파일2 > new.txt 두 파일을 합쳐 새 파일 생성

 

● head / tail 

명령어 설명
head 파일 파일 앞부분 10줄 출력
head -n N 파일 앞부분 N줄 출력
tail 파일 파일 끝부분 10줄 출력
tail -f 파일 파일의 끝부분을 실시간으로 모니터링
로그 확인 시 유용

 

● find 

명령어  설명
find /경로 -name "파일명" 이름으로 파일 검색
find /경로 -type d -name "dir" 디렉터리 검색
find /경로 -size + 100M 특정 크기 이상의 파일 검색

 

● grep (global regular expression print)

명령어 설명
grep 문자열 파일 파일에서 문자열 검색
grep -i 문자열 파일 대소문자 구분 없이 검색
grep -v 문자열 파일 특정 문자열 제외 검색
grep -w 단어 파일 단어 단위로 정확히 일치 검색

 

● wc (word count)

명령어 설명
wc 파일 행, 단어, 문자 개수 출력
wc -l 파일 행 (line) 수만 출력
wc -w 파일 단어 수만 출력
wc -c 파일 문자 수만 출력

 

● cmp / diff

명령어 설명
cmp 파일1 파일2 두 파일의 차이점을 간단히 비교
diff 파일1 파일2 파일 내용의 상세 비교
diff -c 파일 이름, 시간, 날짜 함께 출력
diff -i 대소문자 무시하고 비교

 

● sort 

명령어 설명
sort 파일 오름차순 정렬
sort -n 숫자 기준 정렬
sort -r 내림차순 정렬
 sort -k 2 파일 2번째 필드 기준으로 정렬
sort -t ':' 파일 구분자 지정 (기본 공백)

 

● sed / awk /cut /tr /uniq

명령어 설명
sed 텍스트 검색, 치환, 삭제 필터 명령
awk 패턴 기반 텍스트 분석 및 처리 명령
cut -d ':' -f1 파일 특정 필드만 추출
tr a-z A-Z 문자 변환
uniq 중복 행 제거 

 

● file / echo / env / whereis / which

명령어 설명
find 파일 유형 확인
echo 텍스트나 변수 값을 파일에 저장
env PATH 환경 변수에 등록된 디렉터리 안에 있는 실행 파일 검색
whereis $PATH 환경 변수에 등록된 디렉터리와 관계없이 파일 검색
which $PATH 환경 변수에 등록된 디렉터리 내에서만 파일 검색
alias 설정된 명령어인 경우, alias 명령어 정보 같이 출력

 


Ⅱ- Ⅶ. 사용자 계정 및 로그인 관련 명령어

 

● passwd 

명령어 설명
passwd 현재 사용자의 비밀번호 변경
passwd username 특정 사용자의 비밀번호 변경 (root 권한 필요)

 

 

● su 

명령어 설명
su 사용자명
다른 사용자 계정으로 전환
환경 유지
su - 사용자명
로그인 환경까지 전환
환경변수 포함

 

 

● last / lastb 

명령어 설명
last 로그인과 로그아웃 이력 및 현재 로그인 상태 표시
lastb 로그인 실패 이력 표시

 


Ⅱ-  Ⅷ. 명령어 기록 관리

 

● history - 명령어 기록 확인

명령어 설명
history 명령어 실행 기록 확인
history -c 현재 세션의 명령어 기록 삭제
history -d N N번째 명령 기록만 삭제
history -w 현재 세션 기록을 .bash_history에 저장

 


Ⅱ- Ⅸ. 압축 및 아카이브 관련 명령어

 

● gzip  / gunzip

명령어 설명
gzip 파일 .gz 확장자로 압축
gzip -r 디렉터리 하위 폴더 포함 전체 압축
gzip -k 파일 압축 후 원본 파일 유지
gunzip 파일.gz gzip 압축 해제
zcat 파일.gz 압축 해제 없이 내용 확인

 

 

● bzip2 / bunzip2

명령어 설명
bzip2 파일 .bz2 확장자로 압축
bzip2 -k 파일 원본 유지하며 압축
bunzip2  파일.bz2 압축 해제
bzcat 파일.bz2 압축 해제 없이 내용 확인

 

● tar (tape archive)

명령어 설명
tar -C 경로 지정한 경로에 압축 해제
tar -xvf 파일.tar 묶음 해제
tar -cvf 파일.tar 디렉터리 여러 파일 및 폴더 묶음 생성
tar -czvf 파일.tar.gz 디렉터리 gzip으로 묶음 압축
tar -xzvf 파일.tar.gz gzip으로 압축 해제
tar -jcvf 파일.tar.bz2 bzip2로 묶음 압축
tar -jxvf 파일.tar.bz2 bzip2 압축 해제
tar -tvf 파일.tar 묶음 파일 내부 목록 확인

 

 

● zip / unzip

명령어 설명
zip 파일.zip 대상 zip 형식으로 압축
zip -r 파일.zip 디렉터리 하위 포함 압축
zip -9 최대 압축률
zip -1
빠른 압축 
압축률 낮음
unzip 파일.zip 압축 해제

 

 

'리눅스' 카테고리의 다른 글

Linux 파일 시스템 생성 및 마운트  (0) 2026.06.13
Linux 디스크 파티션 작업  (0) 2026.06.13
Linux 프로세스 관리  (0) 2026.06.13
Linux Shell  (0) 2026.06.13
VMware과 MobaXterm 환경 세팅  (0) 2026.06.13