Ubuntu下备份系统的方法

今天不小心强行结束了一个我不知道用处的进程,结果造成进不了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 /

时间: 2024-09-10 12:55:41

Ubuntu下备份系统的方法的相关文章

无需任何启动盘,在windows系统上一键安装linux(ubuntu)双系统的方法!

            (转载请注明出处http://blog.csdn.net/buptgshengod)         随着学习工作的深入,安装学习linux系统显得尤为重要.但是有些人对于安装linux有些恐惧与陌生感,下面介绍一种傻瓜式安装linux作为第二系统的方法,而且无需分区.        使用的是wubi这款软件.点击进去会提示选择选择一个盘进行安装,选择除了c盘,任意的一个有空间大于10G的都可.然后他会自动下载最新的ubuntu,进行安装.根据你的网速,可能需要几个小时.

在Linux ubuntu下安装mongodb的方法_MongoDB

一.下载.安装对应版本 官网下载地址如下: www.mongodb.org/downloads #通过CURL下载 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1404-3.2.0.tgz #解压 tar -zxvf mongodb-linux-x86_64-ubuntu1404-3.2.0.tgz #移动 mv mongodb-linux-x86_64-ubuntu1404-3.2.0/ /usr/lo

不要迷恋TAR了,使用 Deja Dup 在 Ubuntu 下备份你的数据

数据的重要性就不必多说了,如果你曾经有过丢失数据的经历,那么你就会明白.不要相信你的服务器,不要相信你的计算机,不要相信任何一个数据存储设备.只有不断的做多个备份,才能让我们安心一点. Deja Dup 是一个可以帮助你备份数据的程序,并且加密他们,它也很容易使用.还具有定时备份功能等等. Deja Dup 的一些特性功能: 支持本地备份和远程备份,包括备份到 Amazon S3 云服务器 加密和压缩数据 增量备份,可以让你从任何数据量上来回复 定时备份 如果您正在使用 Ubuntu 11.10

ubuntu下安装nodejs的方法

安装方法一 安装依赖包  代码如下 复制代码 $sudo apt-get install g++ curl libssl-dev apache2-utils python build-essential gcc 下载安装 注意安装版本  代码如下 复制代码 // 下载 $ wget http://nodejs.org/dist/v0.10.24/node-v0.10.24.tar.gz // 解压: $ tar -zxf node-v0.10.14.tar.gz $ cd node-v0.10.

ubuntu下安装配置svn方法详解

1. 安装svn 如果是ubuntu系统,直接 sudo agt-get install subversion 2. 创建svn库  代码如下 复制代码 svnadmin create /home/robin/svn 3. 配置用户.权限 a. cd /home/robin/svn/conf b. vi svnserve.conf , 取消passwd, authz 两行的注释 c. vi passwd , 添加用户 [users] zhanglb = 123 d. vi authz , 配置权

linux下修改系统时间方法介绍

如将系统时间设定成1999年12月9日的命令如下. #date -s 12/09/99 将系统时间设定成下午2点18分9秒的命令如下. #date -s 14:18:09 date 命令不仅可以显示系统当前时间,还可以用它来修改系统时间. 命令格式为: date -s 时间字符串例如只修改系统的日期,不修改时间(时分秒) date -s 2012-08-02或只修改时间不修改日期 date -s 10:08:00当然也可以同时修改日期和时间 date -s "2012-05-18 04:53:0

Ubuntu下安装MYSQL数据库方法详解

1. 安装MySQL sudo apt-get install mysql-server 2.修改MYSQL root用户密码 默认的MySQL安装之后根用户是没有密码的,所以首先用根用户进入: $mysql -u root -p mysql>use mysql; update user set password=PASSWORD('panpan') where user='root';flush privileges; 修改密码为 panpan 3.修改MYSQL root用户远程访问权限 首

Ubuntu下升级Node.js方法

命令如下:  代码如下 复制代码     sudo npm cache clean -f     sudo npm install -g n     sudo n stable 就这么简单,3条命令搞定,亲测可用.  

【转载】Linux(ubuntu)下如何安装与卸载软件总结

刚开始使用Ubuntu的用户时常有这样的问题,我要安装新软件怎么办?.exe文件在哪里,怎么软件有这么多格式?RPM包,.tar.gz是什么?怎么就是安装不了啊?等等. 的确,在Windows下安装文件只需要双击即可,所以很多人在Ubuntu下觉得很不习惯.事实上,使用Ubuntu平台下的新利得软件包管理器安装大部分软件比在Windows平台下更加简单,操作更加容易.当然,也有很多软件Ubuntu的储藏库里面没有,而这些软件有着各式各样的格式,因而安装方法也都不一样.下面我就Ubuntu下安装软