이러한 문제의 표준은 파일 계층 표준 입니다. 다소 큰 문서입니다. 기본적으로 Linux의 표준 경로는 다음과 같습니다.
/bin
& /sbin
는 OS를위한 필수 프로그램을위한 것이며, 빈은 관리자만을위한 것입니다.
/usr/bin
& /usr/sbin
는 중요한 프로그램이 아니며, 스빈은 관리자 만 사용할 수 있습니다.
/var
프로그램 데이터를위한 것입니다. 캐시 데이터, 스풀 데이터, 임시 데이터 (에있을 때를 제외하고 /tmp
는 재부팅 할 때마다 삭제됨) 등일 수 있습니다.
/usr/local
로컬로 설치된 프로그램을위한 것입니다. 일반적으로이 표준은 표준을 따르지만 OS 용으로 패키지되지는 않지만 ./configure && make && make install
관리자 스크립트뿐만 아니라 관리자 (예 : 사용)가 수동으로 설치하는 프로그램을 호스팅합니다 .
/opt
패키지화되지 않았으며 표준을 따르지 않는 프로그램을위한 것입니다. 모든 라이브러리를 프로그램과 함께 배치하면됩니다. 종종 빠르고 더러운 솔루션이지만 직접 작성하고 특정 경로를 원하는 프로그램에도 사용할 수 있습니다. 그 /opt/yourcompany
안에 자신 만의 경로를 만들 수 있으며 ( 이 경우), 표준 경로의 일부로 등록하는 것이 좋습니다.
/etc
프로그램이 아니라 구성을 포함해야합니다.
프로그램이 서비스에서 제공하는 서비스에만 해당되는 경우 /srv
에도 좋은 위치가 될 수 있습니다. 예를 들어, 디렉토리에 내가 추가 한 데이터 만 포함하고 소프트웨어 패키지에서 제공되는 데이터 만 포함 /srv/www
하지 않고 웹 사이트 에 사용하는 것을 선호 /var/www
합니다.
배포판에는 약간의 차이가 있습니다. 예를 들어, RedHat 시스템은 libexec
Debian / Ubuntu 시스템이 아닌 디렉토리를 사용 합니다.
FHS는 대부분 Linux 배포판에서 사용됩니다 (실제로이를 준수하는 다른 OS는 모릅니다). 다른 유닉스 시스템은 따르지 않습니다. 예를 들어, BSD 시스템은 /usr/local
패키지 된 프로그램 에 사용하는 경향 이 있지만 Linux의 경우에는 그렇지 않습니다. Solaris는 매우 다른 표준 경로를 가지고 있습니다.
이에 대해 더 알고 싶다면 위에 링크 된 FHS 문서를 읽어 보시기 바랍니다.