Gddccontrolのデスクトップアイコンを作成しましたが、実行するにはSudoから実行する必要があります。デスクトップアイコンからコマンドを実行する方法はありますか、
Sudo -pPASSWORD gddccontrol
ターミナルでパスワードを聞かれませんか?
クリックして、Sudo権限で実行するだけです。
[Desktop Entry]
Type=Application
Name=GDDCControl
Terminal=false
Comment=gddccontrol ddccontrol
Exec=Sudo -pPASSWORD gddccontrol
Icon=~/Pictures/10429.png
次のExecコマンドを使用して端末からアイコンを実行すると正常に動作しますが、ランチャーでは動作しません:(
Exec=echo mypasswd | Sudo -S gddccontrol
NEVER EVER.desktop
ファイルに保存されているパスワードを使用します。それはひどく安全ではありません。
さらに、.desktop
ファイルで複雑なコマンドを実行することはできませんが、それは別の問題です。
いくつかのオプションがあります:
説明したように、gddccontrol
をsudoers
ファイルに追加します。 ここ 。これは、アプリケーションを使用して悪意のあることを実行できないことが確実な場合に実行できます。
次に使用する
Exec=Sudo gddccontrol
Exec=
-行
別のオプションは、Exec=
行を次のように置き換えることです。
Exec=gksu gddccontrol
この場合、アイコンをクリックすると、GUIを介してパスワードを入力するように求められます。
おそらくgksu
をインストールする必要があります。
Sudo apt-get install gksu
Sudo
を使用すると、定義によりパスワード要求が要求されます。実行する必要があるのは、ユーザーに実行権限を付与することです。そのプログラムがどこにあるのかわかりませんが、この答えのために、それが/usr/bin/
であると仮定しましょう。
ターミナルでこれを実行します:
Sudo chmod o+x /usr/bin/gddccontrol
そのコマンドは、o therユーザー(あなたのような)にe x許可なしでプログラムを実行する権利を付与しています。
次に、.desktopファイルで、次を使用します。
Exec=gddccontrol
私はプレーンテキストファイルのハードコーディングパスワードに反対ですので、2つの可能な解決策を考えることができます:
sudoを使用してユーザーが発行したすべてのコマンドがパスワードを要求せずにスーパーユーザーとして実行されるようにシステム全体を編集します。 this answer でその方法を見つけることができます
Sudo
コマンドを常にパスワードプロンプトで実行したくない場合は、生のパスワードをファイルに書き込むのではなく、グラフィックウィンドウでパスワードを要求するコマンドの前にgksu
を使用することをお勧めします。