步骤一:挂载官方镜像
(步骤略)
步骤二:登录拯救模式
2.1 选择通过光盘启动
(步骤略)
2.2 进入拯救模式
(步骤略)
2.3 登录拯救模式
rescue login:root
步骤三:在救援模式确定系统的根 “/” 目录分区
(步骤略)
(
补充:
1) 物理分区可以使用 lsblk 命令、fdisk -l 或 cat /proc/partitions 命令辅助确定
2) 逻辑分区还可以可以使用 pvs 命令、lvs 命令或 lvdisplay 命令辅助确定
)
步骤四:在救援模式将系统的分区挂载到救援模式的 /mnt 目录
4.1 在救援模式将系统的根 “/” 分区挂载到救援模式的 /mnt 目录
tty1:rescue:~ # mount <root spartition> /mnt
(
补充:
1) 如果是物理分区,系统的根 “/” 分区就在救援模式的 /dev/ 目录里,例如救援模式的 /dev/sda1
2) 如果是逻辑分区,Rocky Linux & RHEL 的系统根 “/” 分区就是救援模式里的 /dev/<volume group>/<logical volume> 例如救援模式里的 /dev/vg/lv,openSUSE & SUSE 的系统根 “/” 分区就是救援模式里的 /dev/mapper/<volume group>-<logical volume> 例如救援模式里的 /dev/mapper/vg-lv
)
4.2 在救援模式将救援模式的 /dev 目录关联到救援模式的 /mnt/dev 目录
tty1:rescue:~ # mount --rbind /dev /mnt/dev
(
补充:
1) 此时所有对救援模式的 /mnt/dev 目录的访问都会变成对救援模式的 /dev 目录的访问
2) 步骤 4.2、步骤 4.3 和步骤 4.4 也可以用以下命令代替:
tty1:rescue:~ # for i in proc sys dev; do mount --rbind /$i /mnt/$i ; done
)
4.3 在救援模式将救援模式的 /proc 目录关联到救援模式的 /mnt/proc 目录
tty1:rescue:~ # mount --rbind /proc /mnt/proc
(
1) 补充:此时所有对救援模式的 /mnt/proc 目录的访问都会变成对救援模式的 /proc 目录的访问
2) 步骤 4.2、步骤 4.3 和步骤 4.4 也可以用以下命令代替:
tty1:rescue:~ # for i in proc sys dev; do mount --rbind /$i /mnt/$i ; done
)
4.4 在救援模式将救援模式的 /sys 目录关联到救援模式的 /mnt/sys 目录
tty1:rescue:~ # mount --rbind /sys /mnt/sys
(
1) 补充:此时所有对救援模式的 /mnt/sys 目录的访问都会变成对救援模式的 /sys 目录的访问
2) 步骤 4.2、步骤 4.3 和步骤 4.4 也可以用以下命令代替:
tty1:rescue:~ # for i in proc sys dev; do mount --rbind /$i /mnt/$i ; done
)
4.5 在救援模式将救援模式的 /run 目录关联到救援模式的 /mnt/run 目录 (选做)
tty1:rescue:~ # mount --rbind /run /mnt/run
(补充:此时所有对救援模式的 /mnt/run 目录的访问都会变成对救援模式的 /run 目录的访问)
步骤五:将当前的根 “/” 目录从救援模式的根 “/” 目录切换到系统的根 “/” 目录
5.1 将当前的根 “/” 目录 “/” 从救援模式的根 “/” 目录切换到系统的根 “/” 目录
tty1:rescue:~ # chroot /mnt
(补充:这里以 /mnt 作为系统根 “/” 目录为例)
5.2 在系统模式挂载所有需要开机自动挂载的目录
bash-4.3# mount -a
5.3 在系统模式确认当前根 “/” 目录下的目录
bash-4.3# ls
bin boot dev home lib lib64 mnt opt proc root run sbin selinux srv sys tmp usr var
(补充:这里显示的是常见的 Linux 根 “/” 目录 下的目录)
步骤六:在系统模式安装软件
6.1 在系统模式挂载官方镜像
6.1.1 在系统模式创建用于挂载镜像的 /media 目录
bash-4.3# mkdir /media
6.1.2 在系统模式挂将官方镜像挂载到 /media 目录
bash-4.3# mount /dev/dvd /media
6.2 在系统模式安装 RPM 文件 (软件包)
6.2.1 在系统模式拷贝 RPM 文件 (软件包) 到当前目录
bash-4.3# cp /media/suse/x86_64/rpm-4.11.2-16.21.1.x86_64.rpm .
(补充:这里以拷贝 rpm-4.11.2-16.21.1.x86_64.rpm RPM 文件 (软件包) 为例)
6.2.2 在系统模式创建用于提取 rpm 文件 (软件包) 的 pkg 目录
bash-4.3# mkdir pkg
6.2.3 在系统模式进入 pkg 目录
bash-4.3# cd pkg
6.2.4 在系统模式提取 rpm 文件 (软件包) 里的子文件
bash-4.3# rpm2cpio ../rpm-4.11.2-16.21.1.x86_64.rpm | cpio -ivd
(补充:这里以提取 rpm-4.11.2-16.21.1.x86_64.rpm RPM 文件 (软件包) 为例)
6.2.5 在系统模式将提取的 RPM 文件 (软件包) 里的子文件拷贝到 /bin 目录
bash-4.3# cp bin/rpm /bin/
步骤七:重启系统
7.1 从当前系统的根 “/” 目录切换回救援模式的根 “/” 目录
bash-4.3# exit
7.2 重启系统
tty1:rescue:~ # reboot
参考文献:
https://www.suse.com/support/kb/doc/?id=000018770