Unix에서 디렉토리가 중요한 이유
UNIX 운영체제에서는 디렉토리가 매우 중요하다.
디렉토리는 파일 시스템의 구조를 형성하며, 파일과 다른 디렉토리를 저장하는 데 사용된다. 디렉토리는 파일 시스템의 계층 구조를 형성하며, 파일의 경로를 나타내는 데 사용한다.
다른 운영체제와 달리 UNI 계열은 파일 시스템에서 모든 것을 파일로 처리한다. 이것은 디렉토리 역시 파일이라는 것을 의미한다. UNIX 파일 시스템은 트리 구조로 구성되어 있으며 루트 디렉토리를 시작으로 하위 디렉토리를 계속 생성할 수 있다. 이러한 디렉토리 구조를 통해서 파일을 구성하고 관리할 수 있다.
또한 각각의 파일 및 디렉토리의 권한을 설정할 수 있으며 이를 통해서 파일 및 디렉토리에 대한 접근 권한을 제어할 수 있다. 이를 통해서 파일 및 디렉토리에 대한 접근을 제어할 수 있을만큼 디렉토리가 중요하다.
/
최상위 디렉토리로 우리는 이 디렉토리를 root라고 한다.
모든 단일 파일 및 디렉토리는 이 디렉토리에서 시작한다.
루트사용자만이 이 디렉토리에 대한 쓰기 권한을 가진다.
/bin
사용자 바이너리 디렉토리이다.
바이너리 실행파일을 포함한다.
단일 사용자모드에서 사용해야하는 일반적인 Linux 명령은 이 디렉토리에 위치한다.
시스템의 모든 사용자들이 사용하는 명령어는 이 디렉토리 안에 존재한다.
/sbin
시스템 바이너리 디렉토리이다.
/bin과 마찬가지로 /sbin 역시 바이너리 실행 파일을 포함한다.
시스템관리 목적을 가진 사용자들이 사용하는 프로그램으로 시스템 관리자가 주로 사용한다. fdisk, ifconfig, iptables 같은 명령어들이 있다.
/etc
구성 파일 디렉토리이다.
모든 프로그램에 필요한 구성 파일을 포함한다. 유닉스 계열에서 동작하는 대부분의 프로그램의 설정은 UI가 있는 것이 아닌 파일을 변경하는 것이다. 프로그램은 그 변경된 파일을 통해서 동작한다.
여기에는 개별 프로그램을 시작/중지하는데 사용되는 시작 및 종료 셸 스크립트를 포함한다.
/dev
장치 파일 디렉토리이다.
장치파일을 포함하며 터미널 장치, USB 또는 시스템에 연결된 모든 장치가 포함된다.
/proc
프로세스 정보 디렉토리이다.
시스템 프로세스에 대한 정보를 포함하며, 실행중인 프로세스에 대한 정보를 포함하는 파일 시스템이다.
/var
가변 파일 ( variable)
var은 변수파일을 나타낸다
내용이 변경하거나 크기가 변경할 것으로 예상되는 파일의 내용은 이 디렉토리에서 찾을 수 있다.
이 디렉토리에는 시스템 로그 파일(/var/log), 패키지 및 데이터베이스파일 (/var/lib), 이메일(/var/mail/) 재부팅 시 필요한 임시 파일(/var/tmp)같이 내가 직접 바꾸지 않더라도 사용하면서 파일의 내용이나 크기가 변경되는 파일들이 모여있다.
/tmp
임시 파일 디렉토리이다.
시스템 및 사용자가 만든 임시 파일이 포함된 디렉토리이다.
이 디렉토리 아래의 파일은 시스템이 재부팅되면 삭제가 된다.
/usr
사용자 프로그램 디렉토리이다.
바이너리, 라이브러리, 문서 및 2단계 프로그램용 소스 코드가 포함되어 있다.
/usr/bin에는 사용자 프로그램용 바이너리 파일이 들어가 있다. 만약 /bin에서 사용자 바이너리를 못찾는다면 /usr/bin에서 찾을 수 있다.
/usr/sbin 역시 시스템 관리자를 위한 바이너리 파일들이 들어가 있다. /sbin에서 시스템 바이너리를 찾을 수 없다면 /usr/sbin에서 찾을 수 있다.
/usr/lib에는 /usr/bin 및 /usr/sbin 라이브러리가 포함되어 있다.
/usr/local은 소스에서 설치하는 사용자 프로그램을 포함한다.
/home
홈 디렉토리 이다.
모든 사용자가 개인 파일을 저장할 수 있는 디렉토리이다.
/boot
부트로더 파일 디렉토리이다.
부트 로더 관련된 파일을 포함한다.
/lib
시스템 라이브러리 디렉토리이다.
/bin 및 /sbin 아래에 있는 바이너리를 지원하는 라이브러리 파일을 포함한다.
/opt
opt는 옵션을 의미한다.
개별공급업체의 애드온 애플리케이션을 포함한다.
/mnt
디렉토리 마운트 이다.
시스템 관리자가 파일 시스템을 마운트할 수 있는 임시 마운트 디렉토리이다.
/media
이동식 미디어 장치
이동식 장치의 임시 마운트 디렉토리이다.
/srv
서비스 데이터
srv는 서비스를 의미한다.
서버 특정 서비스 관련 데이터를 포함한다.
출처:
https://www.thegeekstuff.com/2010/09/linux-file-system-structure/
'[Linux]' 카테고리의 다른 글
TCP 3-way Handshake, 4-way Handshake (5) | 2023.08.10 |
---|---|
[Linux] 시스템 조회 명령어 (0) | 2023.02.23 |
[Linux] Web 서버와 Was 서버의 차이점 (0) | 2023.01.31 |
[linux] 메일서버란 무엇인가? (0) | 2023.01.25 |
[Linux] [따배셸] Bash shell script란 무엇인가? (0) | 2023.01.19 |