/ usr / local 또는 / opt? 그러나 이후

배포 저장소의 일부가 아닌 패키지의 경우 Linux에서 일반적으로 패키지 설치를 어떻게 진행합니까?

내 편에는 / opt에 설치하는 데 익숙합니다. 그러나 이후 인터넷 에서이 문서를 보았습니다 : http://www.pathname.com/fhs/ . 이제 혼란스러워합니다 : 분명히 / usr / local도 가능합니다.

둘의 차이점은 무엇입니까? 공유 할 모범 사례가 있습니까?

감사

선생님



답변

  • 유닉스 스타일 로 컴파일 및 설치되어야 하고 FHS를 준수하는 모든 것 ->/usr/local
  • 다른 모든 것 (예 : 자체 애플리케이션 서버와 함께 제공되는 Java 웹 애플리케이션 및 zip 아카이브에있는 많은 리소스-> /opt

답변

의 원래 의미 : 그냥 추가 흥미로운 정보와 같은 /usr/local경우이다 /usr입니다 네트워크 설치 (단일 /usr여러 컴퓨터에서 공유), /usr/local컴퓨터 (로컬 디스크에 파티션) 로컬 별도의 파일 시스템이 될 것입니다.

그리고 그 주제에 대해, 다른 주제를 가진 여러 컴퓨터가 있다면 당연히 /usr각 아치마다 하나의 컴퓨터가 있지만 /usr/share아키텍처간에 공유되는 또 다른 별도의 파일 시스템이 될 것입니다 (따라서 ‘공유’) .


답변

내가하는 방법은 접두사가 필요하거나 바이너리 패키지 인 경우 / opt (Solaris 방식과 거의 비슷)입니다. 소스 / usr / local에서 컴파일하는 경우 내가가는 방법입니다.


답변

나는 모든 것을 개인 디렉토리에 넣은 다음 GNU stow 을 사용 합니다.

X.ver 패키지를에 설치하겠습니다 /BASE/stow/X.ver. GNU의 스토우는 다음에 (심볼릭 링크 포함) 모든 패키지를 결합하는 것 /BASE/bin, /BASE/lib

충돌과 패키지 제거는 훨씬 쉽게 처리 할 수 ​​있습니다.


답변

FHS 표준을 해석하는 방법은 다음과 같습니다.

/ usr / local은 패키지화되었거나 운영 체제 인스턴스의 일부가 될지 여부에 관계없이 로컬로 빌드되거나 로컬로 설치된 파일을위한 것입니다.

/ opt는 운영 체제의 일부가 아닌 “외부”패키지를 설치하는 장소입니다.

파일을 빌드하는 단일 시스템에서만 파일을 사용하는 한, / usr / local은 괜찮으므로 대부분의 오픈 소스 소프트웨어의 기본 디렉토리입니다.

패키지를 재배포 할 계획이라면 / opt / myPackage와 같은 사용자 정의 기본 디렉토리를 사용하는 것이 좋습니다.


답변

솔라리스는 / opt를 많이 사용했습니다. 많은 최신 Linux 배포판에서 이제 / usr / local /의 패키지가 필요합니다. 이 시스템은 운영 체제와 달리이 시스템이 수행하는 작업을 수행 할 수 있도록 소프트웨어를 설치하는 곳과 동일합니다. Windows 시스템의 “프로그램 파일”과 대략 유사합니다.

하나를 골라 붙입니다. / opt / usr / local을 심볼릭 링크하는 것은 쉽습니다.


답변

운영 체제 배포에서 제공하는 소프트웨어를 다시 컴파일하는 경우 고유 한 시스템에 특정한 여러 아키텍처 이점을 활용하려면 / usr / local을 사용하십시오.

운영 체제 배포 이외의 다른 소스에서 소프트웨어를 추가하는 경우 / opt에 넣으십시오.