내 Fedora 컴퓨터에서 일부 소프트웨어를 컴파일해야 합니다. 패키지된 소프트웨어를 방해하지 않도록 어디에 놓는 것이 가장 좋습니까?
답변1
적어도 데비안 스타일 시스템에서는 경험적으로 보면:
/usr/local
"시스템 전체" 콘텐츠의 경우/usr/local
배포판의 기본 디렉터리에 위치하는 경향이 있으며 등 의$PATH
표준 UNIX 디렉터리 계층 구조를 따릅니다 ./usr/local/bin
/usr/local/lib
/opt
시스템 전체에 적용되는 것을 신뢰하지 않는 콘텐츠의 경우 애플리케이션별 접두사(예: , 등)를 사용/opt/firefox-3.6.8
하세요/opt/mono-2.6.7
. 여기에 있는 항목은 보다 신중한 관리가 필요하지만 시스템이 손상될 가능성이 적고 폴더를 삭제하면 사라지기 때문에 제거하기가 더 쉽습니다.
답변2
정말로 방해하고 싶지 않다면 $PATH
.
원한다면 $PATH
적어도 /usr/local
./usr
사용자 정의 컴파일된 소프트웨어를 설치하는 데 제가 가장 좋아하는 방법은 내 $HOME
디렉토리에 있는 것입니다. 이렇게 하면 아무것도 사용할 필요가 없으며 sudo
시스템의 나머지 부분과 잘 분리됩니다. 예를 들어:
mkdir ~/stage
./configure --prefix=/home/username/stage && make && make install
/home/username/stage/bin
이것을 에 추가할 수 있습니다 $PATH
.
답변3
FHS에서는 /usr/local에 넣으라고 합니다.배포판은 그 자리에 닿아서는 안 됩니다. 소스 및 라이브러리 /usr/local/bin
바이너리용. 보다/usr/local/src
/usr/local/lib
FHS 사양더 많은 정보를 알고 싶다면
답변4
에 넣으십시오 /usr/local/src
.
내가 한 일은 해당 디렉토리에서 소스 코드를 추출한 것뿐입니다. 다음과 같은 경로가 생성됩니다.
/usr/local/src/postgresql-8.3.7
그런 다음 이를 가리키는 심볼릭 링크를 만듭니다.
/usr/local/src # ln -s postgresql-8.3.7 postgresql
모든 건물을 짓습니다 /usr/local/src/postgresql
.
이는 버전 간에 전환하고 사용 중인 버전을 추적해야 할 때 도움이 됩니다.