linux/CentOS

Linux 폴더구조 및 용도

IT공부 2019. 12. 16. 16:20
반응형

1. home 

 - 리눅스 사용자들의 개인 공간 

 - /root는 root의 홈 디렉터리 

 - 일반 사용자는 home 밑에 자신의 아이디로 된 디렉터리가 생성되어 있음(로그인할 경우)

 

2. bin & bash

 - sbin은 시스템 관리를 위한 명령(root에게만 허용됨)

 

3. lib 

 - 리눅스 상에서 자주 사용되는 라이브러리 집합

 - 윈도 우상에서 Dynamic Linked Library(DLL)을 모아놓은 폴더라고 생각할 수 있음

 

4. etc

 - 시스템 부팅, 셧다운 시에 필요한 파일들과 시스템의 전반의 걸친 설정 파일들 및 초기 스크립트 파일들이 있다. 

 - 주요 설정 파일들이 위치한다 

 - 주요 리스트

  * motd : 로그인 성공 시 처음의 띄어주는 문구 

  * password : 사용자에 대한 정보를 포함하고 있는 문서 파일

  * getty : 이 프로그램은 터미널로 누군가가 login 하기를 기다린다. 명령어 init에 의해 자동적으로 실행됨

  * init : 이 프로그램은 부팅 시에 커널에 의해 첫 번째 프로세스로 실행된다. init가 실행된 후에 커널이 부팅이 완료된다

  * sudoers : sudo 권한을 가진 사용자와 권한에 대한 정보 

  * hosts : 도메인 네임 

  * issue : 리눅스 배포판 및 버전 

  * skel/ : 새로운 사용자가 추가될 때 홈 디렉터리에 기본적으로 복사해줄 파일들을 포함한 디렉터리 

  * init.d/ : 컴퓨터가 부팅될 때 실행될 파일들을 넣어둔 디렉터리 

 

5. proc

 - RAM위에 존재하며 커널에 의해 제어됨

 - 현재 실행되는 프로세스와 실제로 사용되는 장치, 커널이 수집한 하드웨어 정보가 저장됨

 - 사용자가 /proc이나 하위 파일에 접근할 때마다 커널에서 파일내용을 동적으로 만들어냄 

 - 각 프로세스는 고유의 ID를 가지고 있으며(숫자) 이 아이디를 가진 디렉토리 밑에 각종 정보를 저장함

  * cmdline : 프로세스를 시작한 명령행 내용

  * status : 프로세스의 내부 상태 정보 

  * cwd : 프로세스의 현재 작업 디렉토리

 

- /proc/meminfo : 총 메모리 사용 현황 

- /proc/stat : 시스템의 상태에 관한 정보 

- /proc/uptime : 시스템이 부팅된 후 흐른 시간 

- /proc/version : 현재 실행되는 커널 버전 

 

 

6.dev 

 - 실제로 하드디스크에 존재하지는 않는 정보를 저장함

 - 모든 하드웨어(hdd, cdrom, mouse , 가상 장치, etc...)를 파일로 인식하며 이를 장치 파일이라 함

 - tty : teletypewritter : 사용자와 시스템 사이를 중계하는 역할

 - 사용자와 시스템 사이의 입출력은 모두 여기를 통해 이루어짐 

 

 

 

7.mnt & media

 - 마운트 : 한 파일 시스템의 루트 디렉터리를 다른 디렉터리에 붙임으로써 디렉터리를 사용할 수 있게 만들어주며, 모든 파일 시스템들을 마치 그들이 속해있는 파일 시스템의 서브 디렉터리인 것처럼 사용 가능하게 만드는 것

 

8.tmp 

 - 실행 중인 프로세스들의 임시 파일들을 저장

 - 종료 시 이 위치에 있는 파일들은 모두 삭제됨 

 

9.boot 

 - 부팅 시에 필요한 필수 파일들이 저장됨 

 - lilo, grub 등의 부트 로더와 커널이 위치함

 - 부트로더 : 컴퓨터를 켜었을 때 가장 먼저 실행되는 프로그램

 

10. var

 - 리눅스 상에서 자주 변경되는 데이터들만을 모아 놓음 

 - /var/lib :  일반적인 시스템 운용 시 계속 갱신되는 파일들을 위한 공간

 - /var/local :  /usr/local 아래에 설치된 프로그램들의 다양한 데이터가 보간

 - /var/lock : 잠금 파일(lock file)이 있는 곳 

 - /var/log : 다양한 프로그램들의 로그 파일

 - /var/log/wtmp : 시스템의 모든 로그인, 로그아웃 정보를 기록

 - /var/log/message : 커널과 시스템 프로그램들의 모든 메시지

 - /var/run : 시스템의 현재 정보, 부팅 시 리셋 

 - /var/run/utmp : 현재 로그인한 사용자들에 대한 정보 

 - /var/spool : 대기 상태에 있는 작업들을 위한 디렉터리 

 - /var/tmp : /tmp에 있는 임시 파일들보다는 좀 더 오래 유지될 필요가 있는 임시 파일들, 부팅 시 지워지지 않는다.

 

 

11. usr

 - 리눅스 상에서 가장 큰 공간을 사용하는 디렉터리 

 - 애플리케이션 수준의 프로그램들이 여기에 있음 

 - usr 밑의 bin, lib... 등은 사용자가 자유롭게 다룰 수 있다. 

 

-usr/bin : 실행 가능한 명령어, 주로 콘솔이나  X에서 사용되는 명령어들 

-usr/sbin : 시스템 관리를 위한 명령어, 주로 서버 관리용

-usr/lib : 프로그램과 하위 시스템을 위한 라이브러리 

-usr/include : C를 위한 헤더 파일

-usr/local  : 리눅스에서 필수적인 파일이나 배포판에서 확장되는 파일들을 제외한 응용 프로그램 파일들을 저장

-usr/share : 읽기 전용 자료, 주로 매뉴얼이나 문서 자료 

-/bin      :  문서에 명시되어 있는 명령어 및 필수적인 명령어 

-/usr/bin :  주로 콘솔과 X에서 사용되는 명령어 

-/usr/local/bin  : 그 외 애플리케이션에 의해 추가되는 명령어