삽질 블로그

리눅스 디렉토리 구조 본문

OS/Linux

리눅스 디렉토리 구조

건와닝 2021. 8. 24. 19:29

 

1. 루트

- 루트는 리눅스의 최상위 디렉토리를 의미한다 

- 모든 파일과 디렉토리는 루트 디렉토리에서 시작된다.

- 루트 사용자만이 디렉토리에서 쓰기 권한을 가집니다.

 

2. bin

- 바이너리 실행 파일을 포함한다.

- 시스템의 모든 사용자들이 사용하는 명령들이 위치하고있다. ex) mkdir, chmod, ps, ls

 

3. sbin

- /bin과 마찬가지로 /sbin도 바이너리 실행 파일을 포함한다.

- 이 디렉토리 아래에 있는 Linux 명령은 일반적으로 시스템 관리자가 시스템 유지 관리 목적으로 사용한다.

ex) ipconfig , fdisk

4. etc

- 모든 프로그램에 필요한 구성 파일을 포함한다.

- 여기서 개별 포르그램을 시작/ 중지 하는데 사용하는 시작 및 종료 셸 스크립트도 포함한다.

/etc/sysconfig : 시스템 저어판용 설정파일

/etc/passwd : 사용자 관리 설정 파일

/etc/named.conf : DNS 설정 파일
/etc/mai : sendmail.cf 나 access 파일등의 sendmail 의 설정파일들이 존재하는 디렉토리.

/etc/ssh : SSH 서비스, 즉 sshd 데몬에서 사용하는 각종 설정파일들이 존재하는 디렉토리.

/etc/squid : squid 프락시서버의 설정파일들이 저장된 디렉토리.

/etc/samba : 삼바관련 설정파일들이 저장된 디렉토리

/etc/skel : 계정사용자 생성시의 초기화파일들이 저장된 디렉토리(useradd 에서 사용함)

/etc/rc.d : 부팅레벨별 부팅스크립트파일들이 존재하는 디렉토리.

/etc/rc.d/init.d : 시스템 초기화 파일들의 실제파일들이 존재함.

/etc/pam.d : PAM 설정 정보파일들이 저장된 디렉토리.

/etc/httpd : RPM 으로 설치된 아파치 설정파일(httpd.conf 등)들이 저장된 디렉토리.

/etc/cron.d/, /etc/cron.daily/, /etc/cron.hourly/, /etc/cron.monthly/, /etc/cron.weekly/

: 모두 크론설정파일이 존재하는 디렉토리임.

/etc/xinetd.d/ : xinetd 수퍼데몬에 의해 서비스되는 서비스설정파일이 존재함.

 

5. dev

- 시스템 디바이스 파일을 구성하는 디렉토리

- 개별 프로그램을 시작/중지하는데 사용되는 시작 및 종료 셸 스크립트도 포함된다.

ex) /etc/resolv.conf , /etc/logrotate.conf

 

6. proc

- 시스템 프로세스에 대한 정보를 가지고있는 디렉토리

- 실행중인 프로세스에 대한 정보를 가지고 있는 파일 시스템으로 

ex) /proc/{pid} 디렉토리에는 특정 pid가 있는 프로세스에 대한 정보가 들어가 있다.

- 가상 파일 시스템이라고 하며 현재 메모리에 존재하는 모든 작업들이 파일형태로 존재한다.

실제 운영상태를 정확하게 파악할수 있는 정보를 제공하며 여기에 존재하는 파일들 가운데 현재 실행중인 커널(Kernal)의 옵션 값을 즉시 변경할 수 있는 파라미터 파일들이 들어있다.

 

7. var

- 증가할 것으로 예상되는 파일의 내용은 이 디렉토리에서 찾을 수 있다.

ex) 시스템 로그 파일(/var/log) ,  패키지 및 데이터베이스 파일(/var/lib) , 이메일(/var/main) , 인쇄 대기열 (/var/spool) 

파일 잠금(/var/lock) , 재부팅 시 임시 파일 (/var/tmp) 

 

8. home

- 모든 사용자가 개인 파일을 저장할 수 있는 홈디렉토리

ex) /home/geonwan , /home/ubuntu

cd ~ 을 통해 현재 사용자에 홈 디렉토리를 갈수 있다.

 

9. boot

- 부트 로더 관련 파일이 있는 디렉토리

 

10. lib

- /bin 과 /sbin 에 있는 바이너리를 지원하는 라이브러리 파일을 포함한다

 

11. opt

- 어떤 소프트웨어를 설치하는데 특정 디렉토리를 지정할때 opt 밑에 설정하도록 할수 있다.

 

12. mnt

- 시스템 관리자가 파일 시스템을 마운트 할 수 있는 임시 마운트 디렉토리이다. 

 

13. media

- 이동식 장치의 임시 마운트 디렉토리이다.

ex) CD-ROM 경우 -> /media/cdrow 플로피 디스크용

 

14. srv

- srv 는 서비스를 의미한다.

- 서버별 서비스 관련 데이터를 포함한다.

 

15. usr

- 시스템이 아닌 일반 사용자들이 사용하는 디렉토리

/usr/bin : 사용자 프로그램에 대한 바이너리 파일을 포함한다.

ex) at, awk, cc, less

/usr/sbin : 시스템 관리 시스템관리자를 위한 바이널 파일이있다. 

ex) useradd, userdel

/usr/local : 소스에서 설치한 사용자 프로그램이 포함되어 있다.

ex) 아파치를 설치하면 /usr/local 밑에 설치된다.

 

/usr/src : 커널 소스가 저장되는 디렉토리

 

요즘은 usr 보단 home 디렉토리 주로 사용한다.

참조

https://www.thegeekstuff.com/2010/09/linux-file-system-structure/

https://webdir.tistory.com/101 [WEBDIR]

인프런 생활코딩

'OS > Linux' 카테고리의 다른 글

[Redhat] gitLab 설치하기  (0) 2022.01.06
[Redhat] Jenkins 설치하기  (0) 2022.01.06
[Centos] Centos jdk 설치 및 환경변수 설정  (0) 2021.05.31
[Centos] Svn 설치하기  (0) 2021.04.29
[Centos] gitLab 삭제하기  (0) 2021.03.08