Search Posts

标签: bug-fix

linux下ext3文件系统突然变成readonly只读的问题分析和解决方式

ext3是linux下较老的文件系统格式,但目前仍有少部分用户在使用ext3作为linux文件系统格式。

linux下ext3文件系统突然变成readonly 问题线索

#tail  -100  /var/log/messages

 Sep  1 04:02:21 www syslogd 1.4.1: restart.
 Sep  1 11:22:16 www avahi-daemon[2691]: Invalid query packet.
 Sep  1 11:22:57 www last message repeated 14 times
 Sep  1 11:22:57 www avahi-daemon[2691]: Invalid query packet.
 Sep  1 13:45:29 www kernel: ext3_abort called.
 Sep  1 13:45:29 www kernel: EXT3-fs error (device hdb1): ext3_put_super: Couldn't clean up the journal
 Sep  1 13:46:31 www kernel: kjournald starting.  Commit interval 5 seconds
 Sep  1 13:46:31 www kernel: EXT3 FS on hdb1, internal journal
 Sep  1 13:46:31 www kernel: EXT3-fs: mounted filesystem with ordered data mode.
 Sep  1 13:48:25 www kernel: printk: 5 messages suppressed.
查看余下内容

/etc/pam.d/system-auth-ac 写法错误导致root用户无法执行passwd命令的问题解决记录

问题产生过程

某用户 希望设置linux 在任何用户输入密码错误次数超过6次的情况下能触发 用户账号锁定40秒的防护功能(锁后root用户无法登录)。等40秒后,登录界面输入 root用户的正确密码,看能否登陆。但用户自行修改系统配置文件后,系统出现故障:root用户无法执行passwd命令。passwd命令执行后出现如下图的报错:

故障线索分析

注意 其中的一个关键错误:

passwd: module is unknown

illegal module type : root_unlock_time

看起来跟识别模块异常有关。以 module is unkonw 和 illegal module type : root_unlock_time 作为关键词,搜索查到跟 /etc/pam.d/system-auth-ac 相关。



根据/etc/pam.d/system-auth-ac 这个信息,打开文件查看内容。

初步解决验证尝试

给文件的 /etc/pam.d/system-auth-ac 的passwd相关的2行加了注释。
注释后这个文件的第3-4行内容是:

#auth required pam_tally2.so  onerr=fail  deny=6  unlock_time=40 even_deny_root   
#root_unlock_time=30 

注释后就不存在passwd执行后提示passwd: module is unknown的问题了。

但这些语句在 /etc/pam.d/system-auth-ac 文件中本来就有的,为什么突然会报错呢?

经过跟 纯净安装的 /etc/pam.d/system-auth-ac 文件原始内容比对,发现了原因: root_unlock_time=30 并不是单独成行的,用户不小心手动将 它换行,就不符合该文件的语法要求。这个system-auth-ac 文件因为语法错误就无法正常被解析,是本文错误的根源。

最终解决过程记录

请在 linux系统的单用户模式下,使用nano编辑器修正 system-auth-ac 文件内容:

nano   /etc/pam.d/system-auth-ac

以修改 /etc/pam.d/system-auth-ac 文件。
把原来的第3-4行改成:
auth required pam_tally2.so onerr=fail deny=6 unlock_time=40 even_deny_root root_unlock_time=30
(修改后就只剩一行,也就是把原来3-4行合并到一起) 注意even_deny_root root_unlock_time=30这是两个参数,它们之间至少要有用一个空格。

这样就启用了 rhel 5系统的 PAM方式防密码破解防护功能

如何验证是否生效

reboot命令,正常重启系统,如果能进入图形桌面,登录。就说明修改生效。

验证/etc/pam.d/system-auth-ac 修改后是否达到了账号密码错误超过6次后自动锁定的防护效果

root用户,桌面登录之前,输入密码错误次数超过6次,则触发 锁用户的防护(锁后root用户无法登录)。等40秒后,登录界面输入 root用户的正确密码,看能否登陆。

参考文档

根据 man pam_tally2帮助说明文档 ,上述

auth required pam_tally2.so
查看余下内容
加好友请备注:chinaoss
您可以在微信公众号联系我们
我们将24小时内回复。
取消