728x90
반응형
리눅스 시스템을 처음 접하는 분들이나 심화 학습을 하고 싶은 분들을 위해 리눅스의 파일 시스템 구조를 아주 자세히 설명하는 포스팅을 준비했습니다. 리눅스 파일 시스템은 사용자 파일, 설정 파일, 시스템 파일 등을 효과적으로 관리하기 위해 계층적으로 구성된 디렉터리 구조를 가지고 있습니다. 각 디렉터리는 고유한 역할을 수행하며 시스템의 기능과 밀접하게 연관되어 있습니다.
🔍 리눅스 파일 시스템 구조란?
리눅스 파일 시스템 구조는 트리 구조(Tree Structure) 로 구성되어 있습니다. 최상위 디렉터리는 / (루트 디렉터리)이며, 모든 디렉터리와 파일은 이 아래에 존재합니다.
📌 기본 디렉터리 구조
📂 주요 디렉터리 설명
1. /bin (Binary)
- 역할: 일반 사용자와 관리자 모두 사용할 수 있는 기본 명령어 프로그램이 저장됨.
- 예: ls, cp, mv, rm, cat, bash 등.
- 특징: 부팅 과정에서도 사용되며, 시스템이 작동하기 위해 필수적인 명령어들이 포함되어 있음.
2. /boot (Boot)
- 역할: 시스템 부팅에 필요한 파일이 저장됨.
- 예: vmlinuz (커널 이미지 파일), initrd.img (초기 램 디스크 이미지).
- 특징: 부팅 로더(예: GRUB)의 설정 파일도 포함됨.
3. /dev (Devices)
- 역할: 모든 하드웨어 장치 및 가상 장치 파일이 포함됨.
- 예: sda1 (디스크 파티션), tty0 (터미널 장치).
- 특징: 장치는 파일처럼 다뤄지며, 입출력 작업이 가능함.
4. /etc (Etcetera)
- 역할: 시스템 설정 파일들이 저장됨.
- 예: passwd, hosts, fstab, ssh/sshd_config 등.
- 특징: 대부분 텍스트 파일로 구성되며, 시스템 및 프로그램의 설정을 관리함.
5. /home (Home)
- 역할: 사용자별 개인 디렉터리가 저장됨.
- 예: /home/user1, /home/user2 등.
- 특징: 사용자가 생성한 파일과 설정 파일들이 저장되는 장소로, 일반 사용자는 자신의 홈 디렉터리만 수정 가능함.
6. /lib (Library)
- 역할: 시스템 및 프로그램이 사용하는 공유 라이브러리 파일이 저장됨.
- 예: libc.so.6, ld-linux.so.2 등.
- 특징: /bin이나 /sbin 디렉터리에 있는 프로그램들이 의존하는 라이브러리들이 포함됨.
7. /media & /mnt (Media & Mount)
- 역할: 이동식 저장 장치가 마운트되는 디렉터리.
- 예: /media/cdrom, /mnt/usb 등.
- 특징: /media는 자동 마운트된 장치를 주로 사용하고, /mnt는 임시로 사용자가 수동으로 마운트하는 장치에 사용됨.
8. /opt (Optional)
- 역할: 추가로 설치한 응용 프로그램들이 저장되는 디렉터리.
- 예: /opt/lampp (XAMPP 설치 경로) 등.
- 특징: 상용 또는 써드파티 소프트웨어를 설치할 때 주로 사용됨.
9. /proc (Process)
- 역할: 시스템과 프로세스 관련 정보가 저장됨.
- 예: /proc/cpuinfo, /proc/meminfo, /proc/1234 (PID 디렉터리).
- 특징: 가상 파일 시스템으로, 시스템 정보와 커널 매개변수를 확인하고 수정할 수 있음.
10. /root (Root Home)
- 역할: 시스템 관리자(root 사용자)의 홈 디렉터리.
- 특징: 보안을 위해 일반 사용자 디렉터리(/home)와 분리되어 있음.
11. /run (Runtime Data)
- 역할: 시스템 부팅 후에 생성되는 임시 데이터가 저장됨.
- 예: PID 파일, 소켓 파일 등.
- 특징: 시스템 재부팅 시 데이터가 초기화됨.
12. /sbin (System Binary)
- 역할: 시스템 관리자가 사용하는 관리 명령어 파일이 저장됨.
- 예: ifconfig, fdisk, reboot 등.
- 특징: 일반 사용자에게는 실행 권한이 없는 경우가 많음.
13. /srv (Service)
- 역할: 서버 관련 데이터가 저장되는 디렉터리.
- 예: 웹 서버 데이터 (/srv/www), FTP 서버 데이터 (/srv/ftp) 등.
- 특징: 시스템에서 제공하는 서비스의 데이터가 저장됨.
14. /sys (System Information)
- 역할: 시스템 및 하드웨어 정보가 저장되는 가상 파일 시스템.
- 특징: 커널이 하드웨어 정보를 관리하고 접근하는 인터페이스를 제공함.
15. /tmp (Temporary)
- 역할: 임시 파일을 저장하는 디렉터리.
- 특징: 시스템 재부팅 시 모든 내용이 삭제됨.
16. /usr (User Programs)
- 역할: 사용자 애플리케이션과 관련 파일이 저장됨.
- 예: /usr/bin, /usr/lib, /usr/share 등.
- 특징: 시스템 프로그램과 구분되는 사용자 프로그램들이 포함됨.
17. /var (Variable)
- 역할: 로그 파일, 캐시, 이메일 데이터 등 자주 변경되는 파일들이 저장됨.
- 예: /var/log, /var/spool, /var/tmp 등.
- 특징: 주기적으로 업데이트되거나 수정되는 데이터가 포함됨.
✍️ 정리
리눅스의 파일 시스템 구조는 모든 파일과 디렉터리가 하나의 트리 구조 아래에 존재하며, 각 디렉터리는 고유한 역할을 담당합니다. 이를 잘 이해하면 시스템 설정, 디버깅, 유지보수 등의 작업을 보다 효율적으로 수행할 수 있습니다.
다음 포스팅에서는 리눅스 파일 시스템의 권한 관리와 관련된 내용을 다루겠습니다!
728x90
반응형
'운영체제 > 리눅스(CentOS)' 카테고리의 다른 글
파일 권한과 소유권 설정 (chmod, chown, chgrp 사용법) (0) | 2025.03.24 |
---|---|
Linux 기본 파일 관리 명령어 배우기 (ls, cd, cp, mv, rm 등) (0) | 2025.03.23 |
리눅스 설치하기 (우분투, CentOS 등) (0) | 2025.03.19 |
리눅스란 무엇인가? (1) | 2025.03.16 |
리눅스 시스템별 버전 확인 방법 (0) | 2024.06.20 |