디렉터리(Directory)
디렉터리란 파일을 보관하는 곳을 말한다. 리눅스의 디렉터리는 최상위의 해당하는 루트(/)를 중심으로 하위 디렉터리에 여러 개의 디렉터리가 존재하는 트리 구조 계층을 가진다.
리눅스 디렉터리 종류와 특징
1. / (루트 디렉터리)
- 파일 시스템의 최상위 디렉터리로, 모든 파일과 디렉터리의 시작점.
- 시스템에서 가장 중요한 디렉터리로, 다른 모든 디렉터리가 여기에 포함된다.
2. /bin (Binaries)
- 시스템의 기본 명령어가 저장된 디렉터리.
- 모든 사용자가 접근 가능한 필수 실행 파일(예: ls, cp, mv)이 있다.
일반적으로 bin은 binary의 약자로 실행 파일들이 있으며 흔히 실행 파일이 들어있는 PATH가 설정되어 있다.
대표적으로 cp, mkdir, rmdir, mv, rm, cat 등의 명령어가 있다.
3. /boot (Boot Loader Files)
- 부팅에 필요한 파일들이 저장된 디렉터리.
- 커널 이미지(vmlinuz)와 GRUB 설정 파일 등이 포함된다.
4. /dev (Device Files)
- 시스템의 장치 파일(가상 파일)이 저장되는 디렉터리.
- 하드웨어 디바이스(예: /dev/sda, /dev/tty)를 파일 형태로 관리한다.
하드 디스크, CD-ROM, 터미널과 같이 실제로 존재하는 물리적인 장치를 파일화하여 저장하는 곳이다.
5. /etc (Configuration Files)
- 시스템 및 프로그램의 설정 파일이 저장된 디렉터리.
- 예: /etc/fstab, /etc/passwd.
6. /home (Home Directories)
- 일반 사용자 계정의 개인 디렉터리.
- 사용자별 데이터(예: 문서, 설정 파일 등)가 저장된다. 예: /home/username.
개인 사용자들이 파일 및 디렉터리를 생성할 수 있는 공간으로 예를들어, gildong이라는 계정을 만들면 /home/gildong이라는 디렉터리가 생기게 된다.
7. /lib (Libraries)
- 시스템의 필수 라이브러리가 저장된 디렉터리.
- /bin과 /sbin에서 사용하는 공유 라이브러리가 포함된다.
8. /lib64 (64-bit Libraries)
- 64비트 시스템용 라이브러리가 저장된 디렉터리.
- 64비트 시스템에서 /lib의 역할을 보조한다.
9. /mnt (Temporary Mount Points)
- 외부 장치(예: USB, CD-ROM)를 임시로 마운트하는 데 사용된다.
- 관리자가 수동으로 마운트 시 사용.
10. /opt (Optional Software)
- 추가적인 소프트웨어를 설치하는 데 사용하는 디렉터리.
- 대규모의 독립적인 응용 프로그램이 설치된다.
응용 프로그램들의 설치를 위해 사용되는 디렉터리이다.
11. /proc (Process Information)
- 가상 파일 시스템으로, 커널과 프로세스 정보를 제공.
- 동적으로 생성되며, CPU 정보(/proc/cpuinfo)나 메모리 정보(/proc/meminfo)를 포함.
12. /root (Root Home Directory)
- 루트 사용자의 홈 디렉터리.
- 일반 사용자의 /home과 구분되며, 시스템 관리용으로 사용된다.
13. /sbin (System Binaries)
- 시스템 관리자용 명령어가 저장된 디렉터리.
- 부팅, 복구, 네트워크 설정 명령(예: ifconfig, fsck)이 포함된다.
'System Binary'의 약자로 주로 시스템 관리에 대한 명령어들이 들어있는 디렉터리로 슈퍼유저인 root가 주로 사용한다.
14. /tmp (Temporary Files)
- 임시 파일을 저장하는 디렉터리.
- 시스템 재부팅 시 모든 데이터가 삭제된다.
15. /usr (User System Resources)
- 사용자 애플리케이션과 라이브러리, 문서 등이 저장된 디렉터리.
- /usr/bin, /usr/lib, /usr/share 등의 하위 디렉터리를 포함한다.
시스템 운영에 필요한 명려으 응용 프로그램들이 위치하는 디렉터리로 커널 소스, C 언어 헤더 파일 등 리눅스에서 서버 관리를 위해 사용하는 아파치나 mysql, php 등 모두 /usr 하위 디렉터리에 존재하게 된다.
16. /var (Variable Data)
- 로그 파일, 캐시, 이메일 등과 같이 자주 변경되는 데이터가 저장된 디렉터리.
- 예: /var/log, /var/tmp.
시스템 운영 로그(Log) 파일과 스풀링(Spooling)처럼 가변적인 데이터들이 저장되는 곳인데 필자의 경우 메일 서버를 운영 했던 경우가 있어 도착한 메일이 /var 하위 디렉터리에 존재하게 된다.
17. /media (Removable Media)
- 자동 마운트되는 장치(USB, CD-ROM)용 디렉터리.
- 장치가 연결될 때 시스템이 자동으로 마운트한다.
18. /srv (Service Data)
- 서버에서 제공하는 데이터가 저장되는 디렉터리.
- 예: 웹 서버 파일, FTP 파일.
19. /sys (System Information)
- /proc와 비슷한 가상 파일 시스템.
- 커널과 하드웨어 장치의 정보를 제공한다.
20. /run (Runtime Data)
- 부팅 후 동적으로 생성되는 데이터(예: PID 파일, 소켓 파일 등)가 저장되는 디렉터리.
- 시스템의 런타임 상태를 기록한다.
728x90
'리눅스' 카테고리의 다른 글
#5-1 리눅스 부팅과 셧다운 (1) | 2024.12.15 |
---|---|
#3 리눅스의 구조 (0) | 2024.12.15 |
#2 리눅스 시스템 (1) | 2024.12.13 |
#1 리눅스 (2) | 2024.12.13 |