Linux Tips| E212 Vimで書き込み用のファイルを開けない(3つの方法)

WuYanG |カテゴリ:ファイル復旧| 2024年10月12日に更新

概要:

このエラーを解決する方法は、次の3つです:E212: can't open file for writing.ファイルのパーミッションを確認する、sudo vimでファイルを保存する、読み取り専用のファイルシステムかどうかを確認する。このプロセス中にLinuxのデータが失われた場合、EaseUS Linuxデータ復旧ソフトウェアを実行して、失われたLinuxデータを復元してください。

「viエディターを使ってsources.listを編集しようとしているのですが、ファイルを保存する際に以下のエラーが発生します:

/etc/apt/sources.list" E212: Can't open file for writing」 -Stack Overflowから

Vimを使用しているLinuxユーザーの方は、ファイルへの書き込みをしようとして、以下のようなエラーに遭遇したことがあるのではないでしょうか?E212 can't open file for writing.この記事では、このエラーを修正する3つの方法を紹介します。これらの方法はすべて、Ubuntuやその他のDebianベースのディストリビューションで動作します。さっそく始めてみましょう!

E212 書き込み用ファイルを開けない原因

この問題は、パーミッションの問題からディスク容量の不足まで、さまざまなことが原因となっています。このパートでは、その原因を分析します。さっそく始めましょう!

Linuxファイルの内容を修正するためにviコマンドを使用すると、保存ができないことが判明した。書き込みが終わるたびに、「:q!」コマンドで正常に終了することができます。しかし、「:wq!」コマンドでファイルを保存して終了すると、これらのエラーメッセージが表示されます:

  • Vim がファイルを保存できない (E212)
  • Vimが書き込みのためにファイルを開くことができない
  • ルートユーザーが書き込みのためにファイルを開くことができない
  • /etc/apt/sources.list" E212: Can't open file for writing
  • E212: 書き込みのためにファイルを開くことができません。ENTERを押すか、コマンドを入力して続行してください

このエラーが出るのは、主に2つの理由があります:

  • 現在のユーザーには十分な権限がありません。
  • このファイルは、他のプログラムまたはユーザーによって使用されている可能性があります。

解決策 - Vimで書き込み用のファイルが開けないのを修正する3つの方法

E212: can't open file for writingは、Vimでファイルを保存しようとしたときに発生する可能性のあるエラーです。このエラーの修正方法は、原因によっていくつかあります。

方法1.ユーザーの認証とファイルのパーミッションの確認

このエラーの一般的な原因は、パーミッションの問題です。解決策は、ファイルを開くためにviコマンドを使用する際に、一時的に管理者権限を与えるために、ファイルの前にsudoを追加することです。例えば、「sudo vi hosts」というコマンドで、ファイルを開いて編集します。

ステップ1. 非 root ユーザーで以下のコマンドを使用して、「sources.list」ファイルを編集します。

$ vim /etc/apt/sources.list

ステップ2."/etc/apt/sources.list" E212: Can't open file for writing" エラーを取得

ステップ3.エラーを修正するためにsudo権限を実行します。

$ sudo vim /etc/apt/sources.list

方法2.ファイルがロックされているかどうかを確認し、書き込みのためにファイルを開くことができないのを解決する

rootまたはsudoユーザーであるにもかかわらず、書き込みのためにファイルを開くことができない場合。そのときは、ファイルを終了させてみて、「I」コマンドでロックされているかどうか確認してみてください。

ステップ1.このコマンドでファイルを探します:

lsattr /home/admin/$filename

ステップ2.Iロックを確認する。

 "I" が表示されている場合、そのファイルはロックされています。このコマンドを実行することで、ファイルのロックを解除することができます。

chattr -i $filename

この後、q!を実行して、ファイルを終了します。再度ファイルを表示すると、内容が変更され保存されていることがわかります。

方法3.読み取り専用ファイルシステムまたは容量の問題を確認する

権限があり、sudoコマンドを使用している場合でも、このエラーに直面します。その場合は、読み取り専用のファイルシステムか容量の問題がないか確認する必要があります。

ステップ1.このコマンドでディスクの空き容量を確認します。

$ df -h

ステップ2.次に、rmコマンドで不要なファイルを削除・除去してスペースを確保します。

ステップ3.mountコマンドを実行し、デバイスを確認します。読み取り専用(ro)ではなく、読み取り/書き込み(rw)としてマウントされている必要があります。

$ mount

ステップ4.ファイルシステムのエラーを修正し、読み書き可能なファイルシステムにマウントし直します。

$ sudo mount -o remount,rw /partition/identifier /mount/point

or

$ sudo mount -o remount,rw /

これで、「E212: Vim can't open file for writing」エラーは解決しました。まだ問題がある場合は、このビデオを見てヘルプを得ることができます。

追加ヒント:ソフトで失われたwindowsファイルを復元する方法

「E212: Vim can't open file for writing」エラーを直した後、データを失ってしまったらどうしよう?心配しないでください。EaseUS Data Recovery Wizardは、windowsでシステムで失われたデータを復元するための便利なツールです。シンプルなインターフェイスで、データ復元プログラムに詳しくなる必要がある人でも簡単に使用できます。

  • EaseUS Data Recovery Wizardは、ハードディスク、USBフラッシュドライブ、メモリーカードなど、あらゆるストレージデバイスから削除したファイルを復元できます。
  • また、写真、ビデオ、ドキュメント、メールなど、さまざまなファイルタイプに対応しています。
  • 何よりも、EaseUS Data Recovery Wizardは非常に使いやすい。このため、windowsシステムで失われたデータを復元する必要がある人には最適な選択肢となります。

ステップ1.場所の選択

ソフトを実行してください。最初画面で復元したいファイルの元場所(例えE:)を選択して「紛失データの検索」をクリックしてください。そうすると選んだディスクのスキャンを始めます。

ステップ2.スキャンとファイルの選択

スキャンが終わったら、画面の上部メニューで「フォルダ」あるいは「種類」をクリックしてください。そして、展開されたリストでファイルのフォルダまたは種類を選択してください。(復元したいファイルを素早く指定し、プレビューすることができます。)

ステップ3.復旧場所を選んでリカバリー

復元したいファイルを選択してから「復元」をクリックしてください。選択されたファイルの保存場所を指定して復元を終えます。(ファイルの上書きを避けるため、復元されたファイルを元場所と異なるディスクで保存しなければなりませんので注意してください。)

ステップ1.場所の選択

ソフトを実行してください。最初画面で復元したいファイルの元場所(例えE:)を選択して「紛失データの検索」をクリックしてください。そうすると選んだディスクのスキャンを始めます。

ステップ2.スキャンとファイルの選択

スキャンが終わったら、画面の上部メニューで「フォルダ」あるいは「種類」をクリックしてください。そして、展開されたリストでファイルのフォルダまたは種類を選択してください。(復元したいファイルを素早く指定し、プレビューすることができます。)

ステップ3.復旧場所を選んでリカバリー

復元したいファイルを選択してから「復元」をクリックしてください。選択されたファイルの保存場所を指定して復元を終えます。(ファイルの上書きを避けるため、復元されたファイルを元場所と異なるディスクで保存しなければなりませんので注意してください。)

まとめ

上記の解決策に従って、データを失うことなく、Vimの「can't open file for writing」エラーを解決してください。ご質問やお困りのことがありましたら、お気軽にご連絡ください。私たちがお手伝いします!

よくある質問

1.アクションが完了できませんのエラーに直面した場合、どうすればよいですか?

ファイルが開いているため、アクションが完了できないことを修正する:

  • ランファイル鍵屋
  • タスクマネージャーでプロセスを停止する
  • ごみ箱を空にして再起動する
  • Windows Explorerを再起動する
  • テンポラリファイルを削除する

2.Vimで書き込みのためにファイルを開くことができないのを修正するにはどうすればよいですか?

Can't open file for writingは、3つの方法で修正できます:

  • ファイルパーミッションのチェック
  • ファイルがロックされているかどうかを確認する
  • リードオンリーメモリのチェック

3.ターミナルのVimを保存せずに終了させる方法は?

変更を保存せずにVimを終了する場合:

  • Escキーを押して、コマンドモードに切り替えます。
  • (コロン)を押すと、ウィンドウの左下にプロンプトバーが表示されます。
  • コロンの後にq!を入力し、Enterキーを押すと、変更を保存せずに終了します。

4.Vimは何に使うの?

Vimは、効率的なテキスト編集を可能にするために作られた、高度に設定可能なテキストエディタです。ほとんどのUNIXシステムで配布されているviエディタの改良版です。