游乐游手机版
首页/系统平台/文章详情

CentOS 7系统升级备份与恢复实验指南

时间:2026-06-24 08:39
一、系统版本 这次实验涉及两个版本: 1) CentOS 7 1 1503 2) CentOS 7 2 1511 二、通过tar命令备份当前操作系统 tar cvpzf mnt linuxbackup tgz --exclude= proc --exclude= lost+found --ex

一、系统版本

这次实验涉及两个版本:

1) CentOS 7.1.1503

2) CentOS 7.2.1511

二、通过tar命令备份当前操作系统

# tar cvpzf /mnt/linuxbackup.tgz --exclude=/proc --exclude=/lost+found --exclude=/mnt/linuxbackup.tgz --exclude=/mnt --exclude=/sys /

这条命令看起来复杂,但拆开理解其实很简单。tar是Linux下常用的打包工具,后面的参数各自有分工:c表示创建新文档,v是在处理过程中输出相关信息,p保持原有权限,z调用gzip压缩归档,f指定对普通文件操作。而linuxbackup.tgz就是打包后的文件名。关键是用--exclude排除了/proc/lost+found/mnt/sys这些目录,以及打包文件自身(因为文件也在/mnt下)。最后一个/表示打包根目录下所有未被排除的文件。

整个过程就是:创建一个名为linuxbackup.tgz的压缩包,其中包含了除排除目录外的所有文件,且保留了原始权限。需要注意,恢复时得手动创建那些被排除的目录。到底排除哪些目录,根据实际需求决定就好。执行后等待一段时间,然后把linuxbackup.tgz拷贝到其他地方,备份就完成了。

重点提示:打包过程中不要进行任何操作,否则可能修改某些文件——备份完成时tar会提示错误,恢复时也一样。

三、通过YUM命令升级操作系统版本至CentOS 7.2.1511

# mount -t iso9660 -o loop xxx.iso /mnt/iso   ### 挂载ISO镜像文件至/mnt/iso
# vim /etc/yum.repos.d/CentOS-Base.repo

在repo文件中添加以下内容:

[local-source]
name=CentOS-$releasever - Base
baseurl=file:///mnt/iso
gpgcheck=1
enabled=1
gpgkey=file:///mnt/iso/RPM-GPG-KEY-CentOS-7

然后执行:

# yum clean
# yum update -y

四、重启之后系统顺利升级至CentOS 7.2.1511

这一步没什么可说的,重启后确认版本号已变更为7.2即可。

五、现在将系统恢复至升级之前CentOS 7.1.1503,通过tar命令恢复我们之前备份的文件

# tar xvpfz /mnt/linuxbackup.tgz -C /

命令执行完后,先别急着重启。记得手动创建备份时排除的目录:

# mkdir /proc
# mkdir /lost+found
# mkdir /mnt
# mkdir /sys

六、重启系统,发现系统引导卡在最后一步,图形化界面无法完全显示,通过SSH连接也被拒。

问题来了:重启后图形界面没能正常启动,SSH也连不上。看来恢复过程出了些岔子。

七、挂载光盘,进入拯救模式,挂载硬盘分区至/mnt,将系统启动级别修改到3(字符界面)。

# mount /dev/mapper/centos-root /mnt/root
# cd /mnt/root/etc/systemd/system/
# rm default.target
# ln -sf /lib/systemd/system/multi-user.target default.target
### systemd使用链接来指向默认的运行级别,由/etc/systemd/system/default.target文件中决定。

通过拯救模式手动挂载分区,然后修改默认启动目标为multi-user(相当于运行级别3),解决图形界面卡死的问题。

八、重启之后,显示字符用户登录界面,但是用户无法登录,提示密码错误。

字符界面能看到了,但密码验证失败——恢复时可能把密码相关文件搞坏了。

九、启动单用户模式,修改root用户密码。

  1. 启动系统,按下e键进入编辑模式。
  2. linux16/vmlinuz-3.10.0-229.el7.x86_64 root=/dev/mapper/centos-root ro rd.lvm.lv=centos/root rd.lvm.lv=centos/swap crashkernel=auto rhgb quiet LANG=en_US.UTF-8所在参数行尾添加:init=/bin/sh
  3. 按Ctrl+x启动到shell。
  4. 挂载文件系统为可写模式:mount --o remount,rw /
  5. 运行passwd并按提示修改root密码。
  6. 如果之前系统启用了selinux,必须运行# touch /.autorelabel,否则无法正常启动。个人实验系统可以直接关闭SELINUX,所以我这一步直接禁用了。
  7. 运行exec /sbin/init正常启动,或者用exec /sbin/reboot重启。

十、重启后通过新密码登录成功,系统提示一些错误,按照提示一一执行命令修复成功,执行startx启动图形化界面成功,系统已成功恢复至CentOS 7.1.1503。

登录后有若干报错,根据提示逐个修复,最后运行startx图形界面正常显示,系统恢复如初。

十一、将系统启动级别恢复到5(图形化界面)

# systemctl set-default graphical.target

至此,整个备份—升级—恢复的流程就完整走了一遍。虽然中间出了几个小插曲,但每一步都有对应的解决思路。实际操作时建议提前在白名单环境中做验证,以免生产环境遇到类似问题手忙脚乱。

来源:https://www.jb51.net/os/RedHat/529295.html
上一篇CentOS双网卡主备模式配置详细教程 下一篇CentOS服务器网络配置命令详解与实例操作步骤
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
微软详解Win11时间点还原 默认每24小时创建恢复点
系统平台 · 2026-06-30

微软详解Win11时间点还原 默认每24小时创建恢复点

微软今日推送了最新的 6 月可选更新,并发布博客详细解读了 Win11 全新的“时间点还原”(Point-in-time restore)功能——这一功能本质上是对系统恢复体验的一次全面升级,旨在让用户更轻松地应对电脑故障。 微软表示,面向 Windows 11 客户端用户的“时间点还原”功能现已正

Win11 26H1六月可选更新KB5095091 优化放大镜改善装机体验
系统平台 · 2026-06-30

Win11 26H1六月可选更新KB5095091 优化放大镜改善装机体验

微软今天推送了Windows 11 26H1设备的6月可选更新KB5095091,安装完成后系统版本号会升级到Build 28000 2340。值得一提的是,这次更新并非面向所有设备,而是专门为搭载高通骁龙X2系列芯片的机型准备的——包括骁龙X2 Plus、X2 Elite和X2 Elite Ext

Win11六月可选更新KB5095093修复回收站弹窗异常
系统平台 · 2026-06-30

Win11六月可选更新KB5095093修复回收站弹窗异常

微软已悄然推送Windows 11六月可选更新,编号KB5095093。本次更新覆盖两个版本:24H2用户安装后版本号升级至Build 26100 8737,而25H2用户则更新至Build 26200 8737。 本次更新并非仅是小修小补,而是带来了多项实质性新功能。下面我们就来详细解析这些更新内

苹果macOS 27 Beta2封堵Siri AI跳过候补名单漏洞
系统平台 · 2026-06-30

苹果macOS 27 Beta2封堵Siri AI跳过候补名单漏洞

科技媒体 Cult of Mac 昨日(6月23日)发布博文指出,苹果在 macOS 27 Beta 2 更新中悄然封堵了一个此前可用的后门——用户曾能通过一条终端命令绕过候补名单,直接启用新版 Siri AI,如今这一方法已失效。 简要回顾一下:在 macOS 27 Beta 1 阶段,只需在 M

微软加速Win11 25H2推送 覆盖所有符合条件家用PC
系统平台 · 2026-06-30

微软加速Win11 25H2推送 覆盖所有符合条件家用PC

近日(6月23日),科技媒体 Windows Latest 发布了一则值得关注的动态:微软已进一步扩大 Windows 11 25H2 的推送范围,所有满足硬件要求、且不受 IT 部门管理的家庭版和专业版设备,现在均可顺利接收本次更新。 此次升级有一个显著特点——采用“启用包”(eKB)方式进行推送