으로 우서 언급 , /usr/local
본질적으로의 접두사위한 것입니다, 동안, 시스템 관리자에 의해 설치된 소프트웨어 /usr
배포판의 패키지에서 설치된 소프트웨어를 사용해야합니다.
이 뒤에 아이디어 (예 : 배포 된 소프트웨어와 충돌하지 않도록하는 것입니다 rpm
및 deb
패키지)과 "로컬"접두사를 통해 관리자에게 전체 통치를 제공합니다.
즉, 관리자는 데비안과 같은 배포판을 사용하면서 사용자 정의 컴파일 된 소프트웨어를 설치할 수 있습니다.
/ 또는 / usr에있는 소프트웨어는 시스템 업그레이드로 덮어 쓸 수 있습니다 (분산은 이러한 환경에서 / etc의 데이터를 덮어 쓰지 않는 것이 좋습니다). 이러한 이유로 로컬 소프트웨어를 정당한 이유없이 / usr / local 외부에 두어서는 안됩니다.
사용자 별 소프트웨어를 설치할 때는 쓰기 권한이 있으므로 접두사로 사용 하는 것이 좋습니다$HOME
. 개인적으로, 나는 $HOME/.local
당신이 (정말로) 멋지고 깔끔한 홈 디렉토리를 어지럽히 지 않기 때문에보다 우아한 솔루션으로 사용 하고 있다고 생각 합니다!
$HOME/.local/share
이미 사용된다 freedesktop.org XDG 기본 디렉토리 사양 그것이 추가 구상 많이하지 않도록, $HOME/.local/bin
당신에 $PATH
과가을 $HOME/.local/lib
당신이 그것에있는 동안, 등.
접두사가 실제로 숨겨진 디렉토리가되지 않게하려면 다음과 같이 심볼릭 링크를 쉽게 만들 수 있습니다.
ln -s .local ~/local
사이드 노트
그것은 있음을 주목할 필요가있다 .config
(안 .local/etc
)에 대한 기본 값이 $XDG_CONFIG_HOME
사용자 특정 설정 파일에 사용됩니다. 안타깝게도 소프트웨어의 많은 부분이 XDG를 무시하고 원하는 위치 (일반적으로 루트 $HOME
) 에 구성 파일을 만듭니다 . 또한 $XDG_CONFIG_HOME
기본값 $HOME/.config
을 원하는 경우 설정이 해제 될 수 있습니다 .
이상하게도 배포판의 기본 구성 파일 용으로 예약 된 디렉토리가 없으므로 /etc
배포판 에서 파일을 제공 했는지 또는 시스템 관리자가 파일을 편집 했는지 알 수있는 방법이 없습니다 .