(演示环境:银河麒麟V10 Desktop 0710 x86_64)
(如下服务器系统init方式,rd.break方式在桌面系统不生效)
(本方法适用于无法进入单用户模式,或者其他场景下系统深度崩溃,如无法进入grub、单用户、救援模式、系统库文件损坏命令无法使用等场景需要修复系统或者备份重要文件的情况)
找一个同cpu架构的桌面u盘启动盘,然后选择从u盘启动,进入桌面live cd模式,即试用而不安装:
试用但不安装进入live环境,打开终端,输入# lsblk 查看分区情况,找到根分区,桌面系统的话一般sda2就是根分区,所以如果是磁盘损坏,直接fsck -fy /dev/sda2即可(题外话)
# mkdir -p /mychroot/boot
# mkdir -p /mychroot/dev
# mkdir -p /mychroot/proc
挂载系统目录
# sudo mount /dev/sda2 /mychroot
# sudo mount /dev/sda1 /mychroot/boot
# sudo mount --bind /dev/ /mychroot/dev
# sudo mount --bind /proc /mychroot/proc
切根
# chroot /mychroot
切根完成后此时系统环境就是原来物理服务器上的系统环境了,就不是u盘临时桌面环境了
# passwd arvin //更改arvin普通用户密码
# exit
# reboot
(演示环境:银河麒麟V10 Server 0711 x86_64)
重启机器,在进入grub界面(如下图)时在光标第一行按“e”键进入编辑:
在linux /vmlinuz...所在行行尾追加 rd.break,然后按“ctrl + x”组合键保存退出:
如下进入swich_root模式:
switch_root:/# mount //查看/sysroot读写权限:
如上图,如果是ro,需要重新remount赋予rw读写权限,如果本身就是rw则可忽略下面remount命令:
switch_root:/# mount -o remount,rw /sysroot
switch_root:/# chroot /sysroot //切根进入sysroot
switch_root:/# passwd root //修改root密码,输入两次,密码不回显,输入完直接回车即可
switch_root:/# touch /.autorelabel //selinux未开启则不需要此步
(说明:touch /.autorelabel命令会在根目录下创建一个名为.autorelabel的隐藏文件。在下次启动时,SELinux 子系统将检测到这个文件,然后使用正确的 SELinux 上下文重新标记该系统上的所有文件。在大型磁盘上,此过程可能需要很长时间。)
switch_root:/# exit
switch_root:/# reboot //重启,登录输入更改后的密码即可
重启机器,在进入grub界面(如下图)时在光标第一行按“e”键进入编辑:
在linux /vmlinuz...所在行行尾追加single rw init=/bin/bash
(注:如果追加上述内容无法进入单用户,可以再追加一个console=tty0,即:在linux /vmlinuz...所在行行尾追加 single rw init=/bin/bash console=tty0,指定回显控制台)
进入单用户模式,然后# passwd root更改root用户密码,如下:
# /usr/sbin/reoobt -f //重启机器,使用新密码登录
(本方法适用于无法进入单用户模式,或者其他场景下系统深度崩溃,如无法进入grub、单用户、救援模式、系统库文件损坏命令无法使用等场景需要修复系统或者备份重要文件的情况)
找一个同cpu架构的桌面u盘启动盘,然后选择从u盘启动,进入桌面live cd模式,即试用而不安装:
进入如下从u盘临时启动的临时桌面环境:
打开终端,执行# sudo -i 提权,无需密码;
# lsblk //查看分区情况,看能否找到根分区路径:
服务器大部分分区使用的是lvm逻辑分区,无法在u盘live环境直接识别,如果能成功识别(如下),那么恭喜可以直接跳过下面第1步,直接进入第2步
如果不能直接识别则走第1步安装lvm2工具重新激活一下逻辑分区:
第1步:安装lvm2
# apt install lvm2 -y //如果装上lvm2可以看到逻辑卷分区情况,如果宿主机有网络环境,进live环境也是可以联网直接apt在线安装的,如果内网环境可以离线安装,需要的包和依赖如下:
安装完成后执行# lvdisplay 查看lvm分区情况,如下图获取卷组名为klas,LV status为未激活状态
# vgchange -ay /dev/klas //激活逻辑卷,有报错提示可以忽略
第2步:创建chroot挂载文件目录
# lsblk //查看分区情况,如下图可以显示sda2分区详情
# mkdir -p /mychroot/boot
# mkdir -p /mychroot/dev
# mkdir -p /mychroot/proc
挂载系统目录
# sudo mount /dev/klas/root /mychroot
# sudo mount /dev/sda1 /mychroot/boot
# sudo mount --bind /dev/ /mychroot/dev
# sudo mount --bind /proc /mychroot/proc
切根
# chroot /mychroot
切根完成后此时系统环境就是原来物理服务器上的系统环境了,就不是u盘临时桌面环境了
# passwd root //更改root密码
# exit
# reboot
-------------------------
麒麟软件以安全可信操作系统技术为核心,旗下拥有“银河麒麟”、“中标麒麟”两大产品品牌,面向通用和专用领域打造安全创新操作系统产品和相应解决方案,现已形成了服务器操作系统、桌面操作系统、嵌入式操作系统、麒麟云等产品。麒麟软件系列产品能同时支持飞腾、鲲鹏、龙芯、申威、海光、兆芯等国产CPU。企业坚持开放合作共建产业生态,为客户提供完整的国产化解决方案。
麒麟软件官网:https://www.kylinos.cn
麒麟生态适配查询:https://eco.kylinos.cn/zoology/commercial.html
优麒麟社区:https://www.ubuntukylin.com/comunity