服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Centos - Centos8中恢复根目录为默认权限

Centos8中恢复根目录为默认权限

2022-01-10 23:36Linux就该这么学逄增宝 Centos

本文中介绍如何从意外运行# chmod -R 777 /命令,在Centos8操作系统上恢复默认权限。本文中我们将故意在一个测试服务器上运行chmod 777命令,并尝试通过运行两个命令进行恢复。

Centos8中恢复根目录为默认权限

本文中介绍如何从意外运行# chmod -R 777 /命令,在Centos8操作系统上恢复默认权限。

本文中我们将故意在一个测试服务器上运行chmod 777命令,并尝试通过运行两个命令进行恢复。就是如下两条命令:

  1. # rpm --setugids -a
  2. # rpm --setperms -a

当再测试机上面执行下面命令之后,所有文件权限都会变成777。

  1. [root@localhost ~]# chmod -R 777 /

列出根目录下面的内容:

  1. [root@localhost ~]# ls -al /

Centos8中恢复根目录为默认权限

下面是SSH相关的重要文件,需要有正确的权限和所有权。但是,由于运行chmod 777,以下所有文件都具有错误的权限。

  1. [root@localhost ~]# ll /etc/ssh/
  2. total 588
  3. -rwxrwxrwx. 1 root root 563386 May 11 2019 moduli
  4. -rwxrwxrwx. 1 root root 1727 May 11 2019 ssh_config
  5. drwxrwxrwx. 2 root root 28 Dec 29 2019 ssh_config.d
  6. -rwxrwxrwx. 1 root root 4444 May 11 2019 sshd_config
  7. -rwxrwxrwx. 1 root ssh_keys 480 Dec 29 2019 ssh_host_ecdsa_key
  8. -rwxrwxrwx. 1 root root 162 Dec 29 2019 ssh_host_ecdsa_key.pub
  9. -rwxrwxrwx. 1 root ssh_keys 387 Dec 29 2019 ssh_host_ed25519_key
  10. -rwxrwxrwx. 1 root root 82 Dec 29 2019 ssh_host_ed25519_key.pub
  11. -rwxrwxrwx. 1 root ssh_keys 1799 Dec 29 2019 ssh_host_rsa_key
  12. -rwxrwxrwx. 1 root root 382 Dec 29 2019 ssh_host_rsa_key.pub

Centos8中恢复根目录为默认权限

带有chmod 777权限的SSH

下面尝试通过SSH远程登录服务器。由于主机密钥文件权限都变成了777了,所以登录会被拒绝。

下面再终端中ssh登录本机出现下面问题:

Centos8中恢复根目录为默认权限

下面使用Xshell登录服务器,同样不能登录成功:

  1. [C:\~]$ ssh root@192.168.43.131
  2. Connecting to 192.168.43.131:22...
  3. Connection established.
  4. To escape to local shell, press 'Ctrl+Alt+]'.
  5. Connection closing...Socket close.
  6. Connection closed by foreign host.
  7. Disconnected from remote host(192.168.43.131:22) at 10:28:06.
  8. Type `help' to learn how to use Xshell prompt.

Centos8中恢复根目录为默认权限

恢复权限

Centos8中恢复根目录为默认权限

需要恢复权限,我们需要加载Centos8的系统镜像,开机启动光盘镜像:

在VMware Workstation中,加载光盘,并开机器用。开机按F2,进入BIOS,切换到Boot选项卡。将CD-ROM Drive移动到Hard Drive上面。按F10保存并重启。

Centos8中恢复根目录为默认权限

选择Troubleshooting,然后选择进入救援模式。

Centos8中恢复根目录为默认权限

Centos8中恢复根目录为默认权限

当进入下面界面时,选择1,直接进入shell界面。

Centos8中恢复根目录为默认权限

使用chroot命令将/mnt/sysroot切换为根目录:

  1. sh-4.4# chroot /mnt/sysroot

Centos8中恢复根目录为默认权限

使用以下两个命令运行,以恢复所有文件,目录和配置的权限。运行此命令时,它将引发权限被拒绝错误,并且无法访问错误。只是忽略错误。

  1. # rpm --setugids -a
  2. # rpm --setperms -a

Centos8中恢复根目录为默认权限

参数说明:

--setugids - 设置RPM包文件的用户/组所有权。

--setperms - 设置RPM包文件的权限。

-a - 适用于所有已安装的RPM软件包。

完成操作之后,退出,并重启:

  1. # exit
  2. # reboot

查看权限、SSH连接服务器测试

Centos8中恢复根目录为默认权限

下面登录系统之后,看一下根目录的权限是否恢复正常:

  1. # ls -l /

Centos8中恢复根目录为默认权限

运行ssh登录,发现不能登录。使用netstat -tlunp发现ssh端口没有监听中,使用systemctl status sshd发现服务没有启动,启动sshd服务时发现不能启动,下面查找原因:

发现密钥文件的权限还是777,没有还原:

Centos8中恢复根目录为默认权限

下面设置密钥文件权限:

  1. # chmod 644 /etc/ssh/ssh_config
  2. # chmod 600 /etc/ssh/sshd_config
  3. # chmod 640 /etc/ssh/ssh_host_rsa_key /etc/ssh/ssh_host_ecdsa_key /etc/ssh/ssh_host_ed25519_key
  4. # chmod 644 /etc/ssh/ssh_host_rsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ed25519_key.pub

Centos8中恢复根目录为默认权限

下面再次启动sshd试一下:

  1. # systemctl enable sshd --now
  2. # netstat -tlunp

Centos8中恢复根目录为默认权限

可以看到启动成功了。ssh远程登录试一下,看到登录成功了。

Centos8中恢复根目录为默认权限

总 结

就这样,我们已经成功还原了已安装的RPM软件包的权限并恢复了服务器。切勿在任何文件系统或配置上使用chmod 777。

Centos8中恢复根目录为默认权限

本文转载自微信公众号「Linux就该这么学」,可以通过以下二维码关注。转载本文请联系Linux就该这么学公众号。

Centos8中恢复根目录为默认权限

原文链接:https://mp.weixin.qq.com/s/N_Fy4FmQkE77gVWYltuzdw

延伸 · 阅读

精彩推荐
  • Centos如何重置 RHEL7/CentOS7 系统的root密码

    如何重置 RHEL7/CentOS7 系统的root密码

    这篇文章主要介绍了如何重置 RHEL7/CentOS7 系统的root密码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。...

    Rado Folwarczny8752021-12-29
  • CentosCentOS禁用与开启触摸板的方法

    CentOS禁用与开启触摸板的方法

    很多朋友反馈说在笔记本上打字是一定要禁用触摸板的,不然一定是光标乱飞;这种情况该如何解决呢?下面小编就为大家分享CentOS禁用与开启触摸板的方...

    CentOS之家3712019-06-04
  • Centoslinux之Centos中文系统分区的详细教程和重点介绍

    linux之Centos中文系统分区的详细教程和重点介绍

    分区似乎是每个人都会做的事情,拿到硬件第一个想法就是重新分区,预装系统分区肯定不符合个人的安排,但是分区相对也是很重要的,所以必须得有规...

    脚本之家3102019-09-06
  • CentosCentOS中配置swap交换区的方法

    CentOS中配置swap交换区的方法

    这篇文章主要介绍了CentOS中配置swap交换区的方法,本文给出详细的操作步骤以及操作命令注解,非常简洁有用,需要的朋友可以参考下 ...

    服务器之家5522019-09-11
  • CentosCentOS7系统进行IP和主机名的网络配置的过程图解

    CentOS7系统进行IP和主机名的网络配置的过程图解

    有不少用户不知道怎么对CentOS7进行安装和配置,主要是因为CentOS7的主机名和IP等相关网络配置跟之前的版本有些不同,下面针对CentOS7系统怎么进行IP和主机...

    系统之家5282019-09-18
  • CentosCentOS7扩展根目录空间操作步骤

    CentOS7扩展根目录空间操作步骤

    一些朋友还不知道如何在CentOS7下扩展根目录空间;下面小编就为大家带来CentOS7扩展根目录空间操作步骤;有需要的朋友可以过来看看...

    centos之家6132019-07-07
  • CentosCentOS下内存分析free meminfo详解

    CentOS下内存分析free meminfo详解

    今天小编要为大家带来的是CentOS下内存分析free meminfo详解!希望对大家会有帮助!有需要的朋友一起去看看吧 ...

    脚本之家6152019-10-12
  • Centoscentos系统VPS服务器挂载数据盘教程

    centos系统VPS服务器挂载数据盘教程

    用远程连接工具SSH Secure Shell Client或者Xshell 5连接上服务器。如果你对命令不太了解,可点击下面地址Linux中常用操作命令 1、检查数据盘 输入fdisk -l然后回...

    白石头博客4932020-04-07