GNU/Linux >> Linux の 問題 >  >> Linux

sudo 対 gksudo。違い?

gksudo sudo の GTK ベースのフロントエンドです (ところで、kdesudo は Qt ベースのフロントエンドです) が、(デフォルトで) より多くの環境変数を処理します (HOMEXAUTHORITY など) sudo より したがって、root としてコマンドを実行する方が安全です。

私が見る限り、@Logicsの回答だけが十分に正しいです(@Ignacio Vazquez-Abramsは完全ではありません)。以下は、@Davros @knitti の回答/コメントへの明確化を避けるための説明です (不要な場合は削除/編集してください):

<オール>
  • どちらのコマンドも実際には sudo を表していますが、 2 つのコマンドの違いは、使用される UI だけではありません。
  • gk/kdesudo を使用する必要があるのは、GUI プログラムの実行だけではありません。代わりに、コマンドがホーム ディレクトリにファイルを作成/書き込みするかどうか (HOME 環境変数が sudo を指す 一部のシステムおよび状況ではコマンド)。 すべての GUI アプリがホーム ディレクトリに書き込み、すべての CLI アプリが書き込みを行うわけではありません であるため、コマンドの種類は重要なポイントではありません。
  • あなたはできます sudo を使用 root として GUI アプリを起動するためのコマンド (例としてアプリのコンソール出力を表示するため) ですが、 HOME を処理する必要があります (および XAUTHORITY などのその他 、 DISPLAY 、入力方法関連のものなど) 環境変数を正しく設定して、起動したアプリが失敗したり、機能を失ったり、本当に悪いことをしたりしないようにします。以下は、sudo を使用するための現在の推奨事項です。
    • sudo -H <rest of the command>
      • (sudo から) セクション 8 マニュアル ページ) -H ( HOME ) オプションは、セキュリティ ポリシーが HOME を設定することを要求します 環境変数を、パスワード データベースで指定されたターゲット ユーザー (デフォルトでは root) のホーム ディレクトリに追加します。ポリシーによっては、これがデフォルトの動作になる場合があります。
      • これにより、少なくとも sudo でファイルが作成されるのを防ぐ必要があります 発信者のホーム ディレクトリ
    • sudo -H DISPLAY=<a working X display name, usually :0> <rest of a GUI program command>
      • これにより、 が TTY ターミナルで実行され、デスクトップ環境に表示されます
  • sudo の動作 コマンドは すべてのシステムで同一ではありません visudo で設定できます コマンド、sudoers(5) をチェックしてください 詳細についてはマンページをご覧ください。

  • sudo コマンドラインでパスワードを要求し、gksudo そのためのダイアログ ボックスが表示されます。


    通常の sudo を使用してグラフィカル プログラムを実行すると、まれに一部のファイルのアクセス許可が台無しになります。安全のために、GUI でプログラムを実行するには gksudo (または必要に応じて kdesudo) を使用する必要があります。これは本当にバグだと思いますが、gksudo は X サーバー変数を認識し、sudo は問題を引き起こさないという説明を聞きました。ヒントとして。グラフィカル プログラムをルートとして実行している場合は、実行するプログラムごとに 1 つのターミナルを開く代わりに、ALT-F2 (alt とファンクション キー 2 を同時に) を入力し、ポップアップするダイアログ ボックスに「gksudo」と入力します。 programme" を引用符なしで、プログラムを実行したいアプリケーションに置き換えます。


    Linux
    1. Sudoユーザーとrootユーザーの違いは?

    2. SudoとGksuの違いは、Sudo-iとSudo-sの違いと同じですか?

    3. Update-grubとUpdate-grub2の違いは?

    1. ファイルを別のユーザーのホームディレクトリに移動しますか(Sudoなし)?

    2. sudo crontab -e と crontab -e だけの Linux の違い

    3. Ubuntu に Qt をインストールする

    1. sudo -k と sudo -K の比較

    2. Linux ホーム ディレクトリにある sudo という名前の未知の 1.5 GB ファイルを調査するにはどうすればよいですか?

    3. su - ユーザー対 sudo su - ユーザー