OS X, Linux 및 FreeBSD 간의 FHS 차이점

OS X, Linux 및 FreeBSD 간의 FHS 차이점

/usr/localFBSD 포트가 Linux가 아닌 FreeBSD와 Linux 사이에 서로 다른 동작이 있다는 것을 읽었습니다. 누구든지 이에 대해 더 자세히 설명할 수 있습니까? 저는 OSX에서 MacPorts가 어디에 설치되어 있는지 알고 싶고, 이 세 가지 운영 체제에 대한 FHS 간의 가장 중요한 차이점 목록을 알고 싶습니다(주로 제가 찾고 있는 것이 바로 이것이었습니다).

조사를 해봤지만 별로 찾지 못했습니다.

https://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man7/hier.7.html

http://www.freebsd.org/doc/handbook/dirstruct.html

http://www.tldp.org/LDP/Linux-Filesystem-Hierarchy/html/index.html

답변1

FHS(Filesystem Hierarchy Standard) 버전 2.3은 다음 위치에서 찾을 수 있습니다.pathname.com/fhs. 에 관한 섹션이 있습니다.usr계층. FHS는 이를 /usr/local필수 디렉터리로 나열하고 다음과 같이 씁니다.

local 로컬 계층 구조(기본 설치 후 비어 있음)

또한, FHS쓰다:

/usr/local계층 구조는 시스템 관리자가 소프트웨어를 로컬로 설치할 때 사용됩니다. 시스템 소프트웨어가 업데이트되면 덮어쓰지 않도록 해야 합니다. 호스트 그룹 간에 공유할 수 있는 프로그램 및 데이터에 사용할 수 있지만 /usr.

소프트웨어를 교체하거나 업그레이드하기 위해 설치하지 않는 한 로컬로 설치된 소프트웨어를 /usr/local대신 배치해야 합니다 ./usr/usr

다른 Linux 배포판은 일반적으로 그렇지 않습니다 /usr/local. 대신 각 파일은 FHS에 따라 파일 시스템에 배치됩니다.

특정 옵션 없이 소스( )에서 소프트웨어를 설치하는 경우 ./configure && make && make install소프트웨어는 일반적으로 /usr/local.

MacPorts의 기본 디렉토리 /opt/local는 다음과 같습니다.맥포트 가이드내부 구조에 대한 설명이 있습니다.

답변2

FHS는 Linux 표준입니다(모든 배포판이 이를 준수하는 것은 아니며 적어도 GUI 세계에서는 절망적으로 구식입니다). 이는 기본적으로 표준과 마찬가지로 기존 관행을 체계화한 것입니다. 따라서 다른 Unixy 시스템(BSD, Mac OS, 독점 Unices, Minix 3...)도 유사한 규칙을 사용한다는 것을 알 수 있습니다. 계층 /usr/local구조는 매우 오래되었습니다. 원래는 로컬로 개발된 소프트웨어를 보관하는 데 사용되었지만 독점 Unix를 사용하면 사람들은 시스템 업데이트를 방해하지 않고 별도로 유지하기 위해 비공급업체 소프트웨어(Usenet에서 다운로드한 항목 포함)를 설치하는 데 익숙해졌습니다. GNU 프로젝트는 이 사용법을 대중화하고 이를 설치 스크립트에 기본값으로 통합했습니다(GNU는이것90년대 이전의 Unix용 괜찮은 도구의 소스입니다. 특히 짜증나는 것은 종종 만들어지는 벤더 컴파일러 및 개발 도구, 불량/구식 vi 버전 및 어리석은 쉘입니다. 농담은 제쳐두고, 새로운 태양과 관련하여 가장 먼저 해야 할 일은 GNU > /usr/local… ).

<curmudgeon> 
   These kids today don't know the luxury of up to date, working
   tools they have at their fingertips, running on personal machines
   that would have been supercomputers in our day. For free.
</curmudegon>

관련 정보