摘要
最近在工作中發(fā)行限了一個(gè)問(wèn)題,當(dāng)前是root用戶,去編輯/etc/ssh/sshd_config 卻提示沒(méi)有權(quán)限修改。報(bào)錯(cuò)如"/etc/ssh/sshd_config" E212: 無(wú)法打開(kāi)并寫入文件。
問(wèn)題思考
既然提示沒(méi)有權(quán)限,又是root用戶,看肯定是給該文件設(shè)置了特殊的權(quán)限。檢查特殊權(quán)限設(shè)置:
- getfacl
- lsattr
getfacl 結(jié)果正常
1
2
3
4
5
6
7
8
|
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提示錯(cuò)誤:-bash: lsattr: command not found 沒(méi)有該命令,奇怪。當(dāng)前系統(tǒng)是CentOS release 6.5 (Final),那就嘗試安裝。
查找得知lsattr和chattr屬于安裝包e2fsprogs,安裝之。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
root@pts /1 $ yum install e2fsprogs 設(shè)置安裝進(jìn)程 解決依賴關(guān)系 --> 執(zhí)行事務(wù)檢查 ---> Package e2fsprogs.x86_64 0:1.41.12-18.el6_5.1 will be 升級(jí) ---> Package e2fsprogs.x86_64 0:1.41.12-23.el6 will be an update --> 處理依賴關(guān)系 libss = 1.41.12-23.el6,它被軟件包 e2fsprogs-1.41.12-23.el6.x86_64 需要 ... ... 更新完畢: e2fsprogs.x86_64 0:1.41.12-23.el6 作為依賴被升級(jí): 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 檢查
1
2
|
root@pts /1 $ lsattr /etc/ssh/sshd_config ----i--------e- /etc/ssh/sshd_config |
這里的i 表示immutable,在文件上啟用這個(gè)屬性時(shí),我們不能更改、重命名或者刪除這個(gè)文件。
這里的e 表示extent format,它表明該文件使用磁盤上的塊的映射擴(kuò)展。屬于“正常”規(guī)則
chattr刪除不可修改屬性
1
2
3
4
5
6
7
8
|
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 $ |
從上面的操作可以看到我們?nèi)∠鹖設(shè)置之后可以成功修改該文件。
如果完成修改你可以讓其恢復(fù)不可修改屬性,可以執(zhí)行chattr +i /etc/ssh/sshd_config
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)服務(wù)器之家的支持。
原文鏈接:http://www.jianshu.com/p/eb76d618ccc5