【Tera Term】「E325: ATTENTION・・・」というエラーが出た時の対処法

公開日:
更新日:
カテゴリー: サーバー

以前VPSサーバを契約し、勉強のためにいろいろいじった後放置していたんですが、「使わなきゃ損!」ということで、再度トライしました。

そしてドメインの設定を行おうと思ったのですが、約8ヶ月ぶりのVPS操作だったため、Tera Termの使い方が分からず、適当に操作していた結果、「E325: ATTENTION・・・」というエラーを招きました。

ここでは、このエラーについて私が学習したことと対処法についてまとめています。

エラー内容

私はドメイン設定のため、「/etc/httpd/conf.d/.vhost.conf.swp」というファイルを編集しようとしたときに下記エラーが出力されました(編集するファイルが違う場合、当然下記エラーのファイル名部分は変わります)。

E325: ATTENTION
Found a swap file by the name "/etc/httpd/conf.d/.vhost.conf.swp"
          owned by: root   dated: Wed Jan  8 09:18:20 2014
         file name: /etc/httpd/conf.d/vhost.conf
          modified: YES
         user name: root   host name: ○○○
        process ID: 28317
While opening file "/etc/httpd/conf.d/vhost.conf"
             dated: Wed Jan  8 10:13:48 2014
      NEWER than swap file!

(1) Another program may be editing the same file.
    If this is the case, be careful not to end up with two
    different instances of the same file when making changes.
    Quit, or continue with caution.

(2) An edit session for this file crashed.
    If this is the case, use ":recover" or "vim -r /etc/httpd/conf.d/vhost.conf"

    to recover the changes (see ":help recovery").
    If you did this already, delete the swap file "/etc/httpd/conf.d/.vhost.conf
.swp"
    to avoid this message.
-- More --

エラーの原因

エラーの原因は、ファイルの編集中にも関わらず強制終了(保存せずに終了)したためです。

というのも、Linuxはファイル編集時に SWAPファイル(バックアップファイル)をとっており、予期せぬ理由で強制終了した場合(もしくは他のエディタで同じファイルを編集中の場合)、 そのファイルを提供してくれます。つまり強制終了前の状態に復元できるのです。

上記エラーの意味は、「強制終了したようだからバックアップファイル(SWAPファイル)を提供するぜ。リカバリーするか削除するか決めろ」といった感じです。

エラーの意味

もうちょっと具体的にエラーの意味を解説すると、こんな感じです。

(1) Another program may be editing the same file.
    If this is the case, be careful not to end up with two
    different instances of the same file when making changes.
    Quit, or continue with caution.

別のプログラムが同じファイルを編集しているかもしれません。
この場合、変更を加える際には同じファイルの異なる2つのインスタンスが生成されることに注意してください。
終了するか、注意して続行してください。

このパターンに該当するのは、複数人で同じファイルを編集している場合や、同時に複数の編集エディタを立ち上げて同じファイルを編集している時です。

(2) An edit session for this file crashed.
    If this is the case, use ":recover" or "vim -r /etc/httpd/conf.d/vhost.conf"

    to recover the changes (see ":help recovery").
    If you did this already, delete the swap file "/etc/httpd/conf.d/.vhost.conf
.swp"
    to avoid this message.

このファイルは編集中にクラッシュしました。
この場合、「:recover」もしくは「vim -r /etc/httpd/conf.d/vhost.conf」でリカバリーできます(「:help recovery」でヘルプを参照すること)。
なお、既にリカバリーを行ったのであれば、SWAPファイルである「/etc/httpd/conf.d/.vhost.conf.swp」を削除すればこのエラーメッセージはなくなります。

多くの場合、このパターンに該当すると思います。

対処法

その時々で最適な対処法は変わるかもしれませんが、基本はバックアップファイルは残しておき、まずはやりたいことまで編集を終わらせることです。

そのため、まずはエンターを3回押し、現在のファイルの編集を行います。ここで思い通りに編集できたら保存します(保存する場合はエスケープキーの後に「:wp」と入力しエンターキー)。

このとき、リカバリーせざるを得ない状況であれば、「:recover」と入力し、いくつかの候補が出てきますので、日時を確認して、リカバリーファイルを選択してください。

リカバリーファイルの選択は「1」のように数字を入力し、エンターを押せばOKです。あとは適宜編集した後「:wq」で保存・終了してください。

エラーの回避

該当ファイルの編集が終わっても、説明文にあるように、SWAPファイルを削除しない限り、該当ファイルを編集しようとすると、このエラーメッセージが出力されます。

そのためSWAPファイルを削除しなければなりません。ファイルの削除は以下で行います。

[○○○@vweb2 ~]# rm /etc/httpd/conf.d/.vhost.conf.swp
rm: remove regular file `/etc/httpd/conf.d/.vhost.conf.swp'? yes

当然、「/etc/httpd/conf.d/.vhost.conf.swp」の部分はファイルによって変わりますので、自分のエラーに応じて変更してください。

メモ

別のエラーの場合、以下の6つの対処法が用意されている。それをメモ。

  • 読込み専用で開く場合は「O」
    現在のファイルの状態を確認するもしくは別のエディタで編集中の状態を確認する場合に選択します(SWAPファイルは残ったままです)。
  • そのまま編集する場合は「E」
    SWAPファイルを使用せず、現在のファイルを編集する場合に選択します(SWAPファイルは残ったままです)。
  • 復元する場合は「R」
    強制終了となったファイルを元の状態に戻す場合に選択します(復元後、その復元ファイルを保存した場合、SWAPファイルは削除されます)。
  • SWAPファイルを削除する場合は「D」
    SWAPファイルを削除して、現在のファイルの編集をする場合に選択します。
  • 終了する場合は「Q」
  • 中止する場合は「A」

 

あわせて読んでほしい!

 

コメント

まだコメントはありません。

コメントフォーム
お名前
コメント