• ベストアンサー

Viで書き込もうとすると、保存できません。

 はじめまして。Linaxはじめたばかりで躓いています。 viで、 etc/dhcpd.conf や etc/samba/smb.confに書き込もうとすると、 画面の一番下の行に一瞬警告文のようなものが出て、すぐに消えます。 そのご、書き込みをして、上書き保存しようとすると、「読み込みのみで、 保存できない」と言うような感じの内容の文章が出てきます。 esc後、:qで、一度viを終了しようとしても、vi自体を終われません。  ログインはrootでしてるので、編集できると思っていたのですが・・・。 恐れ入りますが、分かる方よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.4

書きこみ権限がないんでしょう。 # ls -l etc/dhcpd.conf で見てみれば、 -r--r--r-- のようになっているのだと思います。ただ、ここで 「なんで書きこめないんだろ?直しておこう」なんて chmodで書きこみ権限を与えてしまうのは良くありません。 大抵理由あってそうなっている(セキュリティ上の問題など) のでしょうから、それはそのままにしておいたほうが良いでしょう。 viでそのようなファイルを編集する場合、最後に :w! で強制書きこみができます。その後、 :q で終了できます。 なお、:qで終われないのは「編集中だよ」という意味の メッセージが出るためで、 :q! とすれば、編集中であろうがそれをキャンセルして抜ける ことができます。

その他の回答 (3)

  • misoka
  • ベストアンサー率35% (56/160)
回答No.3

基本的な確認で申し訳ないのですが、 viコマンドでviを起動していますよね? /etc/samba/smb.confを編集する場合は、 # vi /etc/samba/smb.conf としてますよね? # view /etc/samba/smb.conf では編集できないですね。 終了する場合は、:q! で強制終了です。

  • kusukusu
  • ベストアンサー率38% (141/363)
回答No.2

root権限でやられているのであれば、 恐らく、書き込み権限が無いのだと思います。 #間違いなくrootですよね? ls -l で確認してください。

  • silele
  • ベストアンサー率25% (13/52)
回答No.1

とりあえず強制上書き終了したいのならば !wq コマンドで出来ると思うのですが。

関連するQ&A