Ssh

在 CentOS 7 上恢復文件權限

  • May 10, 2016

我設法弄亂了整個伺服器上的伺服器權限

chown root:root -R /
chmod 777 -R /

如何解決?我無法使用該電腦上的終端以 root 身份登錄它顯示錯誤“無效密碼”並且 SSH 顯示錯誤“遠端伺服器重置連接”

注意: 我嘗試使用 USB 重新安裝 CentOS 7。但在選擇磁碟階段卡住了,因為它不會讓我選擇/不格式化它。這個問題解釋了我的命令做了什麼。為什麼“chmod -R 777 /”具有破壞性?

我設法解決了它,這是我遵循的步驟。

解決使用終端登錄的問題。

  1. 使用可啟動 USB/CD 啟動
  2. 選擇恢復並安裝磁碟
  3. 轉到已安裝的文件夾並chown root -R /執行chmod 755 -R /
  4. chmod 0700 -R /root/.ssh
  5. 正常重啟
  6. 忽略 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 登錄,請按照以下步驟操作

  1. systemctl restart sshd它會失敗
  2. systemctl status sshd它會向您顯示具有錯誤權限的文件
  3. chmod 0700 -R /root/.ssh使用OR修復文件權限chmod 0700 your_file_path
  4. 重複這個過程直到SSH服務啟動成功

使用這些步驟,我設法恢復了伺服器上的所有基本服務。

最後恢復使用 Plesk 創建的虛擬主機的預設權限。我按照plesk 網站上的說明使用此命令

# /usr/local/psa/bin/repair --restore-vhosts-permissions

從備份中恢復或重建伺服器。

引用自:https://serverfault.com/questions/775266