06.28.2005 18:38

Upgrading to etch, the new Debian testing


For about a year now, I've been running Debian on my desktop. I tried out unstable for a little bit, had problems (been such a long time I don't recall what they were), so went to testing back near the beginning. Now the new stable is Sarge, and I've waited a few weeks for things to settle down, and I'm now doing an `apt-get update && apt-get update` from Sarge/stable to etch/testing. That's probably not the best way to go from one Debian distribution (Sarge) to another (etch); `apt-get dist-upgrade` would get uninstalled dependencies, but I'll be conservative.

When Sarge was officially released, I changed my /etc/apt/sources.list to replace occurrences of 'testing' with 'stable', and now I've rolled back the changes, replacing 'stable' with 'testing'.

An aside: I'm in Raleigh, North Carolina, U.S.A., and while there are .deb repositories physically close to me, those physically close repositories aren't necessarily the ones with the largest bandwidth. Some sites throttle, so choosing the closest physically might lengthen the time for downloads. The excellent program apt-spy '[p]arses a list of mirrors and tests each of the mirrors for bandwidth. Writes a /etc/apt/sources.list file based on the responses it gets.' I haven't re-run apt-spy after rolling back the changes, but I noticed that downloading the packages topped out at close to 600 kB/s on the cable modem.

Doing `apt-get update && apt-get upgrade` returned
Get:1 http://debian.uchicago.edu testing/main Packages [3432kB]
Get:2 ftp://ftp.us.debian.org testing/main Packages [3439kB]
Get:3 http://debian.uchicago.edu testing/main Release [81B]

[snip]

Fetched 8509kB in 14s (573kB/s)
Reading Package Lists... Done
Reading Package Lists... Done
Building Dependency Tree... Done
The following packages have been kept back:
  bind9-host dnsutils evolution libgcj-common ted ted-common
The following packages will be upgraded:
  alien apt-listbugs arj aspell aspell-bin bacula-common bacula-console
  bacula-director-common bacula-fd bacula-sd balsa base-config base-files bash

[snip]

  xemacs21-support xemacs21-supportel xlibs xlibs-data xlibs-static-dev
  xosview zip
297 upgraded, 0 newly installed, 0 to remove and 6 not upgraded.
Need to get 182MB/215MB of archives.
After unpacking 17.4MB disk space will be freed.
E: You don't have enough free space in /var/cache/apt/archives/.
Oops. Need to do `apt-get clean` to blow away the archives cache, and the downloads then proceeded.
Fetched 215MB in 9m56s (361kB/s)
Reading package fields... Done
Reading package status... Done
Retrieving bug reports... Done
grave bugs of libmagick6 (6:6.0.6.2-2.2 -> 6:6.0.6.2-2.4) < done >
 #314628 - libmagick6: Missing dependency (libltdl3) on amd64 platform
grave bugs of imagemagick (6:6.0.6.2-2.2 -> 6:6.0.6.2-2.4) < done >
 #315013 - display command fails with "error while loading shared libraries"

[snip]

Summary:
 xlibs(1 bug), webmin(1 bug), initrd-tools(1 bug), bittorrent(1 bug), libmagick6(1 bug), imagemagick(2 bugs), mozilla(1 bug), squid(2 bugs)
Are you sure you want to install/upgrade the above packages? [Y/n/?/...]
The bug retrieval is courtesy of apt-listbugs, an even more excellent program than apt-spy. Note the '< done >' flags on libmagick6 and imagemagick: I'll ignore those bug reports and go ahead with the install. The other packages (xlibs, webmin, initrd-tools, bittorrent, mozilla and squid) all have '< open >' bugs, so I choose to not install those. That means tapping 'n' at the 'Are you sure you want to install/upgrade the above packages?' prompt, which aborts the install and requires me to do `apt-get install [package0, package1 ... packageN], but with swipe and paste, putting the package names on one command line is a snap. I just swipe the list of packages downloaded, paste it into an editor, make sure the list is all one line (no carriage returns), cut the packages with open bugs, swipe it again and last, paste it after `apt-get install` on a root commandline.
 xemacs21-gnome-mule xemacs21-mule xemacs21-mulesupport xemacs21-support
 xemacs21-supportel xosview zip
274 upgraded, 0 newly installed, 0 to remove and 29 not upgraded.
Need to get 0B/167MB of archives.
After unpacking 18.5MB disk space will be freed.
Reading package fields... Done
Reading package status... Done
Retrieving bug reports... Done
Reading changelogs... [here follows an announcement which I exit by tapping 'q']
Now I proceed to the configurations. Defaults are usually sane, and my rule of thumb is to accept defaults unless I know a different selection is what I want or need. The first program to configure is chkrootkit: the option is to 'only report problems if they differ from the previous day's run', and I choose the default 'No'.

sysstat is next: its data format changed, and I get a warning that '[e]xisting data files need to be deleted.' I have no need for old data, so I tap < enter > to select 'OK' and then agree to the old file deletion.

Verbose 'Unpacking replacement [packagename]', 'Preparing to replace [packagename]', 'Setting up [packagename]', a few items such as 'Stopping periodic command scheduler: cron' (inetd, powertweak and FAM daemons've also stopped; note to self: make sure inetd, powertweak, FAM and cron've restarted afterwards), note a problem in the xemacs compilation: loading erc (e[macs]rc: the emacs relay chat 'client') resulted in an unspecified error ... and I'm back to a root prompt with no other errors returned.

`ps ax|egrep "(inet|powert|fam|cron)"` shows the daemons running.

Success. If I want, I can see why the packages bind9-host dnsutils evolution libgcj-common ted ted-common were held back. Probably an uninstalled dependency.