从 Dreamhost 的 Debian 档案库迁移到 Debian 本体

从 Dreamhost 的 Debian 档案库迁移到 Debian 本体

这是当前sources.list运行 Debian 的托管 Dreamhost 帐户的文件

# Generated by ndn-autoupdate

deb http://debian.di.newdream.net/ lenny ndn
deb http://debian.newdream.net/ lenny main contrib non-free
deb http://security.debian.org/ lenny/updates main contrib non-free
deb http://www.backports.org/debian/ lenny-backports main contrib non-free
deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free
deb http://debian.dc-uoit.net/debian-multimedia/ lenny main

迁移到 Debian 的最佳方法是什么?我只想使用上游Lenny Squeeze 档案?似乎 Dreamhost 安装了一些我不想要的修改过的软件包。

ndn-analog ndn-apache-helper ndn-apache22 ndn-apache22-modcband ndn-apache22-modfastcgi ndn-apache22-modfcgid ndn-apache22-modlimitipconn ndn-apache22-modpagespeed ndn-apache22-modsecurity2 ndn-apache22-modxsendfile ndn-apache22-php ndn-apache22-php5 ndn-apache22-svn ndn-autoupdate ndn-crashlog ndn-crontab ndn-daemontools ndn-darwinss ndn-debuglogging ndn-dh-base ndn-dh-web-missing ndn-dh-web-parking ndn-dh-web-phpmyadmin ndn-everywhere ndn-imagick ndn-interpreters ndn-iptables ndn-java ndn-keyring ndn-lighttpd ndn-mailcerts ndn-megacli ndn-misc ndn-miva ndn-mongodb ndn-netsaint-nrpe ndn-netsaint-plugins ndn-nginx ndn-ntpdate-init ndn-passenger ndn-php4-compat ndn-php5-cgi ndn-php5-mongo ndn-php5-xcache ndn-php53 ndn-php53-suhosin ndn-procwatch ndn-rubygems ndn-safetynet ndn-sec ndn-twcli ndn-vserver ndn-web

我真的很想使用 Debian 提供的任何用于基础或服务器的元包?

只需切换档案、安装基于 Debian 的元包并删除 Dreamhost 安装的软件包就足够了吗?

答案1

看起来他们只是在“标准”lenny 之外添加了自己的档案。您可能只需从文件中删除“newdream”服务器以及(可能)backports 和 debian-multimedia 服务器,添加一个普通的 lenny 镜像,apt-get update然后安装所需的软件包。如果 ndn 软件包设计正确,它们应该与“标准”软件包冲突,因此当您要求 apt 安装标准软件包时,apt 将替换匹配的 ndn 软件包,而不会太麻烦(您可能必须一次安装所需的所有软件包)。然后只需删除任何剩余的已安装 ndn 软件包。

话虽如此,列表中的很多内容对于 lenny 来说都是不可用的(其中大部分我根本不认识,而且必须是 dreamhosts 自定义的,删除这些可能不是一个好主意),而且 backports.org 没有针对 lenny 的 php5.3。你需要dotdeb.org 存储库如果您想要 lenny 的 php5.3。

至于“任何元包”,我不确定你的意思。如果你正在寻找某种“默认”包,那么该tasksel程序(在同名的包中)允许你选择一个服务器角色(或多个角色),它将自动安装与该角色匹配的包(例如,webserver 或 mailserver)。

答案2

我只是想明确地说出我做了什么来使我的系统更像 vanilla/upstream Debian。

  1. sudo apt-get install debfoster
  2. 更改存储库。/etc/apt/sources.list使用最新的 Debian 更新。
  3. sudo apt-get update
  4. 大量删除糟糕的 Dreamhost 元包:dpkg --get-selections 'ndn*' | awk '{if ($2 == "install") { print $1 } }' | xargs sudo dpkg -r
  5. 清理不再使用的东西,apt-get autoremove
  6. 清理您可能不需要的东西debfoster[P]rune对您没有吸引力元包,大约 5 分钟后退出...——足够好了。
  7. sudo apt-get dist-upgrade

东西会坏掉。基本的 Debian 体验会克服。Dreamhost 安装了一些软件包,例如libwww-twilio-api-perl没有前缀的软件包ndn-。这些软件包需要在某个时候强制删除,因为它们会与上游 Debian 冲突。在这种情况下,它libwww-twilio-api-perl声称它提供了,/usr/share/perl/5.10所以 Debian Perl 软件包无法覆盖/usr/share/perl/5.10。我不得不强制删除它和另一个或两个软件包。

我只遇到了一个配置问题,与bash.rc或 有关bash.profile。上游没有设置 rlimits。我决定使用那个。

强行移除意味着dpkg -r <conflicting package>

答案3

首先,准备好手动迁移配置或手动修复损坏的配置,例如 apache 和所有其他相关软件包。如果这个系统很重要,我会在尝试任何这些之前先备份它。

  1. 将您的源文件更新为 vanilla lenny
  2. sudo env DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confnew" -yy dist-upgrade- 这将自动将你升级到 lenny
  3. aptitude search ?obsolete- 这将向您展示原版 Lenny 中没有的所有内容。
  4. sudo aptitude remove ~o- 这将删除原版 Lenny 中没有的所有内容,但会保留配置文件。
  5. sudo apt-get install apache2 ...- 安装您想要的任何 Debian 软件包。

完成这项工作后,我强烈建议您接下来升级到 Squeeze,然后使用 squeeze 源文件重复步骤 2-4。

相关内容