InfraAcademy

InfraAcademy Blog

その作業、あとから説明できますか?未経験インフラエンジニアのための作業ログ(証跡)の残し方

| #Linux #インフラエンジニア #未経験
Linuxをブラウザで試してみる

Linux・ネットワーク・AWSを、環境構築なしで実践学習できます

この記事を共有

こんにちは、インフラエンジニアのryuです。

サーバーで作業をしたあと、先輩からこう聞かれたことはないでしょうか。

「さっきの作業、何時に何を打った?そのとき何が表示された?」

聞かれた瞬間に、頭が真っ白になる。 打ったコマンドは覚えているつもりでも、画面に出たメッセージまでは思い出せない。

この記事では、そんな場面を減らすための作業ログ(証跡)の残し方をお話しします。 道具は3つだけです。今日の練習環境から、すぐに試せます。

作業ログ(証跡)って、そもそも何なのでしょうか?

現場でいう作業ログは、サーバーのログとは別物です。 サーバー自身が書き出すログではなく、作業した人が、自分の操作と画面の表示を丸ごと記録したものを指します。

作業ログ(証跡)とは、作業者がいつ・どのサーバーで・何を入力し・何が表示されたかを、あとから第三者が確認できる形で残した記録のこと。

たとえるなら、ドライブレコーダーのようなものです。 事故が起きなければ見返すことはほとんどありません。 でも、何かあったときに「実際に何が起きたか」を示せるのは、記録があるときだけです。

システムが自分で書くログの読み方は、原因はだいたいログに書いてある。ログの読み方入門 で解説しました。 今回はその反対側、人間の操作の記録の話です。

なぜ現場では証跡を求められるのか

理由は大きく3つあります。 少し整理してみましょう。

理由 具体的な場面
障害の原因調査 作業のあとに不具合が出たとき、どの操作が影響したかを追える
作業の報告・承認 手順書どおりに実施したことを、上長やお客さまに示せる
自分を守る 「その時間には触っていない」「指示どおりに打った」と説明できる

3つ目は意外と大事です。 記録がないと、自分が悪くないときでも疑いを晴らせません。

現場によっては、作業ログの提出が作業完了の条件になっていることもあります。 未経験のうちから習慣にしておくと、配属されたときに慌てずに済みます。

記憶に頼ると、なぜ危ないのか

人の記憶は、思っているよりずっと曖昧です。 特に、緊張している本番作業ほど、あとから思い出す内容が都合よく書き換わります。

たとえば、systemctl restart を打ったつもりが、実際には stop だった。 エラーは出ていなかったと思っていたが、実は1行だけ警告が出ていた。

こうしたズレは、記録を見返せば一瞬で分かります。 逆に言えば、記録がなければ誰にも確かめられないのです。

道具その1:Tera Termの自動ログ採取

Windowsからサーバーに接続するとき、多くの現場で使われているのが Tera Term です。 まずはここで、ログを自動で取る設定をしておきましょう。

Tera Termには、接続と同時にログの記録を始める機能があります。 公式マニュアルでは、設定メニューの「その他の設定」の中にある「ログ」タブで、保存先フォルダやファイル名の形式を指定できると説明されています。

設定の流れを表にまとめると、次のとおりです。

設定項目 おすすめの考え方
自動的にログ採取を開始する オンにする。取り忘れがいちばん多い失敗だから
標準のログ保存先フォルダ 案件ごと・日付ごとに分けておくと探しやすい
標準ログファイル名 日時とホスト名が入る形式にする

ファイル名は、日時を埋め込む書式で指定できます。 たとえば次のような形にしておくと、いつ・どこに入ったかが名前だけで分かります。

%Y%m%d_%H%M%S_&h.log

%Y%m%d_%H%M%S が日時、&h が接続先のホスト名に置き換わります。 あとで20個のログファイルが並んだときに、この差がはっきり効いてきます。

ただし、現場によっては使うツールやログの保存場所がルールで決まっています。 勝手に設定を変える前に、まずは現場の手順を確認してください。

道具その2:Linuxの script コマンド

Macのターミナルや、Linuxの上でさらに作業するときには、script コマンドが便利です。 これは端末に表示されたものを、そのままファイルに書き写してくれる道具です。

使い方はとても簡単です。

# 記録を開始(ファイル名に日時を入れておく)
script ~/worklog/$(date +%Y%m%d_%H%M%S)_$(hostname).log

# ここで普段どおり作業する
sudo systemctl status nginx
df -h

# 記録を終了
exit

exit を打つまでのあいだ、入力も出力もすべてファイルに残ります。 終わったら less で開いてみてください。自分の作業が、画面のとおりに再現されているはずです。

タイミングまで記録して、あとから再生する

script には、もう一歩進んだ使い方もあります。 各出力がどの瞬間に表示されたかを、別ファイルに記録できるのです。

# 出力と、表示のタイミングを別々に記録する
script --log-timing work.tm --log-out work.out

# あとから、作業を動画のように再生する
scriptreplay --log-timing work.tm --log-out work.out

scriptreplay を使うと、記録した作業が実際の速さで画面上に再生されます。 どこで手が止まったか、どのコマンドの応答に時間がかかったかまで見えるのです。

ひとつ注意があります。 script の記録には、画面に出たものがすべて入ります。 パスワードを平文で表示させるような操作をすると、それもファイルに残ってしまいます。

作業ログは、それ自体が大事な情報のかたまりです。保存場所と共有範囲には気を配りましょう。

道具その3:history に時刻を残す

3つ目は、手軽さでいちばんの history です。 Linuxでは、打ったコマンドの一覧を history で確認できます。

ただ、初期状態の history には、いつ打ったかという時刻が表示されません。 これでは「何時に何をしたか」には答えられませんね。

そこで、bash の HISTTIMEFORMAT という変数を設定します。

# 自分のユーザーの ~/.bashrc に追記する
echo 'export HISTTIMEFORMAT="%F %T "' >> ~/.bashrc
source ~/.bashrc

# 確認
history | tail -5

設定すると、次のように日時つきで表示されるようになります。

  512  2026-09-27 10:14:02 sudo systemctl status nginx
  513  2026-09-27 10:14:30 df -h

history の基本的な使い方は、コマンドの履歴を調べる方法 でも詳しく紹介しています。 あわせて読むと、検索や再実行のコツもつかめます。

ただし、history はあくまで補助です。 残るのは入力したコマンドだけで、画面に何が表示されたかは分かりません。 証跡として出すなら、Tera Termのログか script の記録が主役になります。

3つの道具をどう使い分けるか

ここまでの3つを、並べて比べてみましょう。

道具 残るもの 向いている場面
Tera Termの自動ログ 入力と画面の表示すべて Windowsから接続する日常作業の証跡
script コマンド 入力と画面の表示すべて(タイミングも可) Mac・Linuxからの作業、練習の振り返り
history(時刻つき) 入力したコマンドと時刻だけ 自分用のメモ、ざっくりした確認

迷ったら、画面の表示まで残る道具を1つ、必ず使う。 これだけ守れば、証跡としては十分に役目を果たします。

記録を「使える証跡」にする3つのコツ

ログを取っているだけでは、まだ半分です。 あとから見返したときに役立つ形にするには、少しだけ工夫が要ります。

コツ1:作業の前後で、状態を確認するコマンドを打つ

作業の前と後に、同じ確認コマンドを打っておきましょう。 たとえば設定ファイルを変更するなら、変更前と変更後にその中身を表示させます。

# 作業前の状態を画面に出しておく
date; hostname; whoami
sudo cat /etc/nginx/nginx.conf | grep worker_processes

# (ここで変更作業)

# 作業後の状態をもう一度出す
sudo cat /etc/nginx/nginx.conf | grep worker_processes
sudo nginx -t

最初の date; hostname; whoami は、いつ・どこで・誰がを記録に刻むためのものです。 小さな一行ですが、あとで読み返す人にとっては、これがいちばんの手がかりになります。

コツ2:手順書の番号と、ログをつなげる

手順書に沿って作業するなら、手順の番号をコメントとして打ち込んでおくと便利です。

# ---- 手順3: nginxの設定を反映 ----
sudo systemctl reload nginx

# から始まる行は、シェルが実行せずに読み飛ばします。 それでも画面には表示されるので、ログの中に目印として残ります。

手順書そのものの確かめ方は、その手順書、そのまま実行して大丈夫ですか? で解説しました。 手順書とログがつながると、作業の説明がぐっと楽になります。

コツ3:終わったら、3分だけ読み返す

作業が終わったら、ログをざっと読み返してください。 エラーや警告を見落としていないかを確かめるだけで十分です。

実は、この3分がいちばんの学習になります。 自分が打ったコマンドと、それに対するサーバーの返事を、落ち着いて見直せるからです。

証跡でありがちな失敗と、その防ぎ方

ここで、未経験のうちによくある失敗も見ておきましょう。 どれも、一度やると冷や汗をかくものばかりです。

取ったつもりで、実は取れていなかった

いちばん多いのが、この失敗です。 Tera Termで手動のログ記録を使っていて、開始ボタンを押し忘れていた。 あるいは、途中で接続が切れて、新しい接続ではログが取られていなかった。

防ぎ方はシンプルで、自動採取をオンにしておくことです。 さらに、作業を始める前に、ログファイルが本当に増えているかを一度だけ確かめます。 保存先フォルダを開いて、今の時刻のファイルがあれば安心です。

ログはあるのに、どれがどの作業か分からない

ファイル名が teraterm.log のままで、毎回上書きされていた。 これも、あとで泣くことになる典型例です。

先ほど紹介したように、ファイル名に日時とホスト名を入れておけば防げます。 加えて、1つの作業が終わったら接続を切り、次の作業は新しいログで始める。 作業とファイルが1対1になるだけで、探す手間が大きく減ります。

見せてはいけない情報まで残してしまった

証跡は、上長やお客さまに提出することがあります。 そのとき、画面に表示したパスワードや秘密鍵の中身が、ログに入っていたら大変です。

提出前には、ログの中に秘密情報が紛れ込んでいないかを必ず確認しましょう。 そもそも、秘密情報を画面に表示させる操作は避けるのが基本です。 どうしても必要な場合は、先輩に扱い方を相談してください。

ログから作業報告を書いてみよう

証跡が手元にあると、作業報告を書くのがぐっと楽になります。 報告は、ログの中から大事なところを抜き出して並べるだけで形になるからです。

たとえば、こんな骨組みで書いてみましょう。

項目 ログのどこから拾うか
作業日時 冒頭の date の出力と、最後の確認時刻
対象サーバー hostname の出力
実施内容 手順番号のコメントと、その下のコマンド
結果 作業後の確認コマンドの出力
気になった点 警告やエラーが出た行

報告に「気になった点」の欄を設けるのがポイントです。 小さな警告でも書いておけば、先輩が見て「それは問題ない」「それは要確認」と判断してくれます。

こうしたやり取りを重ねるうちに、どの出力が大事で、どれが気にしなくてよいのかが、少しずつ分かってきます。 証跡は、自分を守る道具であると同時に、先輩から学ぶための教材にもなるのです。

練習環境で、今日から始めてみよう

証跡の習慣は、本番に出る前から身につけておくのが理想です。 自分の練習用サーバーでも、ログを取りながら作業してみましょう。

練習のときの記録には、別の良さもあります。 あとで同じ構築をやり直すときに、そのままカンニングペーパーになるのです。

たとえば、こんな順番で始めてみてください。

  1. Tera Termか script で、記録を取りながらサーバーに入る
  2. 今日学んだコマンドを試して、表示を確かめる
  3. 終わったらログを読み返し、分からなかった出力に印をつける

印をつけた出力は、次の勉強のテーマになります。 記録が、そのまま学習の地図になっていくわけです。

1か月も続けると、ログのフォルダには自分の成長の跡がたまっていきます。 最初のころのログを開くと、同じコマンドを何度も打ち直していたり、エラーの意味が分からず手が止まっていたりするはずです。 それが今はすんなり進められているなら、確かに前に進んでいる証拠です。 転職活動で「どんな練習をしてきたか」を聞かれたときにも、具体的に話す材料になりますよ。

練習用サーバーを外部に公開している場合は、守りの設定も忘れずに。 練習用に立てたサーバーも、公開した瞬間から叩かれている で、最低限の守り方をまとめています。

Linuxの基本操作から順番に学び直したい方は、InfraAcademyの Linuxロードマップ も活用してください。 コマンドを打ちながら進む構成なので、ログを取る練習にもぴったりです。

また、新人インフラエンジニアの育成で「作業の記録と報告」をどう教えるか悩んでいる企業の方は、法人プラン もご覧ください。

まとめ

最後に、今日のポイントを振り返ります。

作業ログ(証跡)は、作業した人が自分の操作と画面の表示を残した記録です。 障害の調査、作業の報告、そして自分を守るために、現場ではほぼ必ず求められます。

道具は3つ。 Tera Termの自動ログ、Linuxの script コマンド、そして時刻つきの history です。 証跡としては、画面の表示まで残る前の2つが主役になります。

そして、記録は取るだけでなく、前後の確認・手順番号の目印・読み返しで、使える証跡に変わります。

最初は面倒に感じるかもしれません。 でも、一度でも「ログがあって助かった」という経験をすると、もう手放せなくなりますよ。 まずは今日の練習から、記録ボタンを押してみてください。

参考

Next Action

記事で読んだ内容を、講座で実装してみましょう

InfraAcademyでは、ブラウザ上でLinuxやネットワークの実践環境を使いながら学習できます。無料で始められる講座から、学習の流れを試せます。

この記事を書いた人

ryu

InfraAcademy運営 / エンジニア

エンジニア歴10年。Linux、ネットワーク、クラウドを中心に、実務で役立つインフラ技術を初心者にもわかりやすく解説しています。

X: @ryu63614894

Related

関連記事

ブログ一覧へ

Roadmap

まずはこの4講座から

ログインすれば無料で始められる講座です。気になったテーマから手を動かして学べます。

講座一覧を見る