用 vim
打开没有写权限的文件而忘记用 sudo
时,文件变成 read-only
这时候用 :w!
, SHIFT+ZZ
,或者 qw!
都无法保存
:w !sudo tee %
:w : Write a file.可以将文件写入,文件仍然是只读模式,通过 :q!
退出
- !sudo : Call shell sudo command.
- tee : The output of the vi/vim write command is redirected using tee.
- % : Triggers the use of the current filename.
Simply put, the ‘tee’ command is run as sudo and follows the vi/vim command on the current filename given.
问题:E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/main/p/python2.7/libpython2.7-minimal_2.7.15-4ubuntu4~18.04.1_amd64.deb 404 Not Found [IP: 91.189.88.31 80]
(1)编辑源文件,vim /etc/apt/sources.list
(2)使用网易apt-get源,将原来的源地址,替换为如下,由于服务器的版本是17.04,因此源地址的代号部分都是zesty,如果是其他版本,可以替换为对应的版本,具体版本代号可以网上查找。
deb http://mirrors.163.com/ubuntu/ zesty main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ zesty-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ zesty-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ zesty-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ zesty-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ zesty main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ zesty-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ zesty-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ zesty-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ zesty-backports main restricted universe multiverse
(3)执行apt-get update,apt-get upgrade,会发现会报错,apt-get: Could not resolve 'mirrors.163.com’的错误,这种原因其实是因为还缺少一个步骤,就是将添加的网址和IP进行映射,修改/etc/目录下的host文件。
(4)通过ip.chinaz.com进行查询网址“mirrors.163.com”,对应的ip地址如下所示,然后将其添加到hosts文件里。
123.58.190.228 mirrors.163.com 123.58.190.236 mirrors.163.com
(5)再执行apt-get update,apt-get upgrade,就配置好了