Ssh
在 CentOS 7 上恢復文件權限
我設法弄亂了整個伺服器上的伺服器權限
chown root:root -R / chmod 777 -R /
如何解決?我無法使用該電腦上的終端以 root 身份登錄它顯示錯誤“無效密碼”並且 SSH 顯示錯誤“遠端伺服器重置連接”
注意: 我嘗試使用 USB 重新安裝 CentOS 7。但在選擇磁碟階段卡住了,因為它不會讓我選擇/不格式化它。這個問題解釋了我的命令做了什麼。為什麼“chmod -R 777 /”具有破壞性?
我設法解決了它,這是我遵循的步驟。
解決使用終端登錄的問題。
- 使用可啟動 USB/CD 啟動
- 選擇恢復並安裝磁碟
- 轉到已安裝的文件夾並
chown root -R /
執行chmod 755 -R /
chmod 0700 -R /root/.ssh
- 正常重啟
- 忽略 SElinux 上下文警告並讓它重新儲存上下文
在此之後,您將能夠使用 root 登錄到機器
要修復文件權限和所有者資訊,請使用這些命令
rpm --setperms {packagename}
和rpm --setugids {packagename}
要修復你所有的系統,只需循環朗姆它們更多細節在這裡
for p in $(rpm -qa); do rpm --setperms $p; done for p in $(rpm -qa); do rpm --setugids $p; done
它將修復大多數軟體包的權限。
如果您無法使用 SSH 登錄,請按照以下步驟操作
systemctl restart sshd
它會失敗systemctl status sshd
它會向您顯示具有錯誤權限的文件chmod 0700 -R /root/.ssh
使用OR修復文件權限chmod 0700 your_file_path
- 重複這個過程直到SSH服務啟動成功
使用這些步驟,我設法恢復了伺服器上的所有基本服務。
最後恢復使用 Plesk 創建的虛擬主機的預設權限。我按照plesk 網站上的說明使用此命令
# /usr/local/psa/bin/repair --restore-vhosts-permissions
從備份中恢復或重建伺服器。