[7764] in testers
Re: auto-update can now remove debathena-workstation
daemon@ATHENA.MIT.EDU (Greg Price)
Sat Nov 29 01:55:47 2008
Date: Sat, 29 Nov 2008 01:55:03 -0500
From: Greg Price <price@MIT.EDU>
To: ghudson@mit.edu
Cc: testers@mit.edu, athena10@mit.edu
Message-ID: <20081129065502.GA10836@vinegar-pot.mit.edu>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <200811271552.mARFqbkg020478@outgoing.mit.edu>
From a little experimentation, it looks like the issue is that
aptitude with --schedule-only doesn't run the general
dependency-resolver, so that in your case when the `aptitude search`
ran it didn't know yet that it had a problem that it was going to
"fix" by removing debathena-workstation and other packages. Only when
it hit the `aptitude install` just after the snippet quoted below
did it make that decision.
It seems unfortunate that --schedule-only actually changes the
behavior of aptitude. Possibly this should be reported and pursued
as a bug.
Greg
On Thu, Nov 27, 2008 at 10:52:37AM -0500, ghudson@MIT.EDU wrote:
> Yesterday my machine "ate itself" (though recovery was easy) in that
> the update decided to remove debathena-workstation. Here are the
> details:
>
> 1. On Nov 25 16:44, the machine updated debathena-auto-update:
>
> Preparing to replace debathena-auto-update 1.5~ubuntu8.04 (using .../debathena-auto-update_1.6~ubuntu8.04_all.deb) ...
>
> I believe this update contained a change written by Anders to solve a
> previous bug (auto-update can remove openafs-modules-generic). I
> reviewed the change at the time but it didn't receive any testing.
>
> 2. On Nov 26 11:44, the machine encountered a broken Debathena
> dependency and responded by removing debathena-workstation. The
> complete log is at the end of this message. I belive the specific
> broken dependency has already been addressed by uploading
> python-hesiod 0.2.10.
>
> Although I was unable to log in as myself any more, I was still able
> to log in remotely as root (yay), and repair the machine by running
> "aptitude install debathena-workstation", which executed cleanly. I
> didn't even lose my screen session.
>
> As a development refresher, the update script lives in
> debathena/config/auto-update/debian/athena-auto-update. The following
> code fragment is supposed to protect against metapackage removal but
> apparently does not:
>
> v aptitude --quiet --assume-yes keep-all
> v aptitude --quiet --assume-yes --schedule-only dist-upgrade
> result=$(aptitude -F "%p" search '~i!~VTARGET(^debathena-cluster$ | ^debathena-workstation$ | ^debathena-login$ | ^debathena-standard$ | ^openafs-modules-~D^linux-image-)')
> if [ -n "$result" ]; then
> echo "** metapackages would be removed by the update, aborting:" $result
> v aptitude --quiet --assume-yes keep-all
>
> -----
> ** Beginning Athena auto-update at Wed Nov 26 11:44:19 EST 2008
> ** Running: aptitude --quiet --assume-yes --download-only full-upgrade
> Reading package lists...
> Building dependency tree...
> Reading state information...
> Reading extended state information...
> Initializing package states...
> Building tag database...
> The following packages are BROKEN:
> debathena-pyhesiodfs
> 1 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
> Need to get 8224B of archives. After unpacking 0B will be used.
> The following packages have unmet dependencies:
> debathena-pyhesiodfs: Depends: python-hesiod (>= 0.2.10) but 0.2.9.1-1debathena1~ubuntu8.04 is installed.
> Resolving dependencies...
> The following actions will resolve these dependencies:
>
> Remove the following packages:
> debathena-dotfiles
> debathena-gconf2-config
> debathena-locker
> debathena-login
> debathena-mit-automounter
> debathena-nsswitch-config
> debathena-pam-config
> debathena-pyhesiodfs
> debathena-standard
> debathena-workstation
> debathena-xsession
>
> Leave the following dependencies unresolved:
> debathena-afs-config recommends debathena-mit-automounter
> Score is -2249
>
> The following packages are unused and will be REMOVED:
> athena-jot debathena-afs-config debathena-athena-libraries
> debathena-athinfo debathena-athinfod debathena-athrun debathena-authwatch
> debathena-base debathena-bash-config debathena-clients
> debathena-counterlog debathena-cupsys-config debathena-delete
> debathena-discuss debathena-discuss-emacs debathena-emacs-config
> debathena-evolution-wrapper debathena-finger-config
> debathena-firefox-extension debathena-firefox-wrapper debathena-from
> debathena-from-config debathena-gdm-config debathena-get-message
> debathena-hesiod-config debathena-hostinfo debathena-just
> debathena-ldap-config debathena-lert debathena-libgms debathena-lprng
> debathena-lprng-config debathena-mailquota debathena-mailusage
> debathena-mitmailappend debathena-mitmailcreate debathena-mitmaildel
> debathena-mitmailexp debathena-mitmailmove debathena-mitmailrename
> debathena-mitmailscan debathena-mitmailshow debathena-mitmailutils
> debathena-moira-clients debathena-moira-passwd-config debathena-nmh
> debathena-ntp-config debathena-pidgin-wrapper debathena-printing-config
> debathena-quota debathena-quota-config debathena-ssh-client-config
> debathena-ssh-server-config debathena-ssl-certificates
> debathena-tcsh-config debathena-tellme debathena-tex-extras
> debathena-transcript-glue debathena-xcluster debathena-xdsc
> debathena-zephyr-config gcc-3.4-base lib32g2c0 libcyrus-imap-perl22
> libgnome2-gconf-perl libnss-afspag libnss-nonlocal libpam-athena-locker
> libpam-debathena-home-type libpam-krb5 libpam-krb524 libpam-mktemp
> libsasl2-krb4-mit libsasl2-modules-gssapi-mit openafs-client openafs-krb5
> openafs-modules-2.6.24-19-generic owl psutils python-fuse tcsh tzc
> The following packages will be automatically REMOVED:
> debathena-dotfiles debathena-gconf2-config debathena-locker
> debathena-login debathena-mit-automounter debathena-nsswitch-config
> debathena-pam-config debathena-pyhesiodfs debathena-standard
> debathena-workstation debathena-xsession
> The following packages will be REMOVED:
> debathena-dotfiles debathena-gconf2-config debathena-locker
> debathena-login debathena-mit-automounter debathena-nsswitch-config
> debathena-pam-config debathena-pyhesiodfs debathena-standard
> debathena-workstation debathena-xsession
> 0 packages upgraded, 0 newly installed, 93 to remove and 0 not upgraded.
> Need to get 0B of archives. After unpacking 44.4MB will be freed.
> Writing extended state information...
> Reading package lists...
> Building dependency tree...
> Reading state information...
> Reading extended state information...
> Initializing package states...
> Building tag database...
> ** Running: aptitude --quiet --assume-yes keep-all
> Reading package lists...
> Building dependency tree...
> Reading state information...
> Reading extended state information...
> Initializing package states...
> Building tag database...
> The following packages have been automatically kept back:
> debathena-pyhesiodfs
> 0 packages upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
> Need to get 0B of archives. After unpacking 0B will be used.
> Writing extended state information...
> Reading package lists...
> Building dependency tree...
> Reading state information...
> Reading extended state information...
> Initializing package states...
> Building tag database...
> ** Running: aptitude --quiet --assume-yes --schedule-only dist-upgrade
> Reading package lists...
> Building dependency tree...
> Reading state information...
> Reading extended state information...
> Initializing package states...
> Building tag database...
> Writing extended state information...
> ** Running: aptitude --quiet --assume-yes install
> Reading package lists...
> Building dependency tree...
> Reading state information...
> Reading extended state information...
> Initializing package states...
> Building tag database...
> The following packages are BROKEN:
> debathena-pyhesiodfs
> 1 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
> Need to get 8224B of archives. After unpacking 0B will be used.
> The following packages have unmet dependencies:
> debathena-pyhesiodfs: Depends: python-hesiod (>= 0.2.10) but 0.2.9.1-1debathena1~ubuntu8.04 is installed.
> Resolving dependencies...
> The following actions will resolve these dependencies:
>
> Remove the following packages:
> debathena-dotfiles
> debathena-gconf2-config
> debathena-locker
> debathena-login
> debathena-mit-automounter
> debathena-nsswitch-config
> debathena-pam-config
> debathena-pyhesiodfs
> debathena-standard
> debathena-workstation
> debathena-xsession
>
> Leave the following dependencies unresolved:
> debathena-afs-config recommends debathena-mit-automounter
> Score is -2249
>
> The following packages are unused and will be REMOVED:
> athena-jot debathena-afs-config debathena-athena-libraries
> debathena-athinfo debathena-athinfod debathena-athrun debathena-authwatch
> debathena-base debathena-bash-config debathena-clients
> debathena-counterlog debathena-cupsys-config debathena-delete
> debathena-discuss debathena-discuss-emacs debathena-emacs-config
> debathena-evolution-wrapper debathena-finger-config
> debathena-firefox-extension debathena-firefox-wrapper debathena-from
> debathena-from-config debathena-gdm-config debathena-get-message
> debathena-hesiod-config debathena-hostinfo debathena-just
> debathena-ldap-config debathena-lert debathena-libgms debathena-lprng
> debathena-lprng-config debathena-mailquota debathena-mailusage
> debathena-mitmailappend debathena-mitmailcreate debathena-mitmaildel
> debathena-mitmailexp debathena-mitmailmove debathena-mitmailrename
> debathena-mitmailscan debathena-mitmailshow debathena-mitmailutils
> debathena-moira-clients debathena-moira-passwd-config debathena-nmh
> debathena-ntp-config debathena-pidgin-wrapper debathena-printing-config
> debathena-quota debathena-quota-config debathena-ssh-client-config
> debathena-ssh-server-config debathena-ssl-certificates
> debathena-tcsh-config debathena-tellme debathena-tex-extras
> debathena-transcript-glue debathena-xcluster debathena-xdsc
> debathena-zephyr-config gcc-3.4-base lib32g2c0 libcyrus-imap-perl22
> libgnome2-gconf-perl libnss-afspag libnss-nonlocal libpam-athena-locker
> libpam-debathena-home-type libpam-krb5 libpam-krb524 libpam-mktemp
> libsasl2-krb4-mit libsasl2-modules-gssapi-mit openafs-client openafs-krb5
> openafs-modules-2.6.24-19-generic owl psutils python-fuse tcsh tzc
> The following packages will be automatically REMOVED:
> debathena-dotfiles debathena-gconf2-config debathena-locker
> debathena-login debathena-mit-automounter debathena-nsswitch-config
> debathena-pam-config debathena-pyhesiodfs debathena-standard
> debathena-workstation debathena-xsession
> The following packages will be REMOVED:
> debathena-dotfiles debathena-gconf2-config debathena-locker
> debathena-login debathena-mit-automounter debathena-nsswitch-config
> debathena-pam-config debathena-pyhesiodfs debathena-standard
> debathena-workstation debathena-xsession
> 0 packages upgraded, 0 newly installed, 93 to remove and 0 not upgraded.
> Need to get 0B of archives. After unpacking 44.4MB will be freed.
> Writing extended state information...
> (Reading database ... 153665 files and directories currently installed.)
> Removing debathena-workstation ...
> Removing debathena-login ...
> Removing debathena-standard ...
> Removing debathena-clients ...
> Removing athena-jot ...
> Removing debathena-gconf2-config ...
> Removing `diversion of /etc/gconf/2/path to /etc/gconf/2/path.debathena-orig by debathena-gconf2-config'
> Removing debathena-xsession ...
> Removing debathena-pam-config ...
> Removing `diversion of /etc/security/access.conf to /etc/security/access.conf.debathena-orig by debathena-pam-config'
> Removing `diversion of /etc/pam.d/common-account to /etc/pam.d/common-account.debathena-orig by debathena-pam-config'
> Removing `diversion of /etc/pam.d/common-auth to /etc/pam.d/common-auth.debathena-orig by debathena-pam-config'
> Removing `diversion of /etc/pam.d/common-session to /etc/pam.d/common-session.debathena-orig by debathena-pam-config'
> Removing `diversion of /etc/pam.d/common-password to /etc/pam.d/common-password.debathena-orig by debathena-pam-config'
> Removing `diversion of /etc/pam.d/gdm to /etc/pam.d/gdm.debathena-orig by debathena-pam-config'
> Removing `diversion of /etc/pam.d/sshd to /etc/pam.d/sshd.debathena-orig by debathena-pam-config'
> Removing `diversion of /etc/pam.d/login to /etc/pam.d/login.debathena-orig by debathena-pam-config'
> Removing debathena-nsswitch-config ...
> Removing `diversion of /usr/sbin/adduser to /usr/sbin/adduser.debathena-orig by debathena-nsswitch-config'
> Removing `diversion of /usr/sbin/groupadd to /usr/sbin/groupadd.debathena-orig by debathena-nsswitch-config'
> Removing `diversion of /usr/sbin/addgroup to /usr/sbin/addgroup.debathena-orig by debathena-nsswitch-config'
> Removing `diversion of /usr/sbin/useradd to /usr/sbin/useradd.debathena-orig by debathena-nsswitch-config'
> Removing `diversion of /usr/bin/dpkg to /usr/bin/dpkg.debathena-orig by debathena-nsswitch-config'
> Removing `diversion of /usr/sbin/invoke-rc.d to /usr/sbin/invoke-rc.d.debathena-orig by debathena-nsswitch-config'
> Removing `diversion of /etc/nsswitch.conf to /etc/nsswitch.conf.debathena-orig by debathena-nsswitch-config'
> Removing debathena-locker ...
> Removing debathena-dotfiles ...
> Removing debathena-mit-automounter ...
> Removing debathena-pyhesiodfs ...
> Removing `diversion of /etc/fuse.conf to /etc/fuse.conf.debathena-orig by debathena-pyhesiodfs'
> Removing debathena-tellme ...
> Removing debathena-afs-config ...
> Removing `diversion of /etc/openafs/afs.conf.client to /etc/openafs/afs.conf.client.debathena-orig by debathena-afs-config'
> Removing `diversion of /etc/openafs/CellAlias to /etc/openafs/CellAlias.debathena-orig by debathena-afs-config'
> Removing `diversion of /etc/openafs/CellServDB to /etc/openafs/CellServDB.debathena-orig by debathena-afs-config'
> Removing `diversion of /etc/openafs/SuidCells to /etc/openafs/SuidCells.debathena-orig by debathena-afs-config'
> Removing `diversion of /etc/openafs/ThisCell to /etc/openafs/ThisCell.debathena-orig by debathena-afs-config'
> Removing `diversion of /etc/openafs/cacheinfo to /etc/openafs/cacheinfo.debathena-orig by debathena-afs-config'
> Removing `diversion of /etc/openafs/afs.conf to /etc/openafs/afs.conf.debathena-orig by debathena-afs-config'
> Removing debathena-athena-libraries ...
> Removing debathena-athinfo ...
> Removing debathena-athinfod ...
> Removing debathena-athrun ...
> Removing debathena-authwatch ...
> Removing debathena-base ...
> Removing debathena-bash-config ...
> Removing `diversion of /etc/bash.bashrc to /etc/bash.bashrc.debathena-orig by debathena-bash-config'
> Removing `diversion of /etc/profile to /etc/profile.debathena-orig by debathena-bash-config'
> Removing debathena-counterlog ...
> Removing debathena-printing-config ...
> Removing `diversion of /usr/bin/cancel to /usr/bin/cancel.debathena-orig by debathena-printing-config'
> Removing `diversion of /usr/bin/lp to /usr/bin/lp.debathena-orig by debathena-printing-config'
> Removing `diversion of /usr/bin/lpq to /usr/bin/lpq.debathena-orig by debathena-printing-config'
> Removing `diversion of /usr/bin/lpr to /usr/bin/lpr.debathena-orig by debathena-printing-config'
> Removing `diversion of /usr/bin/lprm to /usr/bin/lprm.debathena-orig by debathena-printing-config'
> Removing `diversion of /usr/sbin/lpc to /usr/sbin/lpc.debathena-orig by debathena-printing-config'
> Removing `diversion of /usr/share/man/man1/cancel.1.gz to /usr/share/man/man1/cancel.debathena-orig.1.gz by debathena-printing-config'
> Removing `diversion of /usr/share/man/man1/lp.1.gz to /usr/share/man/man1/lp.debathena-orig.1.gz by debathena-printing-config'
> Removing `diversion of /usr/share/man/man1/lpq.1.gz to /usr/share/man/man1/lpq.debathena-orig.1.gz by debathena-printing-config'
> Removing `diversion of /usr/share/man/man1/lpr.1.gz to /usr/share/man/man1/lpr.debathena-orig.1.gz by debathena-printing-config'
> Removing `diversion of /usr/share/man/man1/lprm.1.gz to /usr/share/man/man1/lprm.debathena-orig.1.gz by debathena-printing-config'
> Removing `diversion of /usr/share/man/man8/lpc.8.gz to /usr/share/man/man8/lpc.debathena-orig.8.gz by debathena-printing-config'
> Removing debathena-cupsys-config ...
> Removing `diversion of /etc/cups/cupsd.conf to /etc/cups/cupsd.conf.debathena-orig by debathena-cupsys-config'
> Removing debathena-delete ...
> Removing debathena-xdsc ...
> Removing debathena-discuss-emacs ...
> remove/debathena-discuss-emacs: purging byte-compiled files for emacs22
> Removing debathena-discuss ...
> Removing debathena-emacs-config ...
> Removing debathena-evolution-wrapper ...
> Removing `diversion of /usr/bin/evolution to /usr/bin/evolution.debathena-orig by debathena-evolution-wrapper'
> Removing debathena-finger-config ...
> Removing `diversion of /usr/bin/finger to /usr/bin/finger.debathena-orig by debathena-finger-config'
> Removing debathena-firefox-extension ...
> Removing debathena-firefox-wrapper ...
> Removing `diversion of /usr/bin/firefox to /usr/bin/firefox.debathena-orig by debathena-firefox-wrapper'
> Removing `diversion of /usr/bin/iceweasel to /usr/bin/iceweasel.debathena-orig by debathena-firefox-wrapper'
> Removing debathena-from-config ...
> Removing `diversion of /usr/bin/from to /usr/bin/from.debathena-orig by debathena-from-config'
> Removing `diversion of /usr/share/man/man1/from.1.gz to /usr/share/man/man1/from.debathena-orig.1.gz by debathena-from-config'
> Removing debathena-from ...
> Removing debathena-gdm-config ...
> Removing `diversion of /etc/gdm/gdm.conf-custom to /etc/gdm/gdm.conf-custom.debathena-orig by debathena-gdm-config'
> Removing debathena-get-message ...
> Removing debathena-lprng-config ...
> Removing `diversion of /etc/lprng/lpd.conf to /etc/lprng/lpd.conf.debathena-orig by debathena-lprng-config'
> Removing debathena-hesiod-config ...
> Removing `diversion of /etc/hesiod.conf to /etc/hesiod.conf.debathena-orig by debathena-hesiod-config'
> Removing debathena-hostinfo ...
> Removing debathena-just ...
> Removing debathena-ldap-config ...
> Removing `diversion of /etc/ldap/ldap.conf to /etc/ldap/ldap.conf.debathena-orig by debathena-ldap-config'
> Removing debathena-lert ...
> Removing debathena-libgms ...
> Removing debathena-lprng ...
> Removing debathena-mitmailutils ...
> Removing debathena-mailquota ...
> Removing debathena-mailusage ...
> Removing debathena-mitmailappend ...
> Removing debathena-mitmailcreate ...
> Removing debathena-mitmaildel ...
> Removing debathena-mitmailexp ...
> Removing debathena-mitmailmove ...
> Removing debathena-mitmailrename ...
> Removing debathena-mitmailscan ...
> Removing debathena-mitmailshow ...
> Removing debathena-moira-passwd-config ...
> Removing `diversion of /usr/bin/chfn to /usr/bin/chfn.debathena-orig by debathena-moira-passwd-config'
> Removing `diversion of /usr/bin/chsh to /usr/bin/chsh.debathena-orig by debathena-moira-passwd-config'
> Removing debathena-moira-clients ...
> Removing debathena-nmh ...
> Removing debathena-ntp-config ...
> Removing `diversion of /etc/ntp.conf to /etc/ntp.conf.debathena-orig by debathena-ntp-config'
> Removing debathena-pidgin-wrapper ...
> Removing `diversion of /usr/bin/pidgin to /usr/bin/pidgin.debathena-orig by debathena-pidgin-wrapper'
> Removing debathena-quota-config ...
> Removing `diversion of /usr/bin/quota to /usr/bin/quota.debathena-orig by debathena-quota-config'
> Removing `diversion of /usr/share/man/man1/quota.1.gz to /usr/share/man/man1/quota.debathena-orig.1.gz by debathena-quota-config'
> Removing debathena-quota ...
> Removing debathena-ssh-client-config ...
> Removing `diversion of /etc/ssh/ssh_config to /etc/ssh/ssh_config.debathena-orig by debathena-ssh-client-config'
> Removing debathena-ssh-server-config ...
> Removing `diversion of /etc/ssh/sshd_config to /etc/ssh/sshd_config.debathena-orig by debathena-ssh-server-config'
> Removing debathena-ssl-certificates ...
> Removing debathena-tcsh-config ...
> Removing `diversion of /etc/csh.cshrc to /etc/csh.cshrc.debathena-orig by debathena-tcsh-config'
> Removing debathena-tex-extras ...
> Removing debathena-transcript-glue ...
> Removing debathena-xcluster ...
> Removing debathena-zephyr-config ...
> Removing `diversion of /etc/default/zephyr-clients to /etc/default/zephyr-clients.debathena-orig by debathena-zephyr-config'
> Removing lib32g2c0 ...
> Removing gcc-3.4-base ...
> Removing libcyrus-imap-perl22 ...
> Removing libgnome2-gconf-perl ...
> Removing libnss-afspag ...
> Removing libnss-nonlocal ...
> Removing libpam-athena-locker ...
> Removing libpam-debathena-home-type ...
> Removing libpam-krb524 ...
> Removing libpam-krb5 ...
> Removing libpam-mktemp ...
> Removing libsasl2-krb4-mit ...
> Removing libsasl2-modules-gssapi-mit ...
> Removing openafs-client ...
> Stopping AFS services:umount: /afs: device is busy
> umount: /afs: device is busy
> afsdafsd: Shutting down all afs processes and afs state
> afsd: AFS still mounted; Not shutting down
> ERROR: Module openafs is in use
> openafs.
> Removing openafs-krb5 ...
> Removing openafs-modules-2.6.24-19-generic ...
> Removing owl ...
> Removing psutils ...
> Removing python-fuse ...
> Removing tcsh ...
> Removing tzc ...
> Processing triggers for libc6 ...
> ldconfig deferred processing now taking place
> Reading package lists...
> Building dependency tree...
> Reading state information...
> Reading extended state information...
> Initializing package states...
> Writing extended state information...
> Building tag database...
> ** Ending Athena auto-update at Wed Nov 26 11:44:36 EST 2008
> -----