$ PATH에 $ HOME / .local / bin이있는 배포는 무엇입니까?


42

예 : 우분투에는 항상 .local홈 디렉토리에 디렉토리 .profile가 있으며이 줄을 포함합니다 :

PATH="$HOME/bin:$HOME/.local/bin:$PATH"

$HOME/.local/bin기본적으로 존재하지 않지만 이미 작성된 경우 이미 $PATH있고 내부의 실행 파일을 찾을 수 있습니다.

이것은 XDG 디렉토리 스펙 에서 정확하게 언급되지 않았지만 그로부터 파생 된 것 같습니다.

제가 가장 궁금한 점은 이것이 가장 일반적인 최종 사용자 배포에 존재한다고 가정 할 수있을만큼 충분히 일반적인지입니다. 예를 들어, 모든 데비안 파생물이나 적어도 우분투 파생물에 있습니까? Red Hat / Fedora / CentOS 생태계는 어떻습니까? 그리고 Arch, Suse, 요즘 사람들이 사용하는 것들도 마찬가지입니다.

추가 명확하게하기 위해이만을위한 것입니다 $HOME/.local/bin, 하지 $HOME/bin .

궁금한 점이 있으시면 정보가 있으면 BSD, OS / X 등을 자유롭게 포함하십시오. :)


나는이 질문이 전에 요청 된 것을 보았지만 이것을 수행하는 시스템을 발견하지 못했습니다. 질문 이 아닌 의견을 주제로 만들기 위해 "충분히 공통"에 대한 고려를 제거하고 새로운 사용자 계정을 위해이를 수행하는 시스템의 예와 위치를 간단히 물어보십시오. 예를 들어 "최근"Fedora가이를 수행합니다.
— 토마스 디키

나는 단순히 "어떤 일을"하는지 물어볼 수있다. 내가 쫓아 온 것이 확실한 답이 아니기 때문에 질문을 공식화하는 것은 약간의 어려움이지만, 대부분의 경우 2016 년에 합리적으로 가정 할 수 있는지에 대한 느낌입니다.
— Stoffe

1
나는 내 길에 그것을 가지고 있지 않으며 확실히 거기에 넣지 않을 것입니다. (데비안이지만 xdm / fvwm, 그놈이나 KDE는 데스크탑이 아닙니다).
— dirkt

1
시스템이 있는지 확인했습니다. 내 개발 계정 중 어느 것도 bash를 사용 하지 않으며, 패키지 관리자는 특별한 확인을하지 않으면 알아 차릴만큼 충분히 철저하지 않습니다 ( newpath 참조 ).
— 토마스 디키

1
IIRC Ubuntu /etc/skel/.profile는 사용자의 존재 여부에 대해 최소 14.04 개의 테스트를 포함하며, 존재 $HOME/bin하는 PATH경우 추가 합니다. 대조적으로, 16.04 나타납니다 모두 추가 $HOME/bin하고 $HOME/.local/bin무조건입니다. 나는 이전 우분투 스 $HOME/.local/bin를 전혀 추가하는 것을 기억하지 못하지만 bash패키지 변경 로그 (아마도 소유하고 있음 /etc/skel/.profile) 와 관련된 것을 보지 못합니다 .
— steeldriver

답변:


41

~/.local디렉토리의 일부입니다 systemd 파일 계층 구조의 스펙 과의 확장 XDG 사용자-DIRS 사양

그들이 bash 4.2에 기반을 두었을 때 경로 를 bash잃어버린 데비안 파생 패키지로 혼란 스러울 수 있습니다 ~/.local.

그것은 버그 이며 패치는 데비안 시스템에 약간 앉아 있습니다.

이 버그 는 Ubuntu 16.04의 경로에 ~ / .local이 있고 Ubuntu 17.04가없는 이유입니다.

systemd-path사용자로 실행 하면 사용자가 경로에 있음을 알 수 있습니다.

$ systemd-path user-binaries
/home/foo/.local/bin

이론적으로 쿼리에 대한 답변 은 systemd를 사용하거나 systemd와의 호환성을 유지하려는 모든 배포판입니다.

더 많은 정보가 있습니다 file-hierarchy(7)


1
감사! 순수한 호기심으로 시작 시간에도 마찬가지입니까? 내 기억이 그것이 systemd보다 일찍 있다고 말했기 때문에 묻는 것 뿐이지 만, 나는 그것을 잘못 기억할 것입니다!
— Stoffe

나는 그것이 체계화되기 전에 의심의 여지가 있었고, 영원히 협약은 ~ / bin이었습니다.
— pfalcon

Arrgh,이 버그는 16.04에 백 포트 된 배쉬 4.3에 의해 도착한 것 같습니다
— Adrian

우분투 18.04에서 작동합니다.
— Daniel

1

RPM 기반 배포판에서 상황은 다음과 같습니다.

  • RHEL 7-PATH 끝에 추가하면 로그인 쉘을 사용할 때 https://bugzilla.redhat.com/show_bug.cgi?id=1583227을 참조 하십시오 . 스위치 와 함께 작동 sudo su -l johndoe하지만 -l스위치를 사용하지 않으면 작동하지 않습니다 .
  • CentOS 7-RHEL 참조, 항상 RHEL을 따릅니다.
  • Fedora 28 (아마도 나이가 많음)-RHEL / CentOS와 동일하며 PATH 끝에 추가됨

버그를 분류하여보고 싶다면 문제의 중요성을 강조 할 수 있으므로 투표하거나 의견을 남겨주십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.