
startos (ypkg パッケージを使用) では、アプリ ストアは、ルートまたはユーザー パスワードの入力を求めることなく、/usr などのルートで保護されたフォルダーにパッケージをダウンロードしてインストールできます。ただし、コマンド ライン プログラム (同じパッケージ形式を使用) では、パスワードが必要です (ただし、私は sudo ユーザーです)。
質問: Ubuntu ソフトウェア センターでこれを行う方法はありますか? これはどのように機能しますか? (ユーザーのパスワードなしでプログラムのルート アクセスを許可する)
答え1
プログラムで Set User ID (SUID) ビットをオンにします。
sudo chmod u+s /usr/bin/software-center
このプログラムが起動するたびに、所有者の権限が与えられます (所有者は、root 権限を取得するには root である必要があります)。プログラムが forks() するすべての子プロセスは、root 権限を継承します。ただし、パスワードの入力を求めることがプログラムの有効なユーザー ID に依存しない場合 (つまり、常に入力を求めるようにプログラムされている場合)、これは機能しません。