linux系統無法添加用戶帳號的原因分析

生產環境配置:

操作系統: CentOS 6.6

1.產生的問題:

在使用useradd命令添加帳號(的)時候出現“seradd:cannotopen /etc/passwd”

[root@sky9896 ~]#useradd -d /home/wwwroot/ftupuser -g ftp-s/sbin/nologin ftpuser

useradd: cannotopen /etc/passwd

2.產生的原因:

a)添加“i”隱藏屬性後,就無法更動這個文件了。

[root@sky9896 ~]#chattr +i /etc/passwd

[root@sky9896 ~]#chattr +i /etc/shadow

[root@sky9896 ~]#chattr +i /etc/group

[root@sky9896 ~]#chattr +i /etc/gshadow

b)上次使用“ssh”遠程登錄“改東西”改到一半是斷電,重啓,或者是某些程序也需要存取特定檔案的屬性。

3. 解決問題:

root@sky9896 ~]#chattr -i /etc/passwd

[root@sky9896 ~]#chattr -i /etc/shadow

[root@sky9896 ~]#chattr -i /etc/group

[root@sky9896 ~]#chattr -i /etc/gshadow

 通過以上方式,還是沒有解決問題。通過“lsattr”命令進一步查看相關屬性,發現有一個”chattr  +a”的權限屬性沒有去掉,所以無權操作。

[root@sky9896 ~]#lsattr  /etc/passwd

-----a-------e-/etc/passwd

[root@sky9896 ~]#lsattr /etc/passwd

-----a-------e-/etc/passwd

[root@sky9896 ~]#lsattr /etc/shadow

-----a-------e-/etc/shadow

[root@sky9896 ~]#lsattr /etc/group

-----a-------e-/etc/group

[root@sky9896 ~]#lsattr /etc/gshadow 

-----a-------e-/etc/gshadow

[root@sky9896 ~]#chattr  -a /etc/passwd

[root@sky9896 ~]#chattr  -a /etc/shadow

[root@sky9896 ~]#chattr  -a /etc/group

[root@sky9896 ~]#chattr  -a /etc/gshadow

[root@sky9896 ~]#lsattr /etc/passwd

-------------e-/etc/passwd

[root@sky9896 ~]#lsattr /etc/shadow

-------------e-/etc/shadow

[root@sky9896 ~]#lsattr /etc/group

-------------e-/etc/group

[root@sky9896 ~]#lsattr /etc/gshadow 

-------------e-/etc/gshadow

[root@sky9896 ~]#useradd -p /home/wwwroot/ftpuser -g ftp-s/sbin/nologin ftpuser

[root@sky9896 ~]#useradd -p /home/wwwroot/ftpuser -g ftp-s/sbin/nologin ftpuser

useradd: user'ftpuser' already exists

    通過以上操作解決問題。

 

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章