Use /bin/false
para fazer isso.
Eu tenho um conjunto de tarefas no trabalho para fazer para ver como eu posso trabalhar em torno de sistemas Linux (ou seja, eu era recomendado o openSUSE, pois estarei trabalhando com o SLES). A maioria dessas tarefas é bastante direta ou simples o suficiente para ser encontrada no Google.
No entanto, uma das atribuições diz:
User test03 should not be allowed to use interactive shell
Inicialmente usei a opção -s / sbin / nologin, mas aparentemente isso basicamente desativa toda a conta, e acho que é mais provável que seja uma maneira errada de fazer o que a tarefa pede. (Eu suponho que o ponto é ser capaz de canalizar scripts via ssh ou algo ao longo dessas linhas, mas não para fazer o login como usuário diretamente.)
Encontrei muitas informações sobre como descobrir se o shell é interativo ou como forçar um script a ser executado de forma interativa. No entanto, não encontrei nada específico para desativar o shell interativo.
Alguém poderia me apontar na direção certa?
Obrigado