[...]하지만 패키지를 관리하든 구성 파일을 편집하든 소스에서 프로그램을 설치하든 또는 무엇을하든 항상 sudo를 입력해야하므로 이치에 맞지 않습니다. [...]
이 모든 것과 관련된 암시적인 형용사는 그것들이 시스템 전체 또는
전체적인 변화라는 것입니다. 여러 사용자가 동일한 설치를 원격으로 사용 하는 다중 사용자 시스템 1 로 Unix의 출처를 고려해야합니다 . 한 평신도 사용자가 모든 사용자의 전체 설정을 변경하도록 허용하는 것은 이치에 맞지 않습니다. 그것은 sysadmin, 루트, 특권 및 책임이었습니다.
다중 사용자 설정에서는 사전 설치된 소프트웨어와 시스템 전체 구성이 각각 아래 /usr
에 /etc
있습니다. 이 위치를 터치하면 루트 권한이 필요합니다. 그러나 Unix 소프트웨어는 다중 사용자를 염두에두고 작성되었으므로 $HOME
디렉토리 2 아래에서 소프트웨어를 컴파일 및 설치 하고 홈 아래에 자체 구성 파일을 보유 할 수 있으며, 여기서 수퍼 유저가 아닌 파일을 자유롭게 편집 할 수 있습니다.
가정에 자체 소프트웨어를 설치하는 것 외에도 대부분의 시스템 전체 소프트웨어는에서 구성을 $HOME
처음 읽은 직후 부터 사용자 별 구성을 읽습니다 /etc
. 이를 통해 대부분의 작업을 사용자 정의 할 수 있습니다 root
.
가정용 PC를 사용하면 단일 기본 사용자 설정으로 원하는 것을 사용 sudo
하고 근절 할 수 있습니다 . 그러나 응용 프로그램 구성 을 만지지 /etc
말고 항상 집에서 사용자 별 구성을 제공하는 것이 일반적 입니다. 이렇게하면 패키지 관리자가 업그레이드시 시스템 전체 구성을 재설정 할 수 있습니다. 단일 사용자 설정에서는 시스템 전체에 새로운 소프트웨어를 설치하는 것이 좋습니다. 배포판 패키지는 대안을 가정하지 않으므로 쉽게 벗어날 수 있습니다.
패키지 관리자가 전 세계에 물건을 설치하도록 허용하지만 소스에서 컴파일 한 모든 내용과 직접 만든 물건은 아래에 둡니다 $HOME
. 그리고 나는 그것을 위해 sudo 할 필요가 없습니다.
당신이 당신의 외부 데이터 파일 저장이 있으면 $HOME
, 부담없이 chown
또는
chgrp
당신이하지 않고 파일에 액세스 할 수 있도록 이름으로 디렉토리
sudo
.
[1] (Unix가 Multics 운영 체제의 '단일 사용자'버전이 되었기 때문에 약간 아이러니합니다)
[2] (홈 파티션을 noexec로 마운트하지 않아 시스템에서 허용하는 경우)
sudo
당신은 당신이 그렇게 높은 권한을 필요로하지 않는 다른 사람에 영향을 미치는되지 않은 자신의 파일 / 바탕 화면에서 작동하는 경우, 시스템 변경과 관련된 아무것도 할 수 있습니다. sudo없이 권한있는 명령을 실행하는 경우, 아마도 이미 수퍼 유저 일 것입니다 (예 : root). 이는 시스템 전체의 특정 작업에 sudo를 사용하는 것보다 일반적으로 권장되지 않습니다