我需要备份哪些目录?


43

为了备份所有用户生成的文件,应该备份哪些目录?

从香草的debian安装中,我可以做得足够容易来获得想要的软件包。因此,如果我不想备份整个系统,那么用户生成的配置和数据文件将驻留在文件系统中的所有文件中?


3
所有这些答案中缺少的是备份文件会发生的情况。新安装完成后,您是否将它们复制回去?这样做会出现什么问题?
安德鲁

@Andrew好问题-也许有新帖子?
user394

1
我想我只是在识别甚至Linux都存在的缺陷。希望它会影响操作系统的未来设计。
安德鲁

Answers:


14

这取决于您所说的“用户生成”。您将拥有的大多数配置与系统上运行的服务/守护程序和应用程序有关。他们中的大多数将其配置放在/ etc中。基于用户的应用程序在主目录中(通常在应用程序目录中)具有其配置。但是您可以使用一些应用程序,也将其数据存储在/ var / lib或/ var / spool中。

因此,答案是:“取决于您的计算机上正在运行什么”。


2
您忘记了/home
xenoterracide

3
嗯,不,我写了“基于用户的应用程序在您的主目录中有其配置”。
Luc Stepniewski 2010年

我真的认为这个问题应该以“所需文件夹”列表,“可选”文件夹以及您自己的文件的列表结尾。举例,对面的名单可能是不错的,所以,你并不需要保存,像/ dev文件夹,到/ mnt,/ SYS等
erm3nda

2
请注意,您可以安装和使用etckeeper(至少在Debian上可用)。它会在您的/etc目录中启动git存储库,并允许您对配置更改进行版本控制。
Pierre-Yves LeDévéhat18年

61

由于此问题有许多不同的答案,因此以下列表应将建议合并为一个综合列表:

在大多数情况下,您需要备份以下内容:

  • /home/ 用于用户数据和配置。
  • /etc/ 用于系统范围的配置文件。
  • /var/包含通常要备份的目录和不想备份的目录。请参阅下面的详细说明。

需要考虑的其他目录是:

  • /usr/local/手动安装的软件包(即未通过apt安装的软件包)安装在此处。如果您在此处安装了软件包,则可能要备份整个目录,因此不必重新安装它们。如果软件包本身对您而言并不重要,则备份/usr/local/etc/和备份就足够了/usr/local/src/
  • /opt/如果您在此处未存储任何内容,则无需备份。如果您将内容存储在此处,则最好决定是否要备份它。
  • /srv/很像/opt/,但是按照惯例,它更有可能包含您实际要备份的数据。
  • /root/存储root用户的配置。如果那对您很重要,则应备份它。

/var/

/var/ 在大多数情况下,其中包含许多您要备份的文件,但也有一些您不想备份的文件。

您可能要备份这些:

  • /var/lib/该目录包含已安装应用程序的可变状态数据。根据要备份该状态的应用程序或不备份该状态。如果您想安全起见,则可以备份所有内容。否则,您可以查看每个子目录并自行决定所包含的数据是否足够重要以进行备份。
  • /var/mail/ 您通常要备份本地邮件。
  • /var/www/ 如果您的Web根目录位于此处,并且这是Web内容存储的唯一位置,则需要对其进行备份。
  • /var/games/ 如果系统范围内的游戏数据对您来说足够重要,则可能需要备份这些文件(尽管不是很多游戏使用此存储)。
  • /var/backups/通常包含从您通常需要备份的其他数据自动生成的文件,但是这些文件在备份中会占用不必要的空间,否则将给备份带来麻烦。例如,dpkg在此处转储已安装软件包的列表,因此您以后可以在还原备份后知道要安装哪些软件包。您可能要备份它。

您可能不想备份这些:

  • /var/cache/与名称相反,此目录的某些内容很重要,因此,根据经验,请单独检查每个子目录,您自己放在此处的所有内容都很重要。您可能还想备份/var/cache/debconf/
  • /var/lock/ 通常(总是)不需要备份锁。
  • /var/run/ 包含仅对正在运行的系统重要的数据,即,当您关闭系统时,将不再需要该数据。
  • /var/spool/ 通常重要的数据不应存储在此处,但您可能需要检查。
  • /var/spool/cron/crontabs/ 可能包含许多命令或复杂的计划,即使依赖于其他系统,也需要花费大量精力来组合在一起。

您必须自行决定以下事项:

  • /var/local/ 您通常知道您是否在此处存储了某些内容,以及是否希望将其存储在备份中。
  • /var/opt/查看/var/local/或更好地检查一些重要的东西是否存储在这里。
  • /var/log/ 取决于您的日志对您是否重要以及您是否有足够的空间来存储它们(随着时间的推移,它们可能会占用大量备份空间)。

etc keeper是备份/etc文件夹的好方法。
JCM

里面是否有/etc不需要备份的内容?
DeveloperACE

DeveloperACE:通常不是。/etc包含系统范围的配置文件。通常,您要备份配置,因此当生活数据丢失时,您不必重新配置所有内容。可以说,您可能不想备份所有从未更改过的配置文件,因此它们仍然是原始的默认配置,但是我知道没有备份软件可以使这种区分很容易,值得您付出努力。
克里兹菲茨

@Kritzefitz是否可以将/ etc / shadow之类的文件还原到全新安装,但是会导致问题呢?
DeveloperACE

还是其中任何硬件/设备专用?
DeveloperACE

14

你会备份一些“垃圾”这样做......但如果你只是备份所有的/home/etc以及/var/你应该拥有一切(除非你知道你把什么别的地方)。你要离开了/var/tmp/var/run//var/lock是肯定的。之后,我将阅读Luc的回复。


8
怎么/root
Tik0 2014年

3
/opt/usr/local
tgharold '16

3

简而言之,您要备份/home(通常是用户生成的文件所在的位置)/etc/usr/local。最后两个将备份您的配置文件。我建议使用某些备份软件,例如sbackup,它可以满足您的需求,并且易于使用。


3

需要牢记的其他几个目录-大多数人中没有任何目录,或者它们甚至可能不存在,但是在某些情况下,您可能会发现一些重要的内容!

/usr/local
/opt
/root

在我的系统上,/ usr / local中有一些自定义系统脚本,/ opt中有一些由下载的软件包(即不是.deb软件包)安装的游戏,/ root有一些配置文件供管理员用户使用。


2

这取决于您安装的应用程序和服务以及所使用的Linux版本。大多数设置位于中/etc,因此这是要备份的重要文件夹。

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.