2021-05-12 14:32:11
CentOS下提示「無法開啟並寫入檔案」問題解決
2020-06-16 16:58:46
摘要
當前是root使用者,去編輯
/etc/ssh/sshd_config
卻提示沒有許可權修改。報錯如"/etc/ssh/sshd_config" E212: 無法開啟並寫入檔案
。
問題思考
既然提示沒有許可權,又是root使用者,看肯定是給該檔案設定了特殊的許可權。檢查特殊許可權設定:
- getfacl
- lsattr
getfacl 結果正常
root@pts/1 $ getfacl /etc/ssh/sshd_config
getfacl: Removing leading '/' from absolute path names
# file: etc/ssh/sshd_config
# owner: root
# group: root
user::rw-
group::---
other::---
lsattr提示錯誤:-bash: lsattr: command not found
沒有該命令,奇怪。當前系統是CentOS release 6.5 (Final)
,那就嘗試安裝。
查詢得知lsattr
和chattr
屬於安裝包e2fsprogs
,安裝之。
root@pts/1 $ yum install e2fsprogs
設定安裝進程
解決依賴關係
--> 執行事務檢查
---> Package e2fsprogs.x86_64 0:1.41.12-18.el6_5.1 will be 升級
---> Package e2fsprogs.x86_64 0:1.41.12-23.el6 will be an update
--> 處理依賴關係 libss = 1.41.12-23.el6,它被軟體包 e2fsprogs-1.41.12-23.el6.x86_64 需要
... ...
更新完畢:
e2fsprogs.x86_64 0:1.41.12-23.el6
作為依賴被升級:
e2fsprogs-libs.x86_64 0:1.41.12-23.el6 libcom_err.x86_64 0:1.41.12-23.el6 libcom_err-devel.x86_64 0:1.41.12-23.el6
libss.x86_64 0:1.41.12-23.el6
完畢!
lsattr 檢查
root@pts/1 $ lsattr /etc/ssh/sshd_config
----i--------e- /etc/ssh/sshd_config
這裡的i
表示immutable
,在檔案上啟用這個屬性時,我們不能更改、重新命名或者刪除這個檔案。
這裡的e
表示extent format
,它表明該檔案使用磁碟上的塊的對映擴充套件。屬於“正常”規則
chattr刪除不可修改
屬性
root@pts/1 $ chattr -i /etc/ssh/sshd_config
iZ25zjpz5pqZ [~] 2017-12-16 10:59:14
root@pts/1 $ lsattr /etc/ssh/sshd_config
-------------e- /etc/ssh/sshd_config
iZ25zjpz5pqZ [~] 2017-12-16 10:59:17
root@pts/1 $ vim /etc/ssh/sshd_config
iZ25zjpz5pqZ [~] 2017-12-16 10:59:26
root@pts/1 $
從上面的操作可以看到我們取消i
設定之後可以成功修改該檔案。
如果完成修改你可以讓其恢復不可修改屬性
,可以執行chattr +i /etc/ssh/sshd_config
本文永久更新連結地址:http://www.linuxidc.com/Linux/2017-12/149572.htm
相關文章