创建后无法修改文件

创建后无法修改文件

我使用创建了一个文件

sudo vim filename

但创建后无法修改。

我怎样才能修改这个文件?

答案1

通过执行此命令

sudo vim filename

您创建了新文件,其所有者是 root 用户。您可以通过执行 来确认这一点ls -al。从输出中您可以看到该文件的所有者和所属组都设置为 root。

如果您尝试使用普通用户编辑它,您将无法编辑,因为该文件不属于您的用户。由于权限问题,您再次可以读取文件但不能写入。您可以使用命令从命令行检查它们ls -al。它应该是这样的:

-rw-r--r-- 1 root   root       4 Apr  9 07:40 filename

第一部分-rw-r--r--表示只有所有者可以读写文件,同一组的用户和其他用户只能读取该文件。

下面是一张很好的描述权限含义的图表:

权限

如果您希望能够编辑该文件,则必须以 root 用户身份进行编辑 - 这几乎始终是最好的方法:

sudo vim filename

如果您希望以普通用户身份编辑它,您可以为其分配额外的权限,(但您不应该对主目录之外的系统文件执行此操作 -sudo而是使用 来编辑它们):

sudo chmod 777 filename

这样,每个用户都可以读取、写入和执行该文件。但这绝不是一个好主意。

仅授予所有其他用户写权限:

sudo chmod o+w filename

否则,如果您希望该文件只有您可以写入,您可以将所有者更改为您自己:

sudo chown yourusername:root filename

相关内容