使用 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

相關內容