inode满导致passwd命令出错处理

<strong>故障现象</strong>:
  1、修改密码时报错 passwd: Authentication token manipulation error
  2、添加用户报错:unable to lock password file&nbsp;



<strong>分析问题</strong>:



1、检查相关配置文件



&nbsp;/etc/passwd&nbsp;



&nbsp;/etc/shadow



检查上面两相配置文件并与正常主机进行比对,未发现异常。



2、查看磁盘使用率



根据报错信息,google查看提示有可能是磁盘空间满引起。不过通过df 查看时未发现异常

df-disk.png

3、strace追踪分析



使用命令strace -f passwd 追踪分析原因,看到关键报错信息:“No space left on device”,即然df查看硬盘空间够用,很可能就是inode满了。查看的确是根分区inode满了,如下:

strace-dfi.png

<strong>查找原因</strong>:



/var/spool/clientmqueue 生成的文件占用完inode,此目录下文件的产生原因主要是crontab里面的命令没有添加“>/dev/null 2>&1”标准输出、错误输出信息都输入到/dev/null。

clientmqueue.png

<strong>解决方法</strong>:



1、删除clientmqueue文件
ls /var/spool/clientmqueue |xargs rm -rf
2、将crontab任务命令后面添加“>/dev/null 2>&1”

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注