왜 거의 모든 작업에 sudo를 사용해야 합니까?

왜 거의 모든 작업에 sudo를 사용해야 합니까?

Linux 철학을 올바르게 이해한다면 sudo주의해서 사용해야 하며 대부분의 작업은 낮은 권한의 사용자로 수행되어야 합니다. sudo하지만 패키지를 관리하든, 구성 파일을 편집하든, 소스에서 프로그램을 설치하든, 다른 작업을 하든 항상 입력해야 하기 때문에 이는 말이 되지 않는 것 같습니다. 이는 기술적인 일도 아니고 일반 사용자가 하는 일입니다.

이는 사람들이 UAC를 비활성화하거나 암호를 요구하지 않도록 구성하는 Windows의 UAC를 생각나게 합니다(단 한 번의 클릭으로). 또한 많은 사람들의 Windows 사용자도 관리자 계정입니다.

sudo또한 일부 사람들은 권한이 필요하다고 표시하지만 권한이 없는 경우를 보았습니다 sudo. 해당 시스템이 sudo권한을 요구하지 않도록 구성되어 있습니까?

답변1

이러한 시스템 관리 기능을 언급하셨습니다.

패키지 관리, 구성 파일 편집, 소스에서 프로그램 설치

물건으로

일반 사용자가 하는 모든 일

일반적인 다중 사용자 시스템에서는 이는 일반적인 사용자 작업이 아닙니다. 시스템 관리자는 이에 대해 걱정할 것입니다. 일반 사용자("권한이 있는 사용자"가 아님)는 유지 관리에 대한 걱정 없이 시스템을 사용할 수 있습니다.

예, 홈 시스템에서는 궁극적으로 시스템을 관리하고 사용해야 합니다.

정말 사용법이 그렇게 어렵나요 sudo? 이것이 단지 귀하의 시스템이라면 쉘을 팝업하지 못할 이유가 없다는 점을 기억하십시오 root( sudo -s--see이 게시물루트 셸을 얻는 다양한 방법 개요) 및/또는 sudo비밀번호를 묻는 메시지를 표시하지 않도록 구성합니다.

답변2

Sudo/Root는 시스템 관리자가 일반적으로 허용하지 않는 방식으로 시스템 구성을 손상/변경할 위험이 있으므로 표준 사용자가 수행할 수 없는 작업을 수행할 때마다 사용됩니다.

패키지 관리, 구성 파일 편집, 소스에서 프로그램 설치 등 무엇을 하든 상관없습니다.

이 모든 기능은 기술적으로 관리 기능이므로 잘못 수행할 경우 시스템에 심각한 손상을 줄 수 있습니다. 기업 환경에서는 시스템 관리자로서 명시적인 지식 없이는 사용자가 이러한 작업을 수행하도록 허용하지 않으므로 sudo가 필요합니다.

예를 들어, 상승된 권한 없이 패키지/구성 파일을 수정할 수 있는 경우 외부 소스가 시스템을 손상시키거나 해를 끼칠 수 있는 원격 코드를 실행하는 것은 매우 간단합니다. 이러한 작업에 루트 액세스가 필요하도록 함으로써 사용자는 이러한 작업을 수행할지 여부를 결정해야 합니다.

이는 Windows와 매우 유사하여 UAC실제로 Windows에 영감을 준 것입니다 UAC.

sudo를 처음 사용하기 시작했을 때 받은 다음 인용문은 매우 적절하고 매우 중요합니다.

귀하는 귀하의 로컬 시스템 관리자로부터 일반적인 강의를 들으셨을 것으로 생각됩니다. 일반적으로 다음 세 가지로 귀결됩니다.

#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.

특히 #2를 입력하기 전에 생각해보세요. 이것이 sudo가 존재하는 가장 큰 이유입니다. 명령을 입력하고 "이 작업을 수행하려면 루트여야 합니다"라는 메시지가 표시되면 중지하고 실제로 수행 중인 작업에 대해 생각하게 됩니다.

답변3

sudo또한 일부 사람들은 권한이 필요하다고 표시하지만 권한이 없는 경우를 보았습니다 sudo. 해당 시스템이 sudo권한을 요구하지 않도록 구성되어 있습니까?

이 명령은 수퍼유저로 실행해야 하지만 를 사용할 필요는 없습니다 . 예를 들어, 또는 (OpenBSD 대신 ) sudo을 사용하거나 간단히 루트로 로그인할 수 있습니다.sudoassudo

따라서 여기에 명령을 표시하면 sudo독자가 자신이 선호하는 방법을 사용하여 수퍼유저로서 이러한 명령을 실행할 것이라고 가정합니다.
물론 이는 일반 사용자로서 이러한 명령을 실행할 수 있다는 의미는 아닙니다.

답변4

중요한 점은 역사적으로 시스템이 실제로 로그인하여 작업을 수행한 다음 로그아웃하는 여러 사용자 간에 공유되었다는 것입니다. 따라서 관리자와 일반 사용자의 차이는 다음과 같습니다. 이러한 시스템은 여전히 ​​대학 연구실에 존재하며, 이러한 컴퓨터를 사용해보면 그 차이를 확실히 느낄 수 있습니다. 자신이 유일한 사용자이고 우연히 관리자 역할을 해야 하는 가정용 컴퓨터는 실제로 비교적 늦게 개발되었습니다.

관련 정보