📜  如何编辑 etc hosts linux error readonly e45 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:09:14.284000             🧑  作者: Mango

如何编辑 /etc/hosts Linux 出现 error: readonly file system (E45) - Shell/Bash

当您想要在Linux的/etc/hosts文件中添加或修改内容时,可能会遇到 error: readonly file system (E45) 错误。此错误表示您的文件系统处于只读模式,不能进行写操作。以下是解决此问题的几种方法。

方法一:使用root用户

一种简单的解决方法是使用root权限登录,这将使您以管理员身份执行命令并解锁只读权限。

sudo su

输入密码后,您将到达以root身份的提示符,这时您可以编辑/etc/hosts文件。

vi /etc/hosts

然后按i进入插入模式,进行编辑。编辑完成后,按ESC退出插入模式,再输入:wq保存并退出。

方法二:使用mount命令

另一种常见的方法是使用mount命令将文件系统挂载为可写。首先,查看文件系统的挂载点。

df -h

查找您要编辑的文件系统,例如/dev/sda1,并记下其挂载点。

/dev/sda1  /mnt/myfs  ext4  rw,errors=remount-ro  0  0

在此示例中,文件系统已经被挂载在/mnt/myfs。现在,使用以下命令将文件系统以可写方式挂载。

mount -o remount,rw /mnt/myfs

现在,您可以编辑文件并保存更改。

vi /etc/hosts

完成后,可以将文件系统重新挂载为只读。

mount -o remount,ro /mnt/myfs
方法三:使用chattr命令

如果以上两种方法不起作用,则可以使用chattr命令将文件系统配置为可写。以下是示例命令。

chattr -i /etc/hosts

使用该命令可以将文件系统的immutable属性设置为off。现在,您可以编辑文件并保存更改。

vi /etc/hosts

完成后,重新将该属性设置为on

chattr +i /etc/hosts

这些方法应该可以帮助您编辑/etc/hosts文件并解决readonly file system (E45)错误。