如何备份我的整个系统?


84

如果要备份整个操作系统(包括但不限于我的主目录),该如何处理?

它像备份所有内容一样简单/,然后如果我崩溃时,只需将文件复制回来?
这可以解决问题吗?当系统无法运行时,我该如何实际操作?


您可能想看看备份工具的这个问题askubuntu.com/q/2596
Decio Lira 2010年

请问您为什么要这样做?在大多数情况下,这是要备份的文件 -系统的其余部分对于大多数人来说很容易从Ubuntu CD重新安装。
8128

9
因为我讨厌重新安装所有应用程序和PPA,图标和主题。我的HD有时会导致安装程序崩溃,而我通常只是讨厌从头开始安装所有内容。
将于

Answers:


80

档案

请参阅此方法:http : //ubuntuforums.org/showthread.php? t= 35087

简而言之,backup命令为:sudo tar czf /backup.tar.gz --exclude=/backup.tar.gz --exclude=/dev --exclude=/mnt --exclude=/proc --exclude=/sys --exclude=/tmp --exclude=/lost+found /--exclude=如果需要,添加更多参数。

它将在处创建所有文件的存档,/backup.tar.gz然后将其复制到另一台计算机/驱动器上,如果安装呈梨形,则可以还原文件。您可以从一个LiveCD,通过在安装了“坏”的系统做/media还是/mnt和运行tar xf /path/to/drive/with/backup.tar.gz -C /mnt(代替实际的路径“坏”的系统)。

格鲁布

这不会涵盖GRUB,但是您可以按照此处的指南轻松地重新安装它。您只需要执行第三步和第四步即可


很棒的帖子!非常感谢,几乎可以回答我的所有问题
请问将于

我在这里用外部NTFS对您的命令进行实验,askubuntu.com / q / 788272/25388但失败。
莱奥波德·赫兹(LéoLéopoldHertz)2016年

2
tar文件通常有多大?例如,我在“ /”中有90GB的数据。但是由于空间不足,备份过程(使backup.tar.gz)停止了。是否可以在外部驱动器中创建backup.tar.gz文件?
阿卡亚·查特吉

1
OP明确表示“包括(...)我的主目录”,但您不包括所有用户的主目录(--exclude = / home)。我在这里想念什么吗?
Mephisto

1
引号中的命令之前缺少空格--exclude=/dev
约翰尼·犹他州

15

没有人注意到clonezilla。它可以完整显示硬盘驱动器的映像,因此可以绝对备份所有内容。就像刻录iso或创建可引导闪存驱动器一样简单。

实际备份需要一段时间,但是最可靠。


您如何能比evgeny的建议更好?有一些管理等工具吗?
莱奥列奥波尔德赫兹준 영

无法推荐clonezilla。我只是尝试了一下,却遇到了这个错误:sourceforge.net/p/clonezilla/discussion/Clonezilla_live/thread / ...似乎没有做任何事情
Hakaishin

9

要将您的系统克隆到另一个系统。或进行备份。在终端类型中:

dpkg --get-selections | grep -v deinstall > ubuntu-files

此命令将列出系统中所有已安装软件包的文件列表(并将其存储在当前工作目录中)。将此文件备份到硬盘,电子邮件等中(此文件很小)。

在新安装的ubuntu系统中运行:

sudo dpkg --set-selections <./ubuntu-files (will set it up and)

apt-get -y update
apt-get dselect-upgrade

这将仅安装您apt-get在旧系统中安装(带有)的那些软件包。

                                    (OR)

您可以使用以下方法备份所有.deb软件包/var/cache/apt/archives/并手动安装它们:

dpkg -i *.deb

在那之后运行更新周期。


这确实是一个有趣的策略。如何在您提出的(OR)下进行第二种方法。通过复制备份它们?
Mohammed Joraid'7

7

您可以使用Remastersys创建可引导的实时CD / DVD映像。这将像普通的Ubuntu CD一样安装。

要安装Remastersys,首先需要添加一个存储库:

deb http://www.geekconnection.org/remastersys/repository karmic/

然后,您可以照常从软件中心安装它。

安装后,使用它进行“ dist”备份。这意味着用户数据将从ISO映像中排除。

remastersys用户界面

这通常用于创建自定义发行版,但对于您要考虑的备份任务仍然有用。一个警告是,如果(的内容中/减去用户数据/home)占用的内存过多,则可能会失败,因为ISO文件格式只能容纳约4GB的数据。Remastersys使用一个称为squashfs的文件系统来压缩数据,因此您可以使用大约8GB的空间。


1
我试过,但它最后一次有太大所以去皮/排除的目录林不感兴趣的是对我好,然后当我备份我没有等待CD作为我的HD将是虽然咨询更快的感谢
威尔

6

尝试Remastersys
使用该程序,您可以对系统进行liveCD(与Ubuntu安装iso文件相同),并可以将其安装在硬盘上。工作非常简单(如果您知道如何将iso刻录到USB / CD / DVD)。
可以在我的11.10和11.04以及更旧的版本上完美运行。

安装:
编辑文件 /etc/apt/sources.list
add:# Remastersys
deb http://www.geekconnection.org/remastersys/repository karmic/ 并保存
然后在终端中运行:
sudo apt-get update
sudo apt-get install remastersys


5

这是我与SquashFS一起使用的解决方案。它与之前提出的TAR.GZ解决方案非常相似,但具有一些主要优点。

SquashFS是一种压缩文件系统,它完全存储在一个文件中。该文件可以安装到现有系统上,并且可以像其他分区一样以常规方式访问。与TAR.GZ的不同之处在于,SquashFS是一个成熟的文件系统,可以随机访问文件,而TAR只是一个很大的串联文件。

这意味着,如果您要装载整个文件系统的大型备份,就TAR.GZ而言(以我的经验)大约需要5个小时,而对于SquashFS则只需几分钟/秒。压缩/备份操作也是如此,SquashFS的速度要快很多倍。

更新2017年1月31日:看来不仅可以挂载squashfs文件,而且还可以使用熟悉的应用程序(例如Linux上的File Roller和Windows上的7-Zip等)作为常规存档打开它。

所以这是我用来备份根文件夹的命令:

sudo mksquashfs / /path/to/backup/hdd/root-backup.sqsh -e home media dev run mnt proc sys tmp

其中的“ -e”开关排除您要排除的文件夹(例如,在我的示例中为虚拟和外部Linux文件夹)。

备份完成后,我现在可以挂载它:

sudo mkdir /mnt/root_backup
sudo mount /path/to/backup/hdd/root-backup.sqsh /mnt/root_backup -t squashfs -o loop

现在只需等待几分钟(取决于归档文件的大小),然后在/ mnt / root_backup文件夹中欣赏所有文件。

可以对/ home / myname文件夹执行相同的操作,例如

sudo mksquashfs /home/myname /path/to/backup/hdd/home-backup.sqsh -e Dropbox GoogleDrive

我在这里排除了Dropbox和GoogleDrive,以避免将来出现任何潜在的问题,以防万一我从备份中还原这些文件夹并且它们变得与云中的实际文件混淆。

http://tldp.org/HOWTO/SquashFS-HOWTO/creatingandusing.html中查看更多信息


4

我们还可以使用rsync进行系统备份,并排除不需要的文件和文件夹。以下是执行此操作的命令:

#rsync -aAXv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /* /path/to/backup/folder

使用这-aAX组选项,文件以存档模式传输,从而确保保留符号链接,设备,权限和所有权,修改时间,ACL和扩展属性

--exclude选项将导致排除与给定模式匹配的文件。

参考:使用rsync进行完整的系统备份



2

时移。

TimeShift通过定期拍摄文件系统的增量快照来保护您的系统。这些快照可以在以后还原,以使您的系统进入创建快照时的确切状态。

打开终端并运行以下命令

sudo apt-add-repository -y ppa:teejee2008/ppa
sudo apt-get update
sudo apt-get install timeshift

屏幕截图

在此处输入图片说明

在此处输入图片说明


1

转到ubuntu软件中心找到 DéjàDup 备份管理器进行安装``运行并提供备份数据的路径,选择要备份的文件进行备份

稍后,您可以通过指定外部硬盘驱动器运气来源的位置来选择备份[https://launchpad.net/deja-dup]


我想备份整个系统,而不仅仅是音乐或视频。
阿尔瓦(Alvar)

@Alvar您可以选择“ /”或“文件系统”,然后进行备份(即整个系统)。
jaorizabal 2012年

如何安装?如何用它备份系统?
阿尔瓦(Alvar)2012年

它似乎确实是可靠的。只需在此处阅读一些用户评论,apps.ubuntu.com
cat / applications /

@ILIV好吧,评论很糟糕。很高兴知道。猜猜它可以用于单个文件或音乐。
Mohammed Joraid'7


0

Crashplan将备份您的所有系统文件和数据,并允许您在当前PC上恢复它或将其用于其他安装。

您可以备份到他们的在线系统,另一台计算机或任何连接的硬盘驱动器。


0

如果您安装Ubuntu的硬盘不是太大,则可以尝试从活动CD(任何Linux发行版都可以)引导并运行:

    dd if=/dev/sda of=/path/to/external/hardisk/mybackupfile

这样不仅可以备份整个硬盘,还可以备份所有空字节,但这是我能想到的唯一解决方案。要还原备份,请使用:

  dd if=/path/to/external/harddisk/mybackupfile of=/dev/sda

那么如何从整个HDD的副本中还原Ubuntu发行版?因为你做不到...
Alvar

@Alvar,方法是将备份存储在外部/云驱动器上,并通过实时CD / DVD / USB映像运行它。
MacroMan'3


0

您可以使用以下答案将整个Ubuntu安装备份到另一个分区:

该技术的优点:

  • 您可以在备份系统时继续使用该系统。必须注意,您仅使用Web浏览器应用程序,办公应用程序,观看视频等,而不使用诸如记帐或SQL之类的数据库应用程序。
  • 不备份虚拟文件系统。它们在每次启动时都会重新创建,因此它们一开始就没有用。
  • 第一次备份可能需要一个小时,但每日备份不会复制未更改的文件,因此可能只需要几分钟。
  • 您可以重新启动并使用备份。如果您想尝试可能会破坏系统的危险操作(例如在您的环境中未经测试的Ubuntu版本升级),则这将很有用。
  • 如果您完全破坏了生产环境,则可以重新启动克隆并使用相同的脚本将其复制回来。
  • Grub会使用正确的UUID条目自动更新。
  • /etc/fstab 将使用正确的UUID条目自动更新。

0

这对我在Ubuntu 18.04桌面上有效,仅需要“磁盘”(gnome-disk-utility),gparted和标准grub命令。

后备

  • 在驱动器上创建8GB分区并安装Ubuntu(最小安装)-称为实用程序
    • 安装gparted
  • 在这个系统内..
    • 运行磁盘,选择生产系统分区,然后选择创建分区映像
    • 将图像保存到计算机上任何分区上的ddMMMYYYY.img

恢复

  • 实用程序系统中,运行“磁盘”,然后单击分区以还原到

    • 选择“还原分区图像”,然后选择该图像
  • 运行gparted

    • 新分区中可能有未分配的空间
      • 分区->检查(和修复),无论
    • UUID将与原始分区相同,因此,如果计算机上仍然存在原始分区,则需要..
      • 分区->新的UUID
    • 注意UUID-例如。ba5b7f3a-54d2-4325-80e5-e7a159900d3f
    • 注意还原的分区 -例如。/ dev / sda6

fstab更新

  • 如果尚未创建新的UUID,请跳至下面的grub更新
  • 运行文件(即nautilus)
    • 点击+其他位置
    • 单击设备/分区-例如/ dev / sda6
  • 跑 ..
      df -hT
      # you will get something like ..
      /dev/sda6 xx xx /media/fred/ba5b7f3a-54d2-4325-80e5-e7a159900d3f/etc/fstab
  • 粘贴在最后一个条目中,以产生如下命令:
  sudo vi /media/fred/ba5b7f3a-54d2-4325-80e5-e7a159900d3f/etc/fstab
  • 更改“ fstab”中的“ /”条目以使用此UUID

grub更新

  • 运行以下命令(假设您的主引导记录位于/ dev / sda上)。
  # ensure all systems are found
  sudo os-prober
  # generate /boot/grub/grub.cfg
  sudo update-grub
  # search for root=UUID and check that the new UUID is used in some of these
  # if not, try sudo grub-mkconfig, seems to get it right eventually
  less /boot/grub/grub.cfg
  # update the master boot record
  sudo grub-install /dev/sda
  • 重新启动并进入已还原的系统
  • 检查您是否确实在还原的系统中 -注意“ /”行
df -hT | grep ext4
/dev/sda6      ext4       29G  6.1G   22G  23% /
/dev/sdb6      ext4      112G   86G   22G  81% /data
/dev/sda4      ext4      1.6T  377G  1.1T  26% /sata

来自新系统的最终grub更新

  • 从新系统运行此命令,以使该系统成为引导菜单中的默认系统(假设您的主引导记录位于/ dev / sda上)。
  sudo os-prober
  sudo update-grub
  sudo grub-install /dev/sda

-2

我使用了一个名为Back In Time的程序,该程序类似于Apple的Time Machine。

告诉您要备份到何处以及执行备份的频率很容易。

Back In Time在Ubuntu仓库中。


但这根本无法解释如何备份我的系统以及如何还原它。当我什至无法及时启动时,将无法提供帮助。如果您可以提出如何以这种方式及时使用备份的建议,我将不胜感激。干杯
将于

时光倒流是rsync的前端。您必须安装Ubuntu才能使用它。我同意fluteflute的上述评论,即备份文件更容易。那就是我想你想要的。
gamerchick02 2010年

我已经备份了文件;)我使ubuntu无法运行的次数比重新解决问题更容易重新安装或还原到备份(通常我需要修复它,因为我需要在摆弄和破坏之间做一些工作!)

对。我及时尝试设置自动备份,但遇到很多错误。大多数这样的:(它只是一小部分,并在根模式下运行IM)
威尔

1
上面提到的备份命令可能最适合您。我只建议使用Back in Time作为rsync等的前端。您可以选择要备份的内容,包括所有系统文件。
gamerchick02 2010年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.