在 Linux 中编辑 /etc/passwd 和 /etc/group 文件的正确方法

这个简短的指南解释了正确的编辑方法 /etc/passwd/etc/组 文件使用 贵宾活力 Linux 操作系统中的命令。

为什么我们不能用像这样的文本编辑器来编辑它们 或者 纳米 并完成它? 你可能想知道! 好吧,想象一下这个场景。 这 /etc/passwd 文件当前正在由 root 使用 Vi 或其他一些文本编辑器的用户。 同时,另一个用户尝试更改他的密码,而 root 用户正在编辑 /etc/passwd 文件。 因此,此文件中的密码更改可能不会更新,用户可能无法登录。这就是 vipwvigr 命令来救援。

vipw 和 vigr 命令用于安全地编辑文件 /etc/passwd/etc/group 在 Linux 系统中。 他们会在编辑时放置适当的锁 /etc/passwd/etc/group 文件以防止其他用户对其进行任何更改并避免文件损坏。 当您运行这些命令时 -s 标志,他们将编辑这些文件的影子版本,即 /etc/shadow/etc/gshadow, 分别。

使用 vipw 和 vigr 命令编辑 /etc/passwd 和 /etc/group 文件的正确方法

安全地编辑 /etc/password 文件,只需运行:

$ sudo vipw

安全地编辑 /etc/group 文件,运行:

$ sudo vigr

现在 vipw 和 vigr 命令将锁定 /etc/passwd/etc/group 文件并防止其他用户进行任何更改。

要验证这一点,请打开两个终端窗口。 跑 ”sudo vipw” 在一个窗口中并尝试在另一个窗口中更改用户的密码。

使用 vipw 和 vigr 命令编辑 /etc/passwd 和 /etc/group 文件

在退出 vipw 命令之前,密码不会更新。 因此其他用户可能不会无意或有意地在 /etc/passwd 以 root 身份编辑它们时的文件。 一旦 /etc/passwd 关闭,密码更新成功。

您也可以以普通用户身份登录并尝试在另一个终端窗口中更改用户密码。 密码不会更改,直到您 close vipw 命令。

您甚至无法在编辑时创建任何新用户 /etc/passwd 使用 vipw 命令的文件。

$ sudo useradd kumar
useradd: cannot lock /etc/passwd; try again later.

同样,要编辑这些文件的影子版本,即 /etc/shadow/etc/gshadow, 采用 -s 旗帜。

$ sudo vipw -s
$ sudo vigr -s

vipw 和 vipr 命令支持的其他选项是:

-g, --group
Edit group database.

-h, --help
Display help message and exit.

-p, --passwd
Edit passwd database.

-q, --quiet
Quiet mode.

-R, --root CHROOT_DIR
Apply changes in the CHROOT_DIR directory and use the configuration files from the
CHROOT_DIR directory.

-s, --shadow
Edit shadow or gshadow database

有关更多详细信息,请参阅手册页。

$ man vipw
$ man vigr

建议阅读:

  • 如何在 Linux 中更改 Sudo 密码超时

希望这可以帮助。