有没有办法备份我所有的程序,软件,甚至库和它们在Linux系统上的数据,就像应用程序和基于TitaniumBackup的安卓系统上的数据一样?我想备份文件中的所有当前程序,并在另一个Linux系统上再次激活它们。
发布于 2015-12-27 00:42:00
在UNIX类型系统上备份系统文件通常不是按文件进行的。
如果要将系统迁移到新硬件,只需使用活动映像(如knoppix )启动旧机器,并使用dd将硬盘驱动器分区映像到网络上的远程计算机或外部硬盘驱动器。然后,您可以在新机器上启动活动映像,并使用dd将磁盘映像写入新分区。请注意,新机器将具有与旧机器相同的配置,因此如果您试图在保留旧系统的同时“克隆”系统,则需要更改一些配置设置,如主机名和任何静态IP地址。根据您正在使用的软件,如果要同时使用这两个系统,可能还需要进行其他一些小的更改。
如果完全克隆一个系统并不是您想要的,而且新系统与旧系统是相同的Linux发行版,那么就使用包管理器获得已安装软件的列表。然后,新系统上的包管理器可以使用该列表来安装所有的软件和库。之后,只需将数据和配置文件从旧机器复制到新计算机。下面是一个URL,描述了各种发行版的这个过程.
在没有使用包管理器的情况下安装的任何软件都需要手动复制。在这种情况下,scp或rsync是您要寻找的工具。这类软件通常安装在/opt (用于较旧的“遗留”软件)或/usr/local/下。您可以以这种方式克隆整个系统,但是如果您错过了任何重要的东西,您就会遇到问题(因此我前面提到的两种方法都是首选的)。基于Debian的发行版应该将所有重要文件包含在以下文件夹中:/bin、/etc、/home、/lib、/lib64、/lib32、/opt (如果不是空的)、/root、/srv、/sbin、/usr和/var。从活动映像启动也是一个好主意,因为它将确保在您试图复制文件时不会修改任何文件(特别是在/var/log中)。这看起来应该是:
rsync --progress -a -r /bin /etc /home /lib /lib64 /lib32 /opt /root /srv /sbin /usr /var username@remotehostname.domainname:/https://unix.stackexchange.com/questions/251709
复制相似问题