凭借对各种硬件的支持,以及经过验证的速度和可靠性,Linux 能够应对扩展的挑战,以满足不断增长的资源需求。 这可以包括迁移到 SMP(对称多处理)配置以满足更大的处理需求,RAID 级别 0 到 5(软件或硬件驱动模式)等等。
有时,您可能会觉得您的 Linux 服务器已经超过了其运行的硬件的限制,需要执行 Linux 主要版本升级,或者可能需要迁移到不同的 Linux 发行版。 当然,有两种方法可以做到这一点。 要么您将服务器留在现有或升级的硬件上(在这种情况下,您只需关闭服务,备份数据,执行所需的修改,然后在需要时恢复数据),要么在更彻底的情况下,将服务器迁移到新硬件。
本节将更侧重于后一种情况,即您将实际将各种服务从旧服务器迁移到新服务器。 当然,有几种迁移策略,但本节将尝试提供一些粗略的指南,您可以遵循这些指南,以确保您的迁移工作成功,并最大限度地减少对用户的干扰。
根据需要准备您的新服务器; 安装和配置 Linux,以便支持您的新硬件设备,并启用任何必需的守护进程和基于内核的功能(例如防火墙)。 有关详细信息,请参阅第 4 章以及第 10.6 节。
设置您现有的服务(例如 Apache Web 服务器、Samba 或 Netatalk 文件和打印服务等),并使用测试数据至少几天,以确保一切都按预期工作。 有关详细信息,请参阅第 7.4 节以及第 7.5 节。 不要忘记确保您在 ``/etc/'' 目录中所做的任何更改或自定义脚本,包括 ``/etc/rc.d/'' 中的任何内容,也已在新服务器上按需完成。 特别重要的是,您要记住将您的用户帐户信息移动到 ``/etc/passwd'', ``/etc/group'' 和(如果您使用影子密码)``/etc/shadow''!
关闭旧服务器上的服务,以便您的文件系统看到最少的文件更新活动。 显然,您不希望用户在旧服务器上上传网页和接收电子邮件,而您正在将数据恢复到新服务器上! 作为 root 用户,您可以使用以下命令关闭大多数服务
killall httpd atalkd smbd nmbd squid sendmail ftpd |
上面的命令将关闭 Web 服务器、文件和打印服务、电子邮件服务器和 FTP 服务。(您可能运行的服务比我上面列出的服务少或多。检查您的进程列表并终止您认为合适的任何其他服务;有关详细信息,请参阅第 9.2 节。)
您可能还想编辑旧服务器上的 ``/etc/inetd.conf'' 文件,并使用 ``##
killall -HUP inetd |
'' 字符注释掉任何服务(例如 FTP、IMAP 和 POP3 服务),这些服务可能会导致文件系统更新。 然后,再次以 root 用户身份,键入上面的命令将重新加载 TCP 包装器(Internet 服务的安全包装器),以便将来连接到您在 ``/etc/inet.conf
'' 文件中禁用的任何服务都不会被加载)。现在您应该能够将数据从一个系统移动到另一个系统。 很可能,您已经准备好您的新服务器,使其具备运行所需的一切,包括您希望安装的任何 Red Hat 发行版未附带的其他软件。 因此,您可能需要备份存储在 ``'', ``/home/var/spool'' 以及可选的文件系统(例如 ``/archive'',如果适用)中的任何数据。 这是一个示例命令,它使用 ``tar
cd / tar zcvpf /tmp/backup_data.tar.gz --exclude=var/spool/squid \ home archive var/spool |
'' 实用程序来创建数据的压缩备份文件'' 以及可选的文件系统(例如 ``'', ``现在您应该能够将数据从一个系统移动到另一个系统。 很可能,您已经准备好您的新服务器,使其具备运行所需的一切,包括您希望安装的任何 Red Hat 发行版未附带的其他软件。 因此,您可能需要备份存储在 ``上面的命令会将 ``/home/home'' 和 ``/archive
'' 文件系统(或子目录,取决于您如何设置系统)的备份写入到名为 ``/tmp/backup_data.tar.gz'' 的文件中,格式为压缩 tar 格式。 确保您有足够的空间来创建备份,或将其写入其他位置!提示:提示:您可以使用 ``du'' 实用程序来帮助确定所需的空间。 例如,要确定 ``/archive/
du -h -s /archive /home'' 和 ``/home/'' 目录树的需求,请键入/tmp/backup_data.tar.gz请记住,上面的命令将报告您的数据的实际大小,但是如果您使用 tar 的 ``
z
cd / tar zxvpf /tmp/backup_data.tar.gz |
'' 选项(如上所示)来压缩映像文件,则您的使用需求可能会大大减少。 将 ``
du
'' 命令的输出视为所需空间的最坏情况估计。
上一页 | 现在,您可以将备份数据从 tar 文件恢复到新服务器。 您可以直接通过 NFS 恢复它(有关如何配置 NFS 的详细信息,请参阅第 7.6 节),或者只是使用 FTP 将其传输过来并在本地解压缩。 这是一个示例,它将恢复如上所述备份的文件 | 下一页 |
接下来,如有必要,交换您的 IP 地址,以便您的新服务器在旧地址上可见。 | 最后,您可能希望关闭并重新启动服务器,以确保没有出现意外的错误消息。 有关详细信息,请参阅第 6.7 节。 | 完成后,请确保一切都按预期工作! 如果没有,您可以随时重新启用您在旧服务器上禁用的任何服务并重新启动它们,以便用户可以继续使用它,直到您解决新服务器上的问题(但请记住,如果您选择这样做,则需要再次重复上述步骤)。 |