コース一覧
Linux運用・管理
sudo - スーパーユーザーの力

Linux運用・管理

ユーザー権限、パーミッション、プロセス、ジョブ制御を学び、Linux上の実行中サービスと作業権限を安全に管理できるようにします。

1
パーミッションと権限管理
0. ユーザーとグループの概念5分
1. パーミッションの読み方5分
2. 権限の変更 chmod5分
3. 所有者の変更 chown5分
4. sudo - スーパーユーザーの力5分
5. 実行権限とスクリプト5分
6. パーミッションチェック5分
2
プロセス管理とジョブ制御
0. プロセスとは何か5分
1. psでプロセス一覧を確認する5分
2. topでリアルタイム監視する5分
3. プロセスの終了 kill5分
4. フォアグラウンドとバックグラウンド5分
5. nohupでログアウト後も実行する5分
6. プロセス管理チェック5分

Linux運用・管理

01ユーザーとグループの概念
02パーミッションの読み方
03権限の変更 chmod
04所有者の変更 chown
05sudo - スーパーユーザーの力
06実行権限とスクリプト
07パーミッションチェック
08プロセスとは何か
09psでプロセス一覧を確認する
10topでリアルタイム監視する
11プロセスの終了 kill
12フォアグラウンドとバックグラウンド
13nohupでログアウト後も実行する
14プロセス管理チェック

Linux運用・管理

sudo - スーパーユーザーの力

sudo は安全装置の解除

「とりあえず sudo」を打つ前に、なぜ断られたのかを見る

Permission denied が出ると、頭に sudo を足して打ち直したくなります。たいてい通ってしまうので、それが癖になります。ただ通った理由は、あなたの操作が正しかったからではなく、権限の判定そのものを飛ばして押し切ったからです。

先にやることは ls -l で持ち主と権限を見ることです。持ち主が自分ではないから断られているのか、実行の権利が立っていないから断られているのかが分かれば、chown か chmod の 1 手で直ります。自分で直せる範囲なのに sudo で押し切ると、今度はそのファイルが root のものになって、次に触る人が同じところで詰まります。

sudo が本当に要るのは、パッケージの導入やサービスの再起動のように、システム全体に効く操作をするときです。

root は権限の判定を素通しするユーザー

Linux には番号が 0 のユーザーが 1 人だけいて、これを root と呼びます。root に対しては、ここまで見てきた 9 個の権利のチェックがそもそも働きません。他人のファイルも読めますし、消せます。

ターミナル

$ ls -l /etc/shadow
-rw-r----- 1 root shadow 1567 May 20 12:00 /etc/shadow

パスワードのハッシュが入ったこのファイルは、その他の人には 1 文字も読めない設定です。それでも root なら読めます。日常の作業を root で行わないのは、打ち間違いが全部そのまま通ってしまうからです。

1 コマンドずつ借りる

ターミナル

sudo systemctl restart nginx
sudo -u www-data ls /var/www/private

sudo は 1 行分だけ権限を貸し出して、終わったら元のユーザーに戻す仕組みです。-u を付ければ root ではなく指定したユーザーとして実行できるので、Web サーバーからそのファイルが本当に見えているのかを、当人の目線で確かめられます。

sudo -i で root のシェルに入ることもできますが、そこに居座ると以降の操作が全部その権限で走ります。1 行ずつ借りるほうが、打ち間違えたときの被害が小さく済みます。

誰が借りられるかは sudoers に書いてある

貸し出しを許すかどうかは /etc/sudoers に書かれています。Debian 系なら sudo グループ、Red Hat 系なら wheel グループに入っている人が対象、というのが既定の設定です。

ターミナル

%sudo   ALL=(ALL:ALL) ALL

誰がいつ何を実行したかは記録に残ります。全員が root で直接ログインする運用より、あとから追いかけやすくなるのが、この仕組みのもう 1 つの利点です。

解説

このファイルを普通のエディタで開いて書き間違えると、sudo が誰にも使えなくなり、直すための sudo も打てなくなります。編集は必ず sudo visudo から行ってください。保存の前に文法を検査して、壊れた内容なら書き込みを止めてくれます。

このレッスンに出てくる用語

意味があいまいなまま進んだ語は、ここから読み直せます。

  • パスワードDBが漏洩しても元のパスワードがわからないようにするため。
  • サーバークライアント(ブラウザなど)がリクエストを送り、サーバーがレスポンスを返す。
  • シェルコマンドを解釈して実行するプログラム
  • ループ繰り返し処理。矢印で戻すか専用記号で示す
生田 陸人
監修生田 陸人
ゆめさくエンジニア / 現役ソフトウェアエンジニア監修者プロフィールを見る →
編集 ゆめさく編集部·公開 2025/12/19·更新 2026/08/26

関連レッスン

  • 実行権限とスクリプト

    シェルスクリプト実行に必須の実行権限について解説。設定方法と注意点をターミナルで確認します。

  • パーミッションチェック

    ファイルやディレクトリのパーミッション設定に関する理解度をクイズで確認します。

  • プロセスとは何か

    Linuxにおけるプロセスとは何か?その概念と、システムにおける役割について解説します。

分からないところは Tap (AI先生) に質問できます

24 時間いつでも、あなたのレベルに合わせて日本語で答えます。