Ubuntu下备份系统的方法

简介: 今天不小心强行结束了一个我不知道用处的进程,结果造成进不了x界面,gdm启动不了,使用apt-get进行修复,结果几乎要把整个x界面有关的软件包删除,所以只好重装系统,为了防止下次出现类似的问题,所以把系统做了一个备份。 备份的方法有两种,一种是通过一种软件进行被份,另外一种是通过命令行进行备份。 软件备份的方法是下载一个叫UCloner的软件,下载地址是http://co

今天不小心强行结束了一个我不知道用处的进程,结果造成进不了x界面,gdm启动不了,使用apt-get进行修复,结果几乎要把整个x界面有关的软件包删除,所以只好重装系统,为了防止下次出现类似的问题,所以把系统做了一个备份。

备份的方法有两种,一种是通过一种软件进行被份,另外一种是通过命令行进行备份。

软件备份的方法是下载一个叫UCloner的软件,下载地址是http://code.google.com/p/ucloner/ 使用方法压缩包内已经说明了我就不再多说,不过因为这个软件说只支持Ubuntu 10.10 10.04 和9.10,所以别的版本就要使用命令行进行备份了。

下面是备份Ubuntu系统的方法

然后打开终端,输入以下命令:

1、成为根用户:sudo su
2、转到根目录:cd /

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

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

接着,让我们稍微解释一下:
tar 是用来备份的程序
c - 新建一个备份文档
v - 详细模式, tar程序将在屏幕上实时输出所有信息。
p - 保存权限,并应用到所有文件。
z - 采用‘gzip’压缩备份文件,以减小备份文件体积。
f - 说明备份文件存放的路径, /media/sda7/backup.tgz 是本例子中备份文件名。这个备份文件备份的位置是其它分区,也就是原来的WIN分区中。因为我的根目录的空间不足,所以只有备份在其它的地方了。

--excloude - 排除指定目录,使其不被备份

来看看我们想要包含的目录,我们不必备份所有的东西,因为有些目录是没有多大用处的。确认你不想包含的文件,否则您会得到一个很奇怪的结果。 您也不必备份 /mnt 目录下的东西,除非您有其他分区挂在它下面或者你坚持要备份。您还必须确保没有任何资源挂在 /media 目录下(比如,任何CD或者移动存储介质).否则,剔除/media。

最後一个参数是我们想要保存的目录. 我们想要保存所有的东西,使用 / 作为根目录。

我用这个办法进行备份的时候到了最后给我提示什么:tar:Error exit delayed from previous errors

当然,你的可能显示的是中文,反正就是说什么错误,上网查了查,说是权限不足造成的,但是如果你使用了Root权限还是这样的话,最好使用Live usb进行备份,因为有人说运行的时候备份就有可能这样。(有人说这个提示可以忽略)

用Live usb备份的办法

然后打开终端,输入以下命令:

1、成为根用户:sudo su
2、转到根目录:cd /

3,创建目录:mkdir /a

4,挂在根目录分区 mount /dev/sdax /a

5,进入a目录 cd /a

6,备份 tar -cvpzf /media/xxx/backup.tgz *

 

然后就是将来还原Ubuntu系统备份了:

警告: 求您了,看在上帝的份上,千万小心这儿。如果您不明白您正在干什么,那很有可能复盖掉您重要的数据,所以请特别小心!

注意!!!因为 tar还原是只会覆盖相同的文件,但是这种方法只是恢复备份时的文件,就是说如果某些文件丢失或损坏了,这样可以恢复修复这些文件,但不能删除自备份到恢复前这期间所生成的其它文件,说白了就是假如你备份系统时有1234这四个文件,如果三天后,由于某些原因变成了1234'5(4改变了),你恢复后,就会变成12345,其中4'恢复成备份时的文件,5保留。所以大家要是想彻底还原成备份时候的样子最好彻底删除根目录下的所有文件,然后在还原,这样就可以还原成备份时的样子了

好了,继续我们前面所讲的例子,我们在其它分区(sda7)目录下创建了一个名为backup.tgz的备份文件。

Linux 中美妙的事情之一就是在系统正在运行的情况下可以进行还原操作,而不需要启动光盘或者其他任何乱七八糟的东西。当然,如果您的系统已经崩溃,那您必须选择 使用live CD,但是结果还是一样。

好了,言归正传。这是我要用的命令,如果你的备份不是在和我一样的位置的位置的话,那请相应地修改/media/sda7这一点:

tar -xvpzf /media/xxx/backup.tgz -C /

如果您使用的是bz2压缩的:

tar -xvpjf /media/xxx/backup.tar.bz2 -C /

如果系统已经崩溃可以使用Live usb登录,然后

mkdir /tmp/root
mount /dev/sdaX /tmp/root

tar -xvpjf /media/xxx/backup.tar.bz2 -C /tmp/root

当然,恢复前可以先rm -rf /tmp/root/* 一下,这样就干干净净了。(就是之前说的删除根目录下的所有文件)

这个只是在本机上还原,如果是还原到别的机子上记得修改fstab文件。(可能还需要安装grub)

恢复命令结束时,你的工作还没完成,别忘了重新创建那些在备份时被排除在外的目录:
# mkdir proc
# mkdir lost+found
# mkdir mnt
# mkdir sys

# mkdir media

等等

这就是备份Linux系统的方法了,可能根本用不着系统的备份,不过有备无患,谁知道有没有需要还原的时候。

转自:http://www.linuxidc.com/Linux/2014-01/94973.htm

备份系统的完整命令

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

恢复系统

tar -zxvpf -backup.tgz -C /

目录
相关文章
|
3天前
|
Ubuntu 编译器 C++
Ubuntu系统下编译OpenCV4.8源码
本文档介绍了在Ubuntu系统下编译和安装OpenCV4.8的简单步骤:首先,通过wget命令下载源码包,然后解压;接着,安装必要的编译器和第三方库支持;最后,在源码目录创建build文件夹,执行cmake和make安装。整个过程包括下载、安装依赖和编译安装三个主要步骤。
18 6
|
4天前
|
存储 Ubuntu 网络协议
从Ubuntu-base构建ubuntu rootfs系统(以x86_64和arm为例)
本文介绍了基于Ubuntu-base构建自定义Linux系统的过程,适合嵌入式设备。Ubuntu-base是最小文件系统,包含软件包管理器,可以从Ubuntu源轻松安装软件。文章详细阐述了构建步骤,包括准备宿主系统(确保使用与目标系统相同架构的Ubuntu系统)、创建和挂载分区、配置Ubuntu源、设置DNS、添加用户配置、进入chroot环境以及安装软件(如内核、X-window系统等)。对于arm架构,还提供了通过qemu在X86_64系统上构建arm rootfs的方法。整个过程强调了定制和灵活性,适合对Linux系统有深入了解的开发者。
14 0
|
5天前
|
Ubuntu 网络协议 搜索推荐
如何在Ubuntu系统上定制文件系统
该文介绍了如何在基于全志T507H处理器的OKT507-C开发板上定制Ubuntu文件系统。首先,通过解压文件系统到指定目录。接着,安装QEMU模拟器并修改配置,包括复制QEMU静态文件和DNS配置到文件系统,以及更新下载源。然后,挂载文件系统并使用shell脚本进行挂载和卸载,接着在挂载的文件系统中通过apt-get安装所需软件,如minicom。最后,打包文件系统为tar.gz格式,替换旧的文件系统压缩包,重新编译生成新的镜像烧录到开发板。通过这种方法,可以方便地批量定制和预装软件到开发板,提高生产效率。
16 0
|
6天前
|
Ubuntu Apache 数据库
如何在Ubuntu系统部署Z-blog博客结合cpolar实现无公网IP访问本地网站
如何在Ubuntu系统部署Z-blog博客结合cpolar实现无公网IP访问本地网站
23 2
|
7天前
|
运维 监控 Ubuntu
Python实现ubuntu系统进程内存监控
Python实现ubuntu系统进程内存监控
12 1
|
12天前
|
Ubuntu Unix Linux
|
13天前
|
Ubuntu 网络安全 数据安全/隐私保护
ubuntu启动宝塔的方法是什么
宝塔面板应该已经成功启动,并且你可以使用它来管理你的服务器和网站。请确保你已经安装并配置了宝塔面板,以便在启动后进行管理。
22 1
|
15天前
|
Ubuntu 网络协议 搜索推荐
如何在Ubuntu系统上定制文件系统
本文介绍了如何基于全志T507H处理器的OKT507-C开发板上定制Forlinx Desktop(Ubuntu)文件系统。首先,通过解压文件系统并进入OKT507-linux-ubuntu目录。接着,安装QEMU,包括更新下载源和安装相关包。然后,修改配置,如复制DNS配置和修改下载源。挂载文件系统,通过编写ch-mount.sh脚本实现挂载和卸载。安装所需软件,例如使用apt-get安装minicom。最后,打包文件系统,用tar命令压缩并替换旧的文件系统压缩包,重新编译生成新镜像,烧录到开发板。测试方法是通过minicom验证软件是否成功安装。这种定制方式简化了批量生产中的软件安装步骤。
30 3
|
15天前
|
Ubuntu Shell 网络安全
【专栏】在Ubuntu 22.04上安装KubeSphere的指南:确保系统至少有4GB内存和2核CPU,安装Docker和docker-compose
【4月更文挑战第28天】在Ubuntu 22.04上安装KubeSphere的指南:确保系统至少有4GB内存和2核CPU,安装Docker和docker-compose。下载安装脚本`curl -sSL https://kubesphere.io/install.sh | bash`,根据提示选择安装选项,等待完成。安装后,通过访问控制台验证安装效果。解决可能出现的错误、网络问题和性能问题,利用KubeSphere提升容器管理效率。本文为顺利安装和使用提供参考。
|
17天前
|
Web App开发 缓存 Ubuntu
Ubuntu系统的基础操作和使用
Ubuntu系统的基础操作和使用
27 2