今天不小心强行结束了一不知道用处的进程,结果造成进不了x界面,gdm启动不了,使用apt-get进行修复,结果几乎要把整个x界面有关的软件包删除,所以只好重装系统,为了防止下次出现类似的问题,所以把系统做了一个备份。
  备份的方法有两种,一种是通过一种软件进行被份,另外一种是通过命令行进行备份。
  软件备份的方法是下载一个叫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://bbs.dbfen.com/thread-2011-1-2.html

buntu下备份系统的方法的更多相关文章

  1. tar备份系统的方法

    下面是备份系统的方法: 然后打开终端,输入以下命令: 1.成为根用户:   sudo su 2.转到根目录:   cd / 然後,下面就是我用来备份我的系统的完整的命令:tar -cvpzf /med ...

  2. GPT模式下ghost系统 安装方法

    GPT模式下ghost系统 安装方法 1.UEFI进入PE 2.使用diskgenius 软件 分区,选择GPT方式分区 3.使用CGI ghost 系统 文件到安装盘 4.UEFI修复:软件为 BC ...

  3. Linux下备份系统至另一硬盘

    首先会想到dd命令. 但,, 1,若是小硬盘还好,上T的大硬盘这样做肯定不明智; 2,况且dd是在硬件层面的拷贝,前面的MBR也会随之恢复到另一个盘,若源硬盘是100G,目标盘是200G,又会出问题, ...

  4. shell脚本备份系统的方法

    linux自动备份shell(使用全备份,增量备份策略) 在cron里设置,每周日晚12点执行(每周日全备份,其余时间增量备份)#vi backup.sh #!/bin/bash # definewe ...

  5. 如何使用ghost备份系统?

    如何使用ghost备份系统? 如何使用ghost工具电脑系统备份?需要具体的详细步骤 关注者 11 被浏览 13,197 关注问题写回答 ​邀请回答 ​添加评论 ​分享 ​     1 个回答 默认排 ...

  6. FC8下备份linux系统

    linux系统可以使用tar来备份.<br><br> 我在FC8上装好了totem, mplayer, audacious, 并搞定了wifi后,我觉得该备份一下FC8系统.& ...

  7. iOS高版本备份恢复到低版本系统的方法

    一般来说,在更新iOS系统的时候我们都会建议大家先用iTunes对系统进行完整备份.但时不时都会有人偷懒,或者使用手机OTA升级而没有对系统备份,最终导致不满意新系统了,想降级却无备份可以恢复的尴尬局 ...

  8. Linux系统下查找文件的方法

    Linux系统下查找文件的方法 作者:Vashon 时间:20150419 方法一.在当前目录里查找所有名为以 java 开头的文件: find ./ -name "java*" ...

  9. Linux 中我该如何备份系统

    系统备份概述 在前面的一些文章中,我反复提到经常会把系统搞崩溃,所以备份系统就是一件不容忽视的事情.由于 Linux 系统本身的优越性,系统的备份和还原还是比较容易的.主要表现在以下方面: Linux ...

随机推荐

  1. CSS颜色

    CSS 颜色 可以用以下方法来规定 CSS 中的颜色: ·        十六进制色 十六进制值使用三个双位数来编写,并以 # 符号开头. ·        RGB 颜色 o   所有浏览器都支持 R ...

  2. springboot学习章节-spring常用配置

    1.Scope package com.zhen.highlights_spring4.ch2.scope; import org.springframework.context.annotation ...

  3. JAVA基本类型和包装类

    JAVA的包装类 Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表 ...

  4. Oracle 12c中新建pdb用户登录问题分析

    Oracle 12c新建用户登录问题分析1 用sys用户新建用户,提示公用用户名或角色名无效.原因:Oracle 12c中,在容器中建用户(或者应该称为使用者),须在用户名前加c##.默认登录连接的就 ...

  5. 解决 java.lang.ClassNotFoundException: javax.servlet.ServletContext报错

    原因:tomcat找不到servlet,即缺少了servlet-api.jar包 解决方法: 我的项目是用maven搭建的 在pom.xml中加入依赖 <dependency> <g ...

  6. ubuntu安装nodejs,npm live-server

    sudo apt-get install curl 先安装的是curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/in ...

  7. git命令学习

    git init:把当前目录变成Git可以管理的仓库git add file:把文件添加到仓库git commit -m "描述语句":把文件提交到仓库git status:该命令 ...

  8. pycharm 利用virtualenv为每个项目配置venv

    1.在某个位置安装一个虚拟环境 2.项目运行是配置virtualenv生成的环境 3.重启terminal 安装依赖: exp => pip install django

  9. phpcms pc_base::load

    //数据库pc_base::load_model(‘*_model’) 加载数据库模型 (一张表对应一个数据库模型类),即 modle/*_model.class.php每一个数据库模型类都会继承底层 ...

  10. react native 第三方组件

    react native 的成功离不开优秀的第三方组件,以下是我见过的一些优秀或者有用的RN第三方组件 按钮 APSL/react-native-button 导航 react-native-simp ...