Puppet - removendo usuário que está logado?

Puppet - removendo usuário que está logado?

Acabei de começar a aprender fantoches e me deparei com um problema que queria saber se alguém sabia como consertar. Estou tentando remover um usuário e recebo uma mensagem de erro informando que ele está logado e não pode ser removido.

Agora, neste caso, eu sei em qual servidor eles estão logados, então posso simplesmente desconectar o usuário e prosseguir a partir daí. Minha pergunta é, no entanto, o que você faz quando não sabe em quais servidores eles estão logados? Tendo em mente que podem ser muitos servidores.

Existe uma opção de remoção forçada ou uma maneira de desconectar usuários no fantoche?

Código abaixo:

user {'art':

ensure => absent,

}

Erros:

Erro: Não foi possível excluir a arte do usuário: A execução de '/usr/sbin/userdel art' retornou 8: userdel: a arte do usuário está atualmente logada

Erro: /Stage[main]/Main/Node[demo]/User[art]/ensure: mudança de presente para ausente falhou: Não foi possível excluir a arte do usuário: Execução de '/usr/sbin/userdel art' retornou 8: userdel : a arte do usuário está logada no momento

Responder1

Você poderia criar um recurso exec que mata todos os processos de propriedade do usuário.

Seria algo como:

   exec {'kill-art':
     command => 'pkill -u art',
     onlyif  => 'pgrep -u art',
   }

   user {'art':
     ensure  => absent,
     require => Exec['kill-art'],
   }

informação relacionada