linux – Puppet – 删除登录的用户?

我刚开始学习木偶并遇到了一个问题,我想知道是否有人知道如何修复.我试图删除用户我收到一条错误消息,说明他们已登录,因此无法删除.

现在在这种情况下,我知道他们登录了什么服务器,所以我可以简单地将用户登出并从那里继续.但是,当你不知道他们登录的是什么服务器时,你会怎么做?请记住,它可能是许多服务器.

是否有强制删除选项或在木偶中记录用户方法

代码如下:

user {'art':

ensure => absent,}

错误

Error: Could not delete user art: Execution of ‘/usr/sbin/userdel art’
returned 8: userdel: user art is currently logged in

Error: /Stage[main]/Main/Node[demo]/User[art]/ensure: change from
present to absent Failed: Could not delete user art: Execution of
‘/usr/sbin/userdel art’ returned 8: userdel: user art is currently
logged in

解决方法

根据 this post,您可以使用pkill -STOP -u USERNAME断开用户连接.
你可以在puppet中创建一个 resource definition这样的东西:
define kill_and_delete {
    exec { "killing $title":
        command => "pkill -STOP -u $title",onlyif  => "grep '^$title' /etc/passwd",before => User[$title],}
    user { $title: ensure => absent}
}

之后,你就像这样使用它:
kill_and_delete {‘art’:}
注意:我没有测试过这个.
resource ordering – before and requiretype reference – exec.

相关文章

insmod和modprobe加-f参数导致Invalid module format错误 这...
将ArchLinux安装到U盘 几个月前入门Arch的时候上网搜了不少安...
1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...