Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

This is currently the sources.list file with a hosted Dreamhost account running Debian

# Generated by ndn-autoupdate

deb lenny ndn
deb lenny main contrib non-free
deb lenny/updates main contrib non-free
deb lenny-backports main contrib non-free
deb lenny/volatile main contrib non-free
deb lenny main

What is the best way to migrate to Debian proper? I'd like to just use the upstream Lenny Squeeze archives? It seems Dreamhost installed a bunch of modified packages that I don't want.

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

I'd really just like whatever meta-package Debian provides for base or server use?

Is it enough to just switch the archives, install a Debian-base metapackage, and remove the packages Dreamhost installed?

share|improve this question

It looks like they just added their own archives in addition to "standard" lenny. You could probably just remove the "newdream" servers from the file along with (potentially) the backports and debian-multimedia servers, add a normal lenny mirror, apt-get update and then install the packages that you want. If the ndn packages were designed right, they should conflict with the "standard" packages so when you ask apt to install the standard package, apt will replace the matching ndn package without too much fuss (you might have to install all the packages you want at once). Then just remove any remaining installed ndn packages.

That said, a lot of the stuff in that list is not available to straight lenny (most of it I don't recognize at all and must be custom to dreamhosts, removing these may be a bad idea), and doesn't have php5.3 for lenny. You'll need the repository if you want php5.3 for lenny.

As for "whatever meta-package" I'm not sure what you mean by this. If you're looking for some kind of "default" packages, then the tasksel program (in the package of the same name) allows you to pick a server role (or more than one role) and it will automatically install packages matching that role (for instance, webserver or mailserver).

share|improve this answer
up vote 3 down vote accepted

I just wanted to say explicitly what I did to make my system more like vanilla/upstream Debian.

  1. sudo apt-get install debfoster
  2. Change repositories. Update /etc/apt/sources.list with the latest Debian goodness.
  3. sudo apt-get update
  4. remove the crappy Dreamhost meta packages en massé: dpkg --get-selections 'ndn*' | awk '{if ($2 == "install") { print $1 } }' | xargs sudo dpkg -r
  5. Clean up things no longer used, apt-get autoremove
  6. Clean up things you probably don't need with debfoster. [P]rune the meta-packages that don't appeal to you, quit after a 5 minutes or so... -- good enough.
  7. sudo apt-get dist-upgrade

Stuff will break. Basic Debian experience will overcome. There were a few packages Dreamhost installed, like libwww-twilio-api-perl which weren't prefixed with ndn-. Those packages need to be forcefully removed at some point because they'll conflict with upstream Debian. In the case of libwww-twilio-api-perl it was claiming that it provided /usr/share/perl/5.10 so the Debian Perl packages were not able to overwrite /usr/share/perl/5.10. I had to forcefully remove it and another package or two.

There was only one configuration problem I had, with a bash.rc or bash.profile. The upstream one wasn't setting rlimits. I decided to go with that one.

Forcefully remove means dpkg -r <conflicting package>.

share|improve this answer

First, be prepared to manually migrate configurations or manually repair broken configurations for things like apache and all those other related packages. If this system is important, I would back it up before trying any of this.

  1. Update your sources file to vanilla lenny
  2. sudo env DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confnew" -yy dist-upgrade - this will auto-upgrade you to lenny
  3. aptitude search ?obsolete - This will show you everything that is not in vanilla Lenny.
  4. sudo aptitude remove ~o - This will delete everything that is not in vanilla Lenny, but should leave the configuration files.
  5. sudo apt-get install apache2 ... - Install whatever Debian packages you want.

After you get this working, I'd highly recommend upgrading to Squeeze next and repeating steps 2-4 with a squeeze sources file.

share|improve this answer
I ended up going straight to Squeeze. – Evan Carroll May 6 '11 at 17:12

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.