使用 usermod 设置 chroot 时,存在的用户不存在

使用 usermod 设置 chroot 时,存在的用户不存在

这是 Ubuntu Server 20.04。这是我的终端会话:

joek@comp1:/home/user4$ sudo usermod -R /home/user4 user4
usermod: user 'user4' does not exist
joek@comp1:/home/user4$ sudo useradd user4
useradd: user 'user4' already exists
joek@comp1:/home/user4$ grep user4 /etc/passwd
user4:1010:1011::/home/user4:/bin/sh
joek@comp1:/home/user4$ grep user4 etc/passwd
user4:1010:1011::/home/user4:/bin/sh

我找不到任何答案。我怎样才能将用户 chroot 为/home/user4

编辑:

我还没有创建 chroot。我只有一个包含/bin/home等的目录。

其他人的计算机上使用该用户rsync将备份发送到我的计算机。我不希望他们能够访问我计算机上的所有内容。

答案1

chroot 上的 -R 标志在 chroot 环境中运行所有内容,它说用户不存在,因为它正在寻找 /home/user4/etc/ 中的 passwd 文件,而该文件可能不存在。

您想要的命令可能是sudo usermod -d /home/user4 user4更改主目录。

强制执行沙盒环境,其中用户将看到 /home/user4 作为他们自己的根路径,而不受 passwd 文件或 usermod 命令管理。

这里还有更多信息。

https://help.ubuntu.com/community/BasicChroot

相关内容