将 chroot 应用于组时出错(groupmod:组 'www' 不存在)
Error applying chroot to group (groupmod: group 'www' does not exist)
所以我试图将 www
组中的所有用户 chroot 到目录 /var/www
。但每次我尝试这样做时,它都会返回说该组不存在。 (即使该组确实存在)
[root@server var]# cat /etc/fedora-release
Fedora release 26 (Twenty Six)
[root@server var]# groupadd -r www
[root@server var]# groupmod -R /var/www www
groupmod: group 'www' does not exist
[root@server var]# ls -la
drwxrwxrwx. 5 root www 46 Jul 12 06:44 www
如您所见,错误消息没有多大用处。我环顾了 Whosebug,但还没有找到这个特定问题的答案。
任何人都可以阐明我做错了什么吗?
那不是 groupmod -R
所做的。意思就是groupmod
程序会chroot
进入目录,然后做所有的事情。它适用于将一个系统安装在另一个系统中的情况,例如,如果您从实时 USB 驱动器启动以对损坏的系统进行更改。
一旦 groupmod
有 运行 chroot
,它会在 /var/www/etc/group
文件中查找 www
对应的组 ID,当然失败,因为如果您的系统完全正确设置,您就没有 var/www/etc/group
文件。
我不知道如何确保特定用户 运行 在 chroot
中执行所有进程,我认为这不是实现目标的正确方法。如果一个程序被 chroot
编辑成 /var/www
,它就无法访问它可能期望的任何实用程序,例如 Web 服务器可执行文件。相反,我会查看您的 Web 服务器的文档,看看它是否直接支持这一点,或者看看您是否可以使用 systemd 获得自定义挂载命名空间。
所以我试图将 www
组中的所有用户 chroot 到目录 /var/www
。但每次我尝试这样做时,它都会返回说该组不存在。 (即使该组确实存在)
[root@server var]# cat /etc/fedora-release
Fedora release 26 (Twenty Six)
[root@server var]# groupadd -r www
[root@server var]# groupmod -R /var/www www
groupmod: group 'www' does not exist
[root@server var]# ls -la
drwxrwxrwx. 5 root www 46 Jul 12 06:44 www
如您所见,错误消息没有多大用处。我环顾了 Whosebug,但还没有找到这个特定问题的答案。
任何人都可以阐明我做错了什么吗?
那不是 groupmod -R
所做的。意思就是groupmod
程序会chroot
进入目录,然后做所有的事情。它适用于将一个系统安装在另一个系统中的情况,例如,如果您从实时 USB 驱动器启动以对损坏的系统进行更改。
一旦 groupmod
有 运行 chroot
,它会在 /var/www/etc/group
文件中查找 www
对应的组 ID,当然失败,因为如果您的系统完全正确设置,您就没有 var/www/etc/group
文件。
我不知道如何确保特定用户 运行 在 chroot
中执行所有进程,我认为这不是实现目标的正确方法。如果一个程序被 chroot
编辑成 /var/www
,它就无法访问它可能期望的任何实用程序,例如 Web 服务器可执行文件。相反,我会查看您的 Web 服务器的文档,看看它是否直接支持这一点,或者看看您是否可以使用 systemd 获得自定义挂载命名空间。