LinuxでのSudoとは何ですか?その使用方法


優れたXKCDウェブコミックからの上記のコミックを検討してください。椅子に座っている怠惰な仲間は、友達にサンドイッチを作ってもらいたいと思っていますが、それをさせる権限がありません。つまり、彼が強力なsudoコマンドを呼び出すまでです。その後、サンドイッチは何らかの方法で作られます。

実生活でsudoを試すことはおそらくそれほど効果的ではありませんが、Linuxの世界のあらゆる障害を乗り越える魔法のコマンドです。 sudoとは何ですか?なぜそれが存在するのですか?答えは、Linuxがパーミッションを処理する方法にあります。

Linuxユーザーパーミッションを理解する

Linuxは、パーミッションを処理する方法から、安全なオペレーティングシステムと見なされています。 macOS(Linuxと祖先を共有している)やWindowsなどのオペレーティングシステムは、この点でLinuxに似ていますが、オープンソースオペレーティングシステムはまだややユニークです。

Linuxがアクセス許可を処理する方法を理解すると、 sudoコマンドに頭を悩ませるのはずっと簡単です。最新のオペレーティングシステムにはすべて、「管理者」または「root」のユーザー権限レベルがあります。管理者アカウントまたはrootアカウントをお持ちの場合は、設定を変更したり、データを削除したり、通常はコンピューターで好きなことを行うことができます。

これには、データの損失や完全なワイプと再インストールの必要性につながる可能性のある、おそらく行うべきではないことが含まれます。

Linuxにはありませんrootユーザーレベルの権限をデフォルトにしません。代わりに、アクセス許可レベルを上げないと、アカウントがシステムの非常に機密性の高い部分にアクセスすることはできません。つまり、グラフィカルインターフェイスを使用して通常とは異なることを行う場合、システムは管理者パスワードの入力を求めます。

ただし、ターミナル コマンドラインを使用して作業を行う場合は、sudoが最も安全です。

Sudoとターミナル

Linuxで昇格された権限を自分に与える方法は2つあります。 1つは、rootユーザーとして永続的にログインすることです。これに伴う問題は、コンピュータにアクセスする可能性のある他の誰もが大混乱を引き起こす可能性があり、あなたでさえ偶然にそれを行う可能性があるということです。 Sudoは、それに続く特定のコマンドを実行するために、短時間だけ権限を昇格させます。

Sudo構文

Sudoの構文(コマンドの形式)は単純です。 「sudo」に続けて実行するコマンドを入力するだけです。

たとえば、「sudo apt-get update」は、関連するリストにあるすべてのアプリリポジトリを更新します。ファイル。 sudoを使用せずに実行しようとすると、権限がないことを示すエラーメッセージが表示されます。ちなみに、これは通常、お気に入りのLinuxディストリビューションを新規インストールした後に実行する最初のsudoコマンドです。

Sudoの「Su」

sudoの「su」は「superuser」の略で、スタンドアロンコマンドです。 「su」コマンドを使用すると、sudoが昇格するユーザーの権限を変更できます。

sudoは一時的にrootに昇格しますが、suは適切な権限を持つ別のユーザーにあなたを変更します。これは重要ではないように思われるかもしれませんが、sudoがユーザーを昇格させるアカウントを変更するのには十分な理由があります。

まず、アカウントを変更すると、通常のユーザーはrootパスワードを知らなくなります。次に、すべてのsudoコマンドのログがあります。これは、システム管理者(root)がsuコマンドを発行したユーザーを検索できることを意味します。

suの構文は基本的にsudoと同じです:

Su USERNAME -c COMMAND

USERNAMEを目的のユーザーに置き換えてコマンドを実行し、COMMANDを実行するLinuxコマンドに置き換えます。

If別のユーザーとして複数のコマンドを実行する場合は、次を使用します。

Su USER

USERを目的のユーザーアカウントIDに置き換えます。

suを単独で使用する場合、コマンド「exit」を使用するまで、Linuxは他のユーザーアカウントに切り替わります。このセッションで端末にアクセスするこのユーザーまたは次のユーザーには、引き続き昇格された権限があることを覚えておくことが重要です。これが、一般的にsuよりもsudoを使用する方が良い理由です。

Sudoの制限時間

初めてsudoコマンドを使用するときは、パスワードを入力する必要があります。その後、そのパスワードは15分間有効です。このデフォルトを変更するには、コマンドsudo visudoを実行し、「timestamp_timeout =」をより長い値またはより短い値に変更します。ただし、sudoパスワードが有効である期間を延長または短縮する正当な理由がない限り、これを行うことはお勧めしません。

Sudoオプションスイッチ

sudo構文はシンプルで、いくつかのスイッチは知っておく価値があります。これらのコマンドは、追加情報を開いたり、sudoセッションの制御に役立ちます。

  • -hは、sudoの構文とコマンド情報を示します。
  • -Vは、マシン上のsudoの現在のバージョンを表示します。
  • -vは、sudoの制限時間を更新し、クロックを再起動します。
  • -l <​​/ strong>はユーザー権限を一覧表示します。
  • -kは現在のsudoセッションをすぐに強制終了し、昇格された権限を削除します。
  • sudoにはさらに多くのオプションが組み込まれており、上記の最初の-hスイッチを使用してすべてを確認できます。

    上記のスクリーンショットは、使用した場合の結果です。ヘルプオプション。

    便利なSudoコマンド

    では、すべてのLinuxユーザーが知っておくべきsudoによって強化されたコマンドはどれですか。 sudo apt-get updateについてはすでに説明しましたが、次の点にも注意してください。

    • Sudo apt-get upgradeは、インストールされているすべてのパッケージをアップグレードします。li>
    • Sudo apt-get install は、選択したソフトウェアをインストールします。パッケージ名をインストールしたい名前に変更するだけです。
    • パッケージ名がわからない場合は、dpkg –listを使用してください。
    • インストールされているパッケージをターミナルから削除する場合は、sudo apt-get remove を使用します(ここでも、問題の特定のパッケージ名に置き換えます)。
    • これらはおそらく最初に使用する必要のあるsudoコマンドですが、上記で学習したように、どのコマンドもsudoに続くことができますが、より高い権限が必要なコマンドのみを使用する必要があります。

      <!-AIコンテンツ終了1->

      関連記事:


      30.06.2021