Linux 删除用户出现提示userdel: user ** is currently logged in

userdel -r -f XXXname 加参数-f暴力删除成功

原因:

utmp是一个文件,除了utmp程序你不能编辑这个文件,删掉他的话,当前登陆信息都会丢失。这个文件在每次机器reboot起来后都会重新创建。

/var/run/utmp

  该日志文件记录有关当前登录的每个用户的信息。因此这个文件会随着用户登录和注销系统而不断变化,它只保留当时联机的用户记录不会为用户保留永久的记录。系统中需要查询当前用户状态的程序,如 who、w、users、finger等就需要访问这个文件。该日志文件并不能包括所有精确的信息,因为某些突发错误会终止用户登录会话,而系统没有及时更新 utmp记录,因此该日志文件的记录不是百分之百值得信赖的。

 (/var/log/wtmp、/var/log/utmp、/var/log/lastlog)是日志子系统的关键文件,都记录了用户登录的情况。这些文件的所有记录都包含了时间戳。这些文件是按二进制保存的,故不能用less、cat之类的命令直接查看这些文件,而是需要使用相关命令通过这些文件而查看。其中,utmp和wtmp文件的数据结构是一样的,而lastlog文件则使用另外的数据结构,关于它们的具体的数据结构可以使用man命令查询。

  每次有一个用户登录时,login程序在文件lastlog中查看用户的UID。如果存在,则把用户上次登录、注销时间和主机名写到标准输出中,然后login程序在lastlog中记录新的登录时间,打开utmp文件并插入用户的utmp记录。该记录一直用到用户登录退出时删除。utmp文件被各种命令使用,包括who、w、users和finger。

  下一步,login程序打开文件wtmp附加用户的utmp记录。当用户登录退出时,具有更新时间戳的同一utmp记录附加到文件中。wtmp文件被程序last使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这条命令执行失败的原因是该用户正在被一个进程使用。这种情况下,我们需要先终止该进程才能删除用户。 要解决这个问题,我们可以通过以下步骤来终止该进程并删除用户: 1. 使用ps命令(如:ps -u user1)来查找正在使用该用户的进程。该命令将列出所有与该用户相关的进程及其进程ID(PID)。 2. 根据ps命令的输出,找到正在使用用户user1的进程的PID。 3. 使用kill命令(如:kill PID)来终止该进程。确保替换PID为实际的进程PID。 4. 再次尝试使用userdel命令(如:userdel user1)删除用户。此时应该成功删除用户。 请注意,在进行上述操作时,务必谨慎,确保要终止的进程是与该用户相关的,并且确保不会影响其他正在运行的进程和系统稳定性。 ### 回答2: 此错误信息是由于在删除用户时发现该用户当前被进程1使用而导致的。要解决这个问题,可以采取以下几个步骤: 第一,我们需要首先查看进程1是什么进程以及它在做什么。可以使用命令"ps -ef | grep 1"来查找与进程1相关的信息。根据进程的具体情况,可以选择终止该进程或等待该进程执行完毕。 第二,如果进程1是一个系统进程或其他重要进程,我们应该避免直接终止它。可以尝试重启系统,或者重启与进程1相关的服务,以清理占用的资源。命令“service restart <service_name>”可以用来重启相关服务。 第三,如果进程1是自己创建的进程,并且在运行期间发生卡顿或崩溃,可以尝试使用命令"kill -9 1"来强制终止进程1。这将立即终止进程,但可能会导致数据丢失或其他不良后果,因此请谨慎使用。 第四,如果以上步骤仍然无法解决问题,可以尝试重新安装用户所在的软件或服务来清理进程1的占用。确保在重新安装之前备份重要数据。 需要注意的是,删除用户时必须确保该用户没有正在运行的进程,否则会出现上述错误。因此,在删除用户之前,应该谨慎检查并终止相关进程,以避免出现问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值