How do I save files edited with vim?

I can't save changes after editing

sudo vi /etc/network/interfaces

Text before editing:

auto lo
iface lo inet ...

Edited to:

auto eth0
iface eth0 inet dhcp

What key combination or sequence must I press to save this?


Solution 1:

You're probably in editing/insert mode. You need to type the following sequence :

  1. Esc, to quit edit mode and fallback to command mode ;
  2. :+w+q, start with a : (colon) then press w and finally q to write and quit (or just :w to write without quitting)
  3. then press Enter to valid.

Solution 2:

I usually press ESC and then hold Shift and press z twice. Just like you would like to type two capital Z letters in word editor :) That saves your document and closes your editor.

Solution 3:

Check whether you have administrative (root) privileges to edit the file. use this command

whoami

If the result is not "root", then you are not supposed to edit the file.

To login as root user, use the below command

sudo su

or

su

Edit the file,

vi /etc/network/interfeces

After the changes, save the file using

  1. Press Esc to change the mode
  2. :x to save and quit the file

Thats all