Centos 7 备份与还原

本文详细介绍如何使用TAR命令备份整个Ubuntu系统,包括选择性排除特定目录,以及如何使用相同的命令恢复系统。同时,提供了使用Gzip和Bzip2进行压缩的方法,以及在恢复过程中需要注意的重要步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

备份系统

我该如何备份我的Ubuntu系统呢?很简单,就像你备份或压缩其它东西一样,使用TAR。和Windows不同,Linux不会限制root访问任何东西,你可以把分区上的所有东西都扔到一个TAR文件里去!
首先成为root用户:

sudo su
cd /

然后进入文件系统的根目录(当然,如果你不想备份整个文件系统,你也可以进入你想要备份的目录,包括远程目录或者移动硬盘上的目录):

下面是我用来备份系统的完整命令:

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

让我们来简单看一下这个命令:
“tar”当然就是我们备份系统所使用的程序了。
“cvpfz”是tar的选项,意思是“创建档案文件”、“保持权限”(保留所有东西原来的权限)、“使用gzip来减小文件尺寸”。
“backup.gz”是我们将要得到的档案文件的文件名。
“/”是我们要备份的目录,在这里是整个文件系统。
在 档案文件名“backup.gz”和要备份的目录名“/”之间给出了备份时必须排除在外的目录。有些目录是无用的,例如“/proc”、“/lost+ found”、“/sys”。当然,“backup.gz”这个档案文件本身必须排除在外,否则你可能会得到一些超出常理的结果。如果不把“/mnt”排 除在外,那么挂载在“/mnt”上的其它分区也会被备份。另外需要确认一下“/media”上没有挂载任何东西(例如光盘、移动硬盘),如果有挂载东西, 必须把“/media”也排除在外。
有人可能会建议你把“/dev”目录排除在外,但是我认为这样做很不妥,具体原因这里就不讨论了。
执行备份命令之前请再确认一下你所键入的命令是不是你想要的。执行备份命令可能需要一段不短的时间。
备份完成后,在文件系统的根目录将生成一个名为“backup.tgz”的文件,它的尺寸有可能非常大。现在你可以把它烧录到DVD上或者放到你认为安全的地方去。
在备份命令结束时你可能会看到这样一个提示:’tar: Error exit delayed from previous errors’,多数情况下你可以忽略它。
你还可以用Bzip2来压缩文件,Bzip2比gzip的压缩率高,但是速度慢一些。如果压缩率对你来说很重要,那么你应该使用Bzip2,用“j”代替命令中的“z”,并且给档案文件一个正确的扩展名“bz2”。完整的命令如下:

tar cvpjf backup.tar.bz2 / –exclude=/proc –exclude=/lost+found –exclude=/backup.tar.bz2 –exclude=/mnt –exclude=/sys 

恢复系统

在进行恢复系统的操作时一定要小心!如果你不清楚自己在做什么,那么你有可能把重要的数据弄丢,请务必小心!
接着上面的例子。切换到root用户,并把文件“backup.tgz”拷贝到分区的根目录下。
在 Linux中有一件很美妙的事情,就是你可以在一个运行的系统中恢复系统,而不需要用boot-cd来专门引导。当然,如果你的系统已经挂掉不能启动了, 你可以用Live CD来启动,效果是一样的。你还可以用一个命令把Linux系统中的所有文件干掉,当然在这里我不打算给出这个命令!
使用下面的命令来恢复系统:

tar xvpfz backup.tgz -C /

如果你的档案文件是使用Bzip2压缩的,应该用:

tar xvpfj backup.tar.bz2 -C /

注意:上面的命令会用档案文件中的文件覆盖分区上的所有文件。
执行恢复命令之前请再确认一下你所键入的命令是不是你想要的,执行恢复命令可能需要一段不短的时间。
恢复命令结束时,你的工作还没完成,别忘了重新创建那些在备份时被排除在外的目录:

mkdir proc
mkdir lost+found
mkdir mnt
mkdir sys

当你重启电脑,你会发现一切东西恢复到你创建备份时的样子了!

本文参考 http://blog.youkuaiyun.com/sunnylgz/article/details/8055315

使用方法 猛击 “双击运行”。若弹出对话框,选“运行”。 应用举例 1.将 ubuntu 装在移动硬盘中,配置好。拿到目标机上,从usb启动,然后运行 ubuntu-cloner ,选择“克隆当前系统”,按提示进行,即可将移动硬盘中的系统克隆到目标机中。 2. 在一个安装、配置好的 ubuntu 系统中运行 ubuntu-cloner ,选择“备份当前系统”,可将系统备份为 tar 或 squashfs 。将备份文件拷到u盘或移动硬盘。在目标机上通过光盘或usb盘启动 ubuntu live cd ,接上存有系统备份文件的u盘或移动硬盘,运行 ubuntu-cloner ,选择“恢复系统”,按提示进行,即可将备份的系统恢复到目标机中。 3. (待续) 说明 在 ubuntu 8.04 、8.10 、9.04 中测试通过。 程序依赖的包(如 python-gtk2 、zenity 等)ubuntu 官方版都已预装,某些精简版、定制版可能没有,需手动安装。kubuntu 也没有。xubuntu、edubuntu 未测。 克隆或备份时会自动跳过 /mnt/* 、/media/* 、 /proc 、/sys 、/tmp 以及缓存 /var/cache/apt/archives/*.deb 、 /var/cache/apt/archives/partial/* 。如果有其它挂载点如 /windows/* 、 /home/*/win_c 之类,可手动指定排除之。 克隆或恢复系统后会自动生成新的 fstab 。 可自动安装 GRUB,前提条件是被克隆或被恢复的系统中装有 GRUB 。 克隆或恢复时会自动更改主机名以避免出现重名。如果您不喜欢自动更改的主机名,可用 change_hostname.sh 修改,使用方法:sudo sh change_hostname.sh 新主机名 ,或 sudo sh change_hostname.sh 后按提示操作。
### 备份 CentOS 7 系统 使用 Clonezilla 对 CentOS 7 系统进行备份是一个常见的需求,适用于灾难恢复、系统迁移或定期备份等场景。Clonezilla 提供了类似于 Norton Ghost 的功能,但基于开源技术,并支持多种文件系统。 #### 创建 Clonezilla Live USB 启动盘 首先需要准备一个可启动的 Clonezilla Live USB 设备: 1. 下载 Clonezilla Live ISO 文件。 2. 使用工具如 `Rufus`(Windows)或 `dd`(Linux)创建可启动的 USB 驱动器。 3. 将 USB 插入目标机器并从 USB 启动。 #### 备份 CentOS 7 系统分区 启动进入 Clonezilla Live 模式后,按照以下步骤操作: 1. **选择语言**:通常默认为英文。 2. **选择键盘布局**:一般选择美国英语。 3. **选择启动模式**:建议选择“Beginner mode”。 4. **选择操作类型**: - 选择 `disk_to_img` 或 `partimage` 来备份整个磁盘或单个分区。 5. **选择源磁盘/分区**: - 如果选择 `disk_to_img`,则选择整个磁盘。 - 如果选择 `partimage`,则选择 `/dev/sdaX`(假设 `/dev/sda1` 是 `/boot`,`/dev/sda2` 是 `/`)。 6. **选择目标位置**: - 可以是本地硬盘上的另一个分区、外部存储设备或通过网络共享(NFS/Samba)。 - 若希望将备份保存在同一磁盘上,请确保目标路径不在要备份的分区中 [^1]。 7. **压缩选项**: - 选择适当的压缩级别(gzip、bzip2、lzma 等),默认推荐 gzip。 8. **确认操作**: - 确认无误后开始备份过程。 #### 示例命令行操作(高级用户) 如果熟悉命令行,可以直接在终端中使用 `ocs-sr` 命令进行备份: ```bash sudo ocs-sr -q2 -c -j2 -z -p true save_disk my_backup sda ``` - `-q2`: 快速模式。 - `-c`: 压缩。 - `-j2`: 使用多线程压缩。 - `-z`: 使用 gzip 压缩。 - `-p true`: 不提示确认。 - `save_disk`: 表示备份整个磁盘。 - `my_backup`: 备份名称。 - `sda`: 要备份的目标磁盘。 --- ### 还原 CentOS 7 系统 还原操作备份类似,但方向相反。请确保目标磁盘或分区已准备好。 #### 使用 Clonezilla GUI 进行还原 1. 启动 Clonezilla Live USB。 2. 选择备份时相同的模式(Beginner mode)。 3. 选择 `img_to_disk` 或 `restoredisk`。 4. 选择之前创建的备份镜像。 5. 选择目标磁盘(通常是 `/dev/sda`)。 6. 确认操作并开始还原。 #### 使用命令行还原 ```bash sudo ocs-sr -q2 -c -j2 -z -p true restore_disk my_backup sda ``` - `restore_disk`: 表示还原整个磁盘。 - `my_backup`: 备份名称。 - `sda`: 目标磁盘。 --- ### 注意事项 - **备份位置**:尽量避免将备份文件保存在被备份的分区上,否则可能导致数据覆盖或写入失败 [^1]。 - **分区结构一致性**:还原时确保目标磁盘的分区结构源磁盘一致,否则可能需要手动调整。 - **EFI 分区处理**:如果是 UEFI 启动的系统,确保 EFI 分区也被正确备份还原。 - **GRUB 修复**:还原后可能需要重新安装 GRUB 引导程序: ```bash sudo mount /dev/sda2 /mnt sudo mount /dev/sda1 /mnt/boot/efi sudo grub2-install --boot-directory=/mnt/boot --efi-directory=/mnt/boot/efi sudo chroot /mnt grub2-mkconfig -o /boot/grub2/grub.cfg exit ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值