useradd失败:cannot open shadow password file

解决方法一:

问题描述:
  [root@twin0563 ~]# adduser zabbix -g zabbix
  adduser: cannot open shadow password file

如何解决:
  [root@twin0563 ~]# chattr -i /etc/gshadow
  [root@twin0563 ~]# chattr -i /etc/group
  [root@twin0563 ~]# chattr -ai /etc/shadow
  [root@twin0563 ~]# chattr -ai /etc/passwd



对解决方法一的详细介绍描述:


在linux下,我做为root登录,然后使用adduser填加用户.

系统提示:adduser: unable to open password file


[root@localhost root]# ls -l /etc/shadow
-r--------    1 root     root         1110 3月 11 10:13 /etc/shadow
我用chmod 600 /etc/shadow
提示:chmod: 正在更改 ‘/etc/shadow’ 的权限: 不允许的操作


我回去我的red hat上看了下.
/etc/shadow文件的权限也是只有root只读,但可以使用adduser命令.


adduser命令填加用户时,不对shadow文件就行写入操作吗??


建议用pwck检查一下passwd文件的合法性 
[root@localhost root]# pwck
pwck: cannot open file /etc/passwd 
shadow文件本来就是只读的。你检查一下passwd文件。 
是不是加了权限位
lsattr /etc/passwd
chattr -i !$ 


[root@localhost root]# lsattr /etc/passwd
----i-------- /etc/passwd


从你的lsattr /etc/passwd执行结果来看, 你的文件加了权限保护
用chattr -i /etc/passwd去掉它 
前几天按一个网上的系统加固的文章,做了一次加固,没想到是这个问题.


解决方法:
# cd /etc
# chattr +i passwd
# useradd foo
useradd: unable to open password file
# lsattr passwd
----i--- passwd
# chattr -i passwd
# lsattr passwd
- passwd
## chattr -i /etc/gshadow           //关键的一步


#useradd foo


 


 


         参考资料:


 


 


chattr可以防止关键文件被修改


  在linux下,有些配置文件是不允许任何人包括root修改的,为了防止被误删除或修改,


  可以设定该文件的"不可修改位(immutable)"。


  例如:


  chattr +i /etc/fstab


  如果需要修改文件则:


  chattr -i /etc/fstab


  以后再修改文件。


参考资料2:


chattr   [+-=]   [ASacdistu]   [文件或目录名称]
参数说明:
+-=:分别是"+"(增加)、"-"(减少)、"="(设定)属性
A:当设定了属性A,这个文件(或目录)的存取时间atime(access)将不可被修改,可避免诸如手提电脑容易产生磁盘I/O错误的情况;
S:这个功能有点类似sync,是将数据同步写入磁盘中,可以有效避免数据流失;
a:设定a后,这个文件将只能增加数据而不能删除,只有root才能设定这个属性;
c:设定这个属性后,将会自动将此文件压缩,在读取时自动解压缩。但是在存储的时候,会现进行压缩在存储(对于大文件很有用);
d:当dump(备份)程序执行时,设定d属性将可使该文件(或目录)具有dump功效;
i:这个参数可以让一个文件”不能被删除、更名、设定链接,也无法写入数据,对于系统安全有很大的助益
j:当使用ext3文件系统格式时,设定j属性将使文件在写入时先记录在日志中,但是当filesystem设定参数为data=journalled时,由于已经设定了日志,所以这个属性无效


s:当文件设定了s参数时,它会被完全移出这个硬盘空间
u:与s相反,当使用u配置文件时,数据内容其实还可以存在于磁盘中,可以用来取消删除


示例:
chattr   +i   /etc/shadow    //该文件无法更动了


chattr   -i   /etc/shadow   //解除该属性


       这个指令比较重要,尤其是在系统的安全方面。由于这些属性是隐藏性质,所以需要使用lsattr才能看到这些属性。
    
lsattr   [-aR]
参数说明:
-a   :将隐藏文件的属性也显示出来
-R   :连同子目录的数据一并显示出来


chattr   +i   test1
lsattr
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值