본문 바로가기
프로그래밍/Linux

[Linux] FHS(Filesystem Hierarchy Standard)와 디렉토리 구조

by HI_Ai 2023. 8. 30.
반응형

FHS는 리눅스와 같은 UNIX 기반의 운영체제에서의 파일 시스템 구조를 표준화하기 위한 규약입니다. FHS의 주 목적은 다양한 소프트웨어와 패키지, 그리고 배포판 간의 호환성을 증진하고, 사용자와 개발자 모두에게 일관된 파일 시스템 경로를 제공하는 것입니다. FHS는 BSD 파일 시스템과 비교하여 큰 차이점이 있습니다.

 

기본 디렉터리 구조

FHS : /bin, /sbin, /lib, /usr, /var 등의 디렉터리를 포함하며, 시스템 기본 도구, 라이브러리, 사용자 프로그램, 가변 데이터 등이 저장
BSD : /usr/local, /usr/share, /usr/src 등의 구조를 채택, /usr 아래에 대부분의 시스템 관련 파일들이 저장

 

로컬 설치의 위치

FHS : /opt나 /usr/local에 추가 소프트웨어나 로컬 소프트웨어를 설치
BSD : /usr/local에 대부분의 추가 및 로컬 소프트웨어를 설치

 

시스템 구성 파일

FHS : /etc에서 시스템 설정 파일들을 관리
BSD : /etc에도 구성 파일들이 있지만, 종종 /usr/local/etc에도 로컬 어플리케이션의 구성 파일들이 위치

 


다음으로는 리눅스의 주요 디렉토리와 기능을 확인해 보겠습니다.

/ (root)

모든 디렉토리의 '시작점', 리눅스 전체 파일 시스템은 루트(/)에서 시작

모든 파일과 디렉토리는 루트(/)에서 시작되기 때문에 파일, 디렉토리의 위치를 정확하게 알려면 루트(/) 디렉토리의 구조를 이해해야 함.

 

/bin & /sbin

/bin : 리눅스에서 제공하는 기본적인 시스템 명령어들이 위치 ex) cat, chmod 등

/sbin : 시스템 관리자(root)만 사용하는 명령어들이 위치, 일반 사용자들은 기본적인 실행 권한 없음 ex) reboot, ifconfig.

시스템 제어, 관리 시 필요한 명령어들이 들어있음. 이 명령어들은 리눅스 사용의 기본이 됌.

/boot

리눅스가 컴퓨터를 시작할 때 필요한 파일들이 위치 ex) 부트로더

컴퓨터 안정적으로 시작하기 위해 이곳의 파일들일 잘 작동해야 함.

/dev

컴퓨터의 모든 하드웨어 장치가 파일 형태로 위치

USB 메모리, 외부 하드 드라이브 같은 장치 연결 시에 이곳에서 장치 확인, 관리가 가능

/var

로그, 웹 서버 이미지, 데이터베이스 파일 등 변동성이 큰 파일들이 위치

시스템에서 무슨 일이 발생하였는지 로그를 통해 확인이 가능, 문제 해결에 유용

/tmp

임시로 사용되는 파일들이 저장되는 곳, 컴퓨터 재시작 시에 /tmp 파일들 삭제됨.

일시적인 파일 저장이 필요할 때 활용되지만 중요한 파일은 저장되지 않아야 함.

/home

각 사용자의 개인 파일과 설정이 저장되는 공간, 각 사용자마다 /home/사용자 이름 형식의 디렉토리가 제공

개인 데이터나 설정을 찾을 때 /home을 통해 확인 가능

/opt

추가적인 소프트웨어나 패키지가 설치되는 위치

새로운 프로그램 설치했을 때, 파일 확인 가능

/usr

시스템 전체에서 공유하는 소프트웨어와 관련 파일들이 저장되는 위치

설치된 프로그램 대부분 /usr 디렉토리에 위치, 프로그램 관련 파일 찾을 때 유용함.

 


이렇게 다양한 디렉토리들이 리눅스 시스템 내부 존재하며 각각의 디렉토리는 특정한 목적에 위해 설계되었습니다. 이러한 구조를 이해하게 되면 리눅스 시스템 작동 방식을 더 이해하기 쉬울 수 있습니다.

반응형