这里只说,备份到本地硬盘上(当然,如果你不想备份整个文件系统,你也可以进入你想要备份的目录,包括远程目录或者移动硬盘上的目录)。

一、备份

第一步:打开一个终端,并运行 sudo su(回车后要求输入密码)

第二步:继续在终端中输入 cd /(注意中间有一个空格)

第三步:(开始备份系统)

在终端中输入:

tar -cvpzf /ubuntu.tgz --exclude=/proc --exclude=/lost+found --exclude=/media --exclude=/mnt --exclude=/sys /(注意最后一个/前有一个空格) 

回车就就等吧,直到命令运行成功。

来解释下这个命令:

'tar' 是用来备份的程序 
c - 新建一个备份文档 
v - 详细模式, tar程序将在屏幕上实时输出所有信息。 
p - 保存许可,并应用到所有文件。 
z - 采用‘gzip’压缩备份文件,以减小备份文件体积。 
f <filename> - 说明备份文件存放的路径, /ubuntu.tgz 是本例子中备份文件名。

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

/media/hd7/ubuntu.tgz 这就是我备份文件保存的路径。hd7为我硬盘的别的分区, 

二、还原系统:

第一步:切换到root用户,并把文件“backup.tgz”拷贝到分区的根目录下。

第二步:(开始还原系统)
在终端中输入:

   tar -xvpzf  /ubuntu.tgz  -C / 

参数x是告诉tar程序解压缩备份文件。 -C <directory> 参数是指定tar程序解压缩到的目录。 ( 在本例中是/ ),这会花一段时间。等它完成了,你就有了一个完全恢复的Ubuntu系 统!只需确保在你做其他任何事情之前,重新创建你剔除的目录: ( /proc, /lost+found, /mnt, /sys, 等等。) 

第三步:重新创建那些在备份时被排除在外的目录

mkdir /proc /lost+found /mnt /sys

/proc 权限:文件所有者:root群组:root 所有者:读取 执行 群组:读取 执行 其它:读取 执行
/lost+found 权限:文件所有者:root群组:root 所有者:读取 写入 执行 群组:读取 执行 其它:读取 执行
/mnt 权限:文件所有者:root群组:root 所有者:读取 写入 执行 群组:读取 执行 其它:读取 执行
/sys 权限:文件所有者:root群组:root 所有者:读取 写入 执行 群组:读取 执行 其它:读取 执行


注意:压缩结果后:

最后:出现tar: 由于前次错误,将以上次的错误状态退出,这边明备份结算,一般可以忽略。。。

Ubuntu 解压错误 tar: 由于前次错误,将以上次的错误状态退出。 (2014-11-27 15:48:37) 转载▼
标签: ubuntu 解压缩 分类: ubuntu
使用tar命令解压文件,解压到最后提示:
tar: 跳转到下一个头
tar: 由于前次错误,将以上次的错误状态退出

生怕解压的文件不全,开始百度什么导致的问题?

最后发现原因=因很简单,因为它不是用tar压缩的,而是用的bzip2。(我的是这样,你们的不知道,不过可以通过file 文件来查看)
使用file命令查看压缩文件类型:
file XXXX.tar.tz2

发现 XXX.tar.bz2: bzip2 compressed data, block size = 900

然后再使用 bzip2 命令 bzip2 -d xxxx.tar.bz2

解压得到 xxx.tar

最后可以用 tar 命令 顺利解决。


进入要备份的ubuntu系统,

  #sudo su  (切换root用户)

  #cd /     (切换到根目录)

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

说明:该命令将当前根目录内容打包成ubuntu.tgz,保存在一个挂载在/media/bachup目录下的磁盘空间中;所有exclude前面有两个短横杠,表示打包时不包含这些目录,以避免浪费空间;最后有个“/”不要忘记!输完命令回车等待约10分钟时间即可备份完毕。

如果你想将现在的ubuntu系统还原为之前的系统,可以进入当前ubuntu系统直接操作,也可以选择进入某个LiveCD系统操作。

※直接操作可使用以下命令:

  #tar –xvpf /media/backup/Ubuntu.tgz –C /

说明:该命令直接将保存在/media/backup目录下的备份文件Ubuntu.tgz解压缩到根目录“/”,最后“/”不要忘了。解压时间和备份时间差不多。耐心等待。

当出现错误“tar: 由于前次错误,将以上次的错误状态退出”以下是我的做法:

备份根目录 ,排除掉大部分文件

sudo tar -cvpzf /backup/backup.tgz --exclude=/backup --exclude=/proc --exclude=/lost+found --exclude=/media --exclude=/lib --exclude=/host --exclude=/selinux --exclude=/root --exclude=/dev --exclude=/etc --exclude=/home --exclude=/initrd.img --exclude=/mnt --exclude=/sys /

这些被排除的文件单独备份 ,这样就不会报“tar: 由于前次错误,将以上次的错误状态退出”这个错误了。

sudo tar -cvpzf /backup/backupsbin.tgz /sbin
sudo tar -cvpzf /backup/backuproot.tgz root
sudo tar -cvpzf /backup/backupselinux.tgz selinux
sudo tar -cvpzf /backup/backupdev.tgz /dev
sudo tar -cvpzf /backup/backupetc.tgz /etc

如果磁盘空间不够大的话,可以使用bz2的格式进行压缩,和上面的语句同理:

sudo tar -cvpjf backup.tar.bz2 -–exclude=/proc -–exclude=/lost+found -–exclude=/backup.tar.bz2 --exclude=/backup.tgz --exclude=/host –exclude=/mnt –exclude=/sys /

还原的代码 :

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

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

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

等待约10分钟,待解压完成,重启即可。

使用这种方式可以将你打包的Ubuntu系统克隆到任何磁盘上去(只要在上述挂载磁盘时将x设成你要使用的磁盘即可),不用担心磁盘编号和空间不同的影响,非常好使。Ubuntu这种备份还原特性给人很强的亲和力,有时感觉就像按着当前系统盘,然后Ctrl+C,然后点着要克隆的磁盘,然后Ctrl+V一样方便。“An active ubuntu system can clone itself intoa/some target partition(s). Remember AgentSmith in Matrix ? yeah, that'sit.”。有点逗,但却是是这样。

设置TeamViewer为开机启动程序
在Dash主页中找到Startup Applications,打开该应用程序,点击Add,在新弹出的对话框中
或者alt+f2
输入gnome-session-properties
出现界面
Name栏输入Start Team Viewer
Command栏输入/usr/bin/teamviewer