sudoを使用してCLIプログラムを実行するには、パスワードを入力する必要はなく、次のように入力するだけでよいことはわかっています。
user ALL = NOPASSWD: /path/to/your/program
/etc/sudoers 内、または /etc/sudoers.d 内のファイル内であればさらに良いでしょう。私はそれを試しましたが、問題なく動作します。
しかし、GUIアプリケーションの場合は違います。例えば、
user ALL = NOPASSWD: /usr/sbin/gparted
同じファイルでは、GParted が起動すると、通常の GUI パスワード プロンプトが引き続き表示されます。
GUI アプリケーションで同じ結果を得る方法はありますか? それが特定のデスクトップ環境に依存するものかどうかはわかりませんが、おそらくそれぞれが異なるツールを使用してプロンプトを表示していることを考えると、依存しているのではないかと思います。
私の具体的なシナリオでは、Kubuntu 18.04 を使用しているため、この質問はすべての KDE ディストリビューションに当てはまると思います。
答え1
同じです。ただし、実行する必要があるプログラムを実行することを忘れないでくださいsudo program
。したがって、ランチャーがプログラムを起動する場合は、次の内容を含む実行可能ラッパーにランチャーを誘導する必要があります。
#!/bin/bash
sudo «program»
答え2
完璧に機能する受け入れられた回答に加えて、私の特定のケース (KDE 上) では、実行可能なスクリプトを作成して、メニュー エントリのフィールド「コマンド」をそのスクリプトに向ける必要さえないことを付け加えたいと思います。
メニューエントリの「コマンド」フィールドに「sudo プログラム」を直接入力できるので、非常に便利です。