如何用vi编辑只读文件
how to edit readonly file with vi
我正在关注 this tutorial 在 EC2 实例上部署节点项目。
我必须安装 npm,这里是我必须做的:
sudo su
vi /etc/sudoers
按 "i"
编辑
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
为了保存您的更改,在 VI 编辑器中按 ESC 键并键入“wq”并按 ENTER。
但我不能,因为当我按 "i" 时出现错误
W10: Warning: Changing a readonly file
我该如何解决这个问题?
所以我认为这是 vi 的错误,因为我随后尝试使用 nano 并且我有权在文件中写入。
因为,节点我从网站上尝试但它不工作,我认为问题来自亚马逊 linux。我尝试使用 ubuntu 服务器 14.04 的另一个实例,我没有问题
第二个问题是使用 vi 时,当您是 root 时,您必须使用 :w!
来实际覆盖只读文件。
第一个问题是写教程的人给出了错误的建议:/etc/sudoers
不应该直接编辑。
您应该使用 visudo
来编辑该文件,以免搬起石头砸自己的脚。方法正确,应该没有问题。
我正在关注 this tutorial 在 EC2 实例上部署节点项目。 我必须安装 npm,这里是我必须做的:
sudo su
vi /etc/sudoers
按 "i"
编辑Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
为了保存您的更改,在 VI 编辑器中按 ESC 键并键入“wq”并按 ENTER。 但我不能,因为当我按 "i" 时出现错误
W10: Warning: Changing a readonly file
我该如何解决这个问题?
所以我认为这是 vi 的错误,因为我随后尝试使用 nano 并且我有权在文件中写入。
因为,节点我从网站上尝试但它不工作,我认为问题来自亚马逊 linux。我尝试使用 ubuntu 服务器 14.04 的另一个实例,我没有问题
第二个问题是使用 vi 时,当您是 root 时,您必须使用 :w!
来实际覆盖只读文件。
第一个问题是写教程的人给出了错误的建议:/etc/sudoers
不应该直接编辑。
您应该使用 visudo
来编辑该文件,以免搬起石头砸自己的脚。方法正确,应该没有问题。