これは 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
?
編集:
/bin
chroot を作成していません。 、、/home
などのディレクトリのみがあります。
ユーザーは、他の誰かのコンピュータで、私のコンピュータにバックアップを送信するために使用されますrsync
。そのユーザーが私のコンピュータ上のすべてのものにアクセスできるようにしたくありません。
答え1
chroot の -R フラグは、すべてを chroot 環境内で実行します。/home/user4/etc/ 内の passwd ファイルを検索しますが、おそらくそのファイルは存在しないため、ユーザーが存在しないと表示されます。
必要なコマンドはおそらくsudo usermod -d /home/user4 user4
ホームディレクトリを変更することです。
ユーザーが自分のルート パスとして /home/user4 を参照するサンドボックス環境を強制するには、passwd ファイルまたは usermod コマンドによって管理されません。
さらに詳しい情報はこちらをご覧ください。