애플리케이션에 루트 권한을 부여하면 메시지가 다시 표시되지 않습니다.

애플리케이션에 루트 권한을 부여하면 메시지가 다시 표시되지 않습니다.

startos(ypkg 패키지 포함)에서 해당 앱 스토어는 루트 또는 사용자 비밀번호를 묻는 메시지 없이 /usr 등의 루트 보호 폴더에 패키지를 다운로드하고 설치할 수 있습니다. 그러나 동일한 패키지 형식을 사용하는 명령줄 프로그램에는 내 비밀번호가 필요합니다(그래도 저는 sudoer입니다).

내 질문: 우분투 소프트웨어 센터에서 이를 수행할 수 있는 방법이 있습니까? 어떻게 작동하나요? (사용자의 비밀번호 없이 프로그램 루트 액세스 허용)

답변1

프로그램에서 SUID(사용자 ID 설정) 비트를 설정합니다.

sudo chmod u+s /usr/bin/software-center

이 프로그램은 시작될 때마다 소유자의 권한을 갖습니다(루트 권한을 얻으려면 소유자가 루트여야 함). 프로그램이 fork()하는 모든 하위 프로세스는 루트 권한을 상속받습니다. 그러나 비밀번호를 묻는 메시지가 프로그램의 유효 사용자 ID에 의존하지 않는 경우에는 작동하지 않습니다(즉, 항상 메시지를 표시하도록 프로그래밍된 경우).

관련 정보