我正在将现有的 ubuntu 10.04 LTS 虚拟服务器降级为内存和驱动器更小的服务器(从 80GB 降级到 40GB)。我的主机提供商 (hetzner.de) 不允许我进行就地降级,因此我必须创建新的服务器。制作第一个系统的图像并将其“应用”到新系统的最佳方法是什么?我知道还有其他答案,但就我的情况而言,我不确定我是否能够使用 Clonezilla 或其他 GUI 工具,因为安装非常简单,没有 GUI。
提前致谢
米歇尔
答案1
这听起来像是一份工作,排队音乐;Rsync!
编辑:我误读了这个问题,所以让我更新;
这听起来像是一份工作,排队音乐;Tar 和 Rsync!
答案2
我就是通过这种方式降级的。
首先我使用“aptitude update”和“aptitude upgrade”对旧系统进行了升级,使版本变为10.04.4。
然后我使用 TAR 实用程序存档了旧系统的整个磁盘。我在旧系统在线时执行了此操作,并将生成的存档存储在旧系统上。
然后,我使用 webhoster 实用程序创建了一个新的基础虚拟机。此时,我遇到了无法覆盖正在使用的现有文件的问题。所以我需要某种 Live CD(如 Jeff 上面建议的那样)
由于无法从 Live CD 启动,我使用了 webhoster 救援系统来获得类似的效果。当您启动到此系统时,您可以挂载读写实际系统。
因此,我使用 TAR 将存档扩展至 /NEW 目录中,然后复制各种目录,如 var、usr 等。我将现有目录重命名为 OLD 后缀。然后我重新启动,希望一切正常。然而,还是出现了一些问题。
第一次重启时,无法挂载驱动器。原因是新系统上的驱动器格式化为 EXT4,而 /etc/fstab 中是旧系统的设置,即 EXT3。因此,我再次在救援系统中重启,并在新系统中使用原始 fstab。
下次重新启动时,驱动器已安装,但系统无法获取 IP 地址。
原因是,由于我已经完全覆盖了 /etc 目录以及网络配置。我不知道如何重新配置,所以我使用 grep 在文本文件 eth0 中查找。我找到了很多条目,但要修复的是引用 MAC 地址的条目。一旦恢复到新系统接口的实际 MAC 地址,网络就可以再次工作了。
好的,现在我测试了 apache 和 mysql 是否正常工作。它们都没有工作。
原来是权限问题。我不太确定,可能是我忘了在 TAR 中添加 p 前缀(这应该可以保留权限)
为了避免手动设置权限,我这次使用 RSYNC 重新从旧服务器复制了文件。看来 RSYNC 恢复了权限,因为此后我可以启动我的博客了。
现在又记录了与日志轮换相关的错误。当然,这又是一个权限问题。
最后,我确实认为我的方法不太专业,这就是我在这里提问的原因:)
答案3
首先备份你的mysql数据库
mysqldump --add-drop-table -h mysqlhostserver -u mysqlusername -p databasename (tablename tablename tablename) | bzip2 -c > blog.bak.sql.bz2
有关其他选项,请参阅:http://codex.wordpress.org/Backing_Up_Your_Database
然后存档(tar),包括 /etc、/var/www 以及您的 ftp 服务器可能拥有的任何其他数据(我假设您使用它来更新 wordpress)。
将档案传输到您的新服务器并恢复您的 mysql 数据库以及 /etc(apache)中的任何数据和自定义设置。