오늘 이전에는 터미널을 디렉토리로 이동하거나 touch
명령을 사용하여 파일 날짜를 변경하는 데 제한을 두었습니다. Mac에 재미있는 스크립트를 설치하고 나중에 파일을 실행 가능하게하기 위해 파일을 chmod 755
한 후에 터미널의 전체 범위를 알았습니다.
그래도 /usr/local/bin
가 무엇인지 알고 싶습니다. /usr/
는 컴퓨터의 사용자라고 가정합니다. 그래도 왜 /local/
인지 모르겠습니다. 분명히 로컬 컴퓨터를 의미하지만 컴퓨터 (또는 서버)에 있기 때문에 실제로 필요합니까? /usr/bin
가 좋지 않습니까?
그리고 /bin
는 무엇입니까? 이 영역이 일반적으로 터미널에 스크립트를 설치하는 데 사용되는 이유는 무엇입니까?
/usr/local/bin
는 최신 Mac OS (여기서 BSD 기반)의 UNIX 루트를 보여줍니다.
이것은 초기 UNIX 구현부터 Linux 및 BSD로 바뀌었지만 규칙은 그대로 남아 있습니다. 이제 /usr/bin
는 "기본"또는 핵심 프로그램 및 라이브러리입니다. 여기서 /usr/local/bin
는 애드온 및 중요하지 않은 프로그램 및 라이브러리 용입니다.
일반적으로 구조 관련 질문에 대해서는 Wikipedia 를 참조하는 것이 좋습니다. 기본 사항을 다룹니다.
그러나 귀하의 질문에 직접 대답하려면 :
이것이 둘 사이에서 유사한 구조를 찾는 경향이있는 이유입니다./usr/{, local /} {bin, sbin, lib}. 셸을 처음 사용하기 때문에 {}의 비트는 셸 확장입니다. 실행을 시도
ls -ld /usr/{,local/}{bin,sbin,lib}
로컬 쉘에서 작동 방식을 확인하십시오.
/usr/local/bin
는 실행 파일, 특히 오픈 소스 파일에서 가장 널리 사용되는 기본 위치입니다.
그러나 이것은 유닉스 시스템에서 /usr
가 운영 체제에 속하는 파일의 계층 구조를 포함하도록 90 년대 초에 표준화되었으므로 해당 OS를 사용하는 여러 시스템에서 공유 할 수 있기 때문에 잘못된 선택입니다.
이러한 파일은 정적이므로 /usr
파일 시스템을 읽기 전용으로 마운트 할 수 있습니다. /usr/local
는이 표준을 공유하지 않는 로컬 디자인으로 인해이 표준을 무시하고 있으므로 로컬 컴파일을 허용하려면 읽기/쓰기가 필요하며 운영 체제의 일부가 아닙니다. /opt/local
와 같은 너무 나쁜 것이 대신 선택되지 않았습니다 ...
/usr/local
Mathematica와 같은 상용 프로그램의 경우 설치할 수 있습니다. 설정할 때 자체 파티션에 배치하십시오. OS를 업그레이드 할 때이 파티션은 방해받지 않으며 내용을 다시 설치할 필요가 없습니다. 따라서 OS 업그레이드 사이에 유지하려는 항목에 사용하십시오.
별도로 /home
이런 이유로도 자체 파티션.
이 답변도 도움이 될 수 있습니다.
/usr/local
의 기본 아이디어는 /usr
이외의 모든 머신에 별도의 ( 'local') '/ usr'디렉토리를 갖는 것이 었습니다.이 디렉토리는 다른 곳에서 읽기 전용으로 마운트 될 수 있습니다. /usr
의 구조를 복사합니다.
요즘 /usr/local
는 자체 컴파일 또는 타사 프로그램을 유지하기에 좋은 장소로 널리 알려져 있습니다. /usr/local
계층은 소프트웨어를 로컬로 설치할 때 시스템 관리자가 사용합니다. 시스템 소프트웨어가 업데이트 될 때 덮어 쓰지 않도록해야합니다.
호스트 그룹간에 공유되지만 /usr
에는없는 프로그램 및 데이터에 사용될 수 있습니다. 로컬로 설치된 소프트웨어는 /usr/local
에서 소프트웨어를 교체하거나 업그레이드하기 위해 설치되지 않는 한 /usr
대신 /usr
내에 있어야합니다.