我正在尝试编辑资料。使用vi编辑器列出,但在保存文件时得到以下错误:
/etc/apt/sources.list" E212: Can't open file for writing
我正在尝试编辑资料。使用vi编辑器列出,但在保存文件时得到以下错误:
/etc/apt/sources.list" E212: Can't open file for writing
当前回答
Vim有一个内置的帮助系统。运行:h E212在Vim中打印如下:
由于某种原因,无法创建或覆盖正在写入的文件。 原因可能是您没有在该目录中写入的权限 或者文件名无效。
您可能希望以超级用户身份使用sudo vim file编辑该文件。或者如果你不想离开你现有的vim会话(现在有适当的sudo权限),你可以运行:
:w !sudo tee % > /dev/null
这将保存文件。
其他回答
因为dir不存在。
可以使用:!Mkdir -p /etc/apt/创建目录。
然后:wq
修改用户为root
sodu su -
浏览到etc
vi sudoers
在用户特权部分中查找根用户。你会得到它
root ALL=(ALL:ALL) ALL
为您的用户名做相同的输入。如果你的用户名是“myuser”,那么添加
myuser ALL=(ALL:ALL) ALL
它看起来就像
root ALL=(ALL:ALL) ALL
myuser ALL=(ALL:ALL) ALL
保存它。将root用户更改为您的用户。现在就用同样的方法来解决你的sudoers问题
尝试以根用户连接,然后编辑文件。这对我很有用
:wq或:wq!vi编辑器不退出意味着您对pwd没有权限,请根据您所创建的权限检查权限。 例子 您具有root权限
==> sudo vi /etc/ansible/hosts .使用实例 :wq现在它的工作
Vim有一个内置的帮助系统。运行:h E212在Vim中打印如下:
由于某种原因,无法创建或覆盖正在写入的文件。 原因可能是您没有在该目录中写入的权限 或者文件名无效。
您可能希望以超级用户身份使用sudo vim file编辑该文件。或者如果你不想离开你现有的vim会话(现在有适当的sudo权限),你可以运行:
:w !sudo tee % > /dev/null
这将保存文件。