Isso ocorre com o Ubuntu Server 20.04. Aqui está minha sessão de terminal:
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
Não consegui encontrar uma resposta em lugar nenhum. Como posso fazer chroot no usuário /home/user4
?
Editar:
Eu não criei um chroot. Eu só tenho um diretório com /bin
, /home
, etc.
O usuário é usado rsync
no computador de outra pessoa para enviar backups para o meu computador. Não quero que eles tenham acesso a tudo no meu computador.
Responder1
O sinalizador -R no chroot executa tudo dentro de um ambiente chroot, diz que o usuário não existe porque está procurando o arquivo passwd dentro de /home/user4/etc/ que provavelmente não existe.
O comando que você deseja provavelmente é sudo usermod -d /home/user4 user4
alterar o diretório inicial.
Para impor um ambiente em área restrita onde o usuário vê /home/user4 como seu próprio caminho raiz não é gerenciado pelo arquivo passwd ou pelo comando usermod.
Mais algumas informações aqui.