Diferença entre usuários listados no diretório inicial e aqueles não

Diferença entre usuários listados no diretório inicial e aqueles não

Vejo alguns dos usuários que posso encontrar no /homediretório em centos, mas não o resto dos usuários.

Usuários listados no /homediretório, posso fazer login como esses usuários com o comando

su username

Para encontrar o restante dos usuários, tive que usar o comando:

cut -d: -f1 /etc/passwd

Para fazer login como um desses usuários, preciso usar o comando

sudo -u username

Qual é a diferença?

Responder1

Se você executar um comando semelhante ao seu:

$ cut -d: -f1,6,7 /etc/passwd
root:/root:/bin/bash
bin:/bin:/sbin/nologin
daemon:/sbin:/sbin/nologin
adm:/var/adm:/sbin/nologin
lp:/var/spool/lpd:/sbin/nologin
sync:/sbin:/bin/sync
shutdown:/sbin:/sbin/shutdown
halt:/sbin:/sbin/halt
mail:/var/spool/mail:/sbin/nologin
operator:/root:/sbin/nologin
games:/usr/games:/sbin/nologin
...
gareth:/home/gareth:/bin/bash
...

você notará que as únicas contas com um /homediretório são aquelas em que a) a segunda coluna acima tem um caminho para um diretório dentro /homee b) tem um shell na terceira coluna ( /bin/bash).

Todos os outros usuários não podem efetuar login porque possuem um shell de /sbin/nologin, que como o nome indica não permite login, ou possuem um shell que é um comando específico, como /sbin/halt.

Você pode executar comandos como outros usuários ou até mesmo executar um shell:

$ sudo -u daemon whoami
daemon
$ sudo -u daemon bash
$ whoami
daemon
$ echo $HOME
/

mas você não terá um diretório inicial dentro do /home.

Mais importante ainda, você não pode fazer login em um prompt de login ou com suou sshnessas contas porque o shell está /sbin/nologine suas senhas terão sido desativadas (procure por a !!ou a *na 2ª coluna de sudo less /etc/shadow).

Essas contas são todassistemacontas usadas por serviços como e-mail ou dhcp ou usadas para desligar o sistema.

Você realmente não deveria estar executando comandos, pois esses usuários usam o sudo.

informação relacionada