この記事の監修:宮崎智広(Linux実務・教育歴20年以上・受講者3,100名超)
「はい。何でもできます。ファイルを全部消すことも、OSを起動不能にすることも。」
セミナーでこのやりとりをするたびに、受講生の顔が少し引きつります。でも、その緊張感は正しい反応です。
この記事では、私が初めてrootになった時のリアルな恐怖体験と、20年以上の現場経験から伝えたいroot運用の心得について、現役講師の立場から解説します。
この記事のポイント
・rootは「間違えた時に誰も止めてくれない」権限だと最初に理解する
・初心者がrootで犯しがちな3つの典型的ミスがある
・root運用で信頼される人は「いつ・なぜ使うか」を言語化できる
・sudoとsuを使い分ける習慣が現場の事故を9割防ぐ
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
私が初めてrootになった日のこと
2001年、私がSE(システムエンジニア)として現場デビューしたばかりの頃の話です。先輩から「このサーバーのApacheを再起動しておいて」と言われました。当時のApacheはrootでないと起動できない構成になっていて、先輩が離席する前にさらっと言い残したのです。「パスワードはこれだから」と。
私は緊張しながら `su -` を打ち込み、パスワードを入力しました。
# プロンプトがこう変わった時の、あの感覚 [miyazaki@server01 ~]$ su - Password: [root@server01 ~]#
「間違えたら終わりだ。」
その感覚は正しかったと思います。rootは特別な権限ではなく、「失敗を誰も止めてくれない状態」のことだと、今の私は受講生に伝えています。
初心者がrootで犯しがちな3つの典型的ミス
3,100名以上を指導してきた経験から、rootで失敗するパターンはだいたい同じです。1. コピーしたコマンドをrootで実行する
インターネットからコマンドをコピーしてrootで実行する。これが最も危険なパターンです。あるセミナー受講生から聞いた話で、「ブログに載っていたコマンドをそのまま実行したら、/var/www配下のファイルが全部消えた」というケースがありました。記事の筆者が別のパスを意図していたコマンドを、ディレクトリを確認せずrootで実行してしまったのです。
# こういうコマンドをrootで実行する前に、必ずpwdで現在地を確認する [root@server01 ~]# pwd /root # rmコマンドは必ず対象を先に確認(ls -la まず実行) [root@server01 ~]# ls -la /var/www/ total 12 drwxr-xr-x. 3 root root 18 Jun 10 09:22 . drwxr-xr-x. 21 root root 278 Jun 1 08:15 .. drwxr-xr-x. 2 apache apache 120 Jun 22 15:30 html
2. rootで作業した後にログアウトしない
rootで作業を終えた後、一般ユーザーに戻らずにターミナルを放置してしまうケースです。20年以上の現場経験で何度も見てきましたが、「rootのままターミナルを残して席を離れる」は悪習です。私が新人の頃、先輩にこれをやったら翌日ミーティングで名指しで注意されました。今でもその緊張感を覚えています。
# root作業が終わったら即exitで一般ユーザーに戻る [root@server01 ~]# exit logout [miyazaki@server01 ~]$ # プロンプトが $ に戻ったことを必ず確認する
3. rootでファイルを作成してしまう
Webアプリのデプロイ作業中、rootでファイルを配置してしまい、一般ユーザーのApacheやnginxからファイルが読めなくなる——これは現場でよく起きる事故です。# rootで作ったファイルの所有者がrootになっている例 [root@server01 html]# ls -la -rw-r--r--. 1 root root 1024 Jun 23 10:15 index.html -rw-r--r--. 1 apache apache 512 Jun 20 09:00 style.css # rootファイルはchownで所有者を変更 [root@server01 html]# chown apache:apache index.html [root@server01 html]# ls -la -rw-r--r--. 1 apache apache 1024 Jun 23 10:15 index.html
20年後に伝えたいroot運用の3つの心得
現場で信頼されるエンジニアが実践していること、それはrootの「使い方」ではなく「使い時の判断」です。心得1:rootを使う前に「一般ユーザーではできないか」を1秒考える
rootを使う前に、一般ユーザーやsudoで対応できないかを考える癖をつけてください。私がセミナーで教えていることのひとつは、「rootが必要な操作は実はそんなに多くない」という事実です。パッケージのインストール、サービスの再起動、設定ファイルの変更など、sudoで事足りる操作がほとんどです。
# sudoで実行できるかを先に試す [miyazaki@server01 ~]$ sudo systemctl restart httpd [sudo] password for miyazaki: # sudoのログは /var/log/secure に残るので監査に使える [miyazaki@server01 ~]$ sudo grep miyazaki /var/log/secure | tail -5 Jun 23 10:15:30 server01 sudo: miyazaki : TTY=pts/0 ; PWD=/home/miyazaki ; USER=root ; COMMAND=/bin/systemctl restart httpd
心得2:変更前の状態を必ず記録する
rootで設定変更する前に、現在の状態をどこかに記録しておく。これは20年以上の現場経験で確信した鉄則です。「変更前に状態を記録していたから10分で元に戻せた」という体験を、私は何度もしてきました。記録がなかった時に比べて、復旧にかかる時間は圧倒的に違います。
# 設定ファイルはバックアップを取ってから編集する [root@server01 ~]# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak.20260623 # 現在のサービス状態を記録しておく [root@server01 ~]# systemctl status httpd > /tmp/httpd_status_before.txt # 変更後に問題が起きても、元の設定に戻せる [root@server01 ~]# cp /etc/ssh/sshd_config.bak.20260623 /etc/ssh/sshd_config
心得3:rootで作業する時は「もし間違えたら何が壊れるか」を先に考える
rootで作業する前に、「このコマンドを間違えたら最悪どこまで影響が出るか」を考える習慣を持ってください。これは「慎重になれ」という精神論ではありません。リスクを先に言語化することで、注意すべきポイントが明確になるのです。
例えば `/etc/hosts` を書き換える作業なら:
・間違えると名前解決が止まる
・最悪、自分自身がSSHでサーバーにアクセスできなくなる
・コンソールかKVMでしかアクセスできなくなる
と先に考えておけば、「作業前にSSHが繋がる別ターミナルをもう一本開いておく」という予防策が自然に浮かびます。これが現場で事故を防ぐ思考の型です。
まとめ
| 状況 | 心得 |
|---|---|
| rootを使う前 | sudoで代替できないか1秒考える |
| 設定変更前 | 現在の状態を記録・バックアップを取る |
| 作業実行前 | 「間違えたら最悪どこが壊れるか」を言語化する |
| root作業後 | 即exitで一般ユーザーに戻り、プロンプト($)を確認 |
| ファイル作成後 | ls -laで所有者を確認して必要に応じchown |
手が震えながらrootになったあの日から20年以上が経ちました。今でも、rootでの作業は「緊張感を持ってやるもの」という感覚は変わっていません。
その緊張感を持ち続けられるエンジニアが、結局は現場で長く信頼される人です。
・Linuxのネームサーバー(DNS)設定方法|resolv.confとnmcliの使い方
・viで「readonly」になってしまった時の対処法
rootの「使い時の判断」を体系的に身につけていますか?
root運用での失敗は、知識不足ではなく「判断の型」がないことが原因です。まずは現場で通用する構築の全体像を掴んでください。
ネットの切れ端の情報をコピペするだけでなく、現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。
「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。
3,100名以上が実践した「型」を無料で公開中
プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。
登録10秒/合わなければ解除3秒 / 詳細はこちら

無料メルマガで学習を続ける
Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。
登録無料・いつでも解除できます