파일 시스템 구조
파일 시스템과 디렉토리의 차이를 이해하고 있어야 합니다. 파일 시스템은 파일을 포함하도록 할당된 하드 디스크의 한 구역입니다. 디렉토리에 파일 시스템을 마운트하여 이 구역에 액세스합니다. 파일 시스템이 마운트된 후에는 이 구역이 일반 디렉토리와 똑같습니다.
하지만 파일 시스템과 디렉토리는 그 구조가 다르므로 각각에 포함된 데이터를 별도로 관리할 수 있습니다.
다음 그림에서 볼 수 있듯이 파일 시스템과 디렉토리는 운영 체제이 처음 설치될 때 디렉토리 구조에 로드됩니다.
오른쪽 디렉토리(/usr, /tmp, /var 및 /home)는 모두 파일 시스템이므로 자신이 사용할 수 있는 별도의 하드 디스크 구역이 할당되어 있습니다. 이러한 파일 시스템은 시스템이 시작될 때 자동으로 마운트되므로, 일반 사용자는 이 파일 시스템과 왼쪽에 있는 디렉토리(/bin, /dev, /etc 및 /lib)가 다르다는 것을 알 수 없습니다.
독립형 머신에서 다음 파일 시스템은 기본적으로 연관된 장치에 상주합니다.
/장치 | /파일 시스템 |
---|---|
/dev/hd1 | /home |
/dev/hd2 | /usr |
/dev/hd3 | /tmp |
/dev/hd4 | /(root) |
/dev/hd9var | /var |
/proc | /proc |
/dev/hd10opt | /opt |
파일 트리의 특성은 다음과 같습니다.
- 동일한 하드웨어 구조의 시스템에서 공유할 수 있는 파일은 /usr 파일 시스템에 있습니다.
- 스풀 및 메일 파일과 같이 클라이언트 전용 변수 파일은 /var 파일 시스템에 있습니다.
- /(root) 파일 시스템에는 시스템 운영에
중요한 파일과 디렉토리가 있습니다.
예를 들어, 다음이 들어 있습니다.
- 장치 디렉토리(/dev)
- /mnt와 같이, 파일 시스템을 루트 파일 시스템에 마운트할 수 있는 마운트 위치
- /home 파일 시스템은 사용자의 홈 디렉토리를 위한 마운트 위치입니다.
- 서버의 경우, /export 디렉토리에는 페이징 공간 파일, 클라이언트 전용(공유되지 않는) 루트 파일 시스템, 덤프, 홈 및 디스크 없는 클라이언트용 /usr/share 디렉토리뿐만 아니라 반출된 /usr 디렉토리도 있습니다.
- /proc 파일 시스템은 시스템의 프로세스 및 스레드의 상태에 관한 정보를 포함합니다.
- /opt 파일 시스템은 애플리케이션과 같은 선택적 소프트웨어를 포함합니다.
다음 리스트에서는 /(root) 파일 시스템의 서브디렉토리의 일부 내용에 대한 정보를 제공합니다.
항목 | 설명 |
---|---|
/bin | /usr/bin 디렉토리에 대한 기호 링크 |
/dev | 로컬 장치를 위한 특수 파일용 장치 노드를 포함합니다. /dev 디렉토리는 테이프 장치, 프린터, 디스크 파티션 및 터미널에 대한 특수 파일을 포함합니다. |
/etc | 각 장치에 대한 다양한 구성 파일을 포함합니다.
예를 들면, 다음과 같습니다.
|
/export | 원격 클라이언트에 대한 서버의 디렉토리 및 파일을 포함합니다. |
/home | 사용자 홈 디렉토리를 포함하는 파일 시스템에 대한 마운트 위치 역할을 합니다.
/home 파일 시스템은 각각의 사용자의 파일 및 디렉토리를 포함합니다. 독립형 시스템에서 별도의 로컬 파일 시스템은 /home 디렉토리 위에 마운트됩니다. 네트워크에서, 서버는 몇 개의 시스템에서 액세스되어야 하는 사용자 파일을 포함할 수도 있습니다. 이런 경우, 서버의 /home 디렉토리 사본은 /home 파일 시스템에 원격적으로 마운트됩니다. |
/lib | 이름의 형식이 lib*.a인 구조 독립형 라이브러리가 있는 /usr/lib 디렉토리에 대한 기호 링크. |
/sbin | 시스템을 부트하고 /usr 파일 시스템을 마운트할 때 필요한 파일이 있습니다. 부팅 중에 사용되는 대부분의 명령은 부트 이미지 RAM 디스크 파일 시스템이기 때문에 /sbin 디렉토리에 상주하는 명령은 극소수입니다. |
/tmp | 시스템 작성 임시 파일을 포함하는 파일 시스템에 대한 마운트 위치 역할을 합니다. |
/u | /home 디렉토리에 대한 기호 링크. |
/usr | 변경되지 않고 시스템에서 공유될 수 있는 파일(실행 가능한 프로그램 및 ASCII 문서)을
포함하는 파일 시스템을 위한 마운트 위치의 역할을 실행합니다. 독립형 시스템은 별도의 로컬 파일 시스템을 /usr 디렉토리 위에 마운트시킵니다. 디스크가 없거나 디스크가 적은 시스템은 원격 서버의 디렉토리를 /usr 파일 시스템 위에 마운트합니다. |
/var | 각각의 기계를 연결 변환하는 다양한 파일에 대한 마운트 위치 역할을 합니다. 이 파일은 포함하고 있는 파일이 커지기 쉬운 파일이므로, /var 파일 시스템은 하나의 파일 시스템으로 구성됩니다. 예를 들어, 임시 작업 파일을 포함하는 /usr/tmp 디렉토리에 대한 기호 링크입니다. |