After making some backups, I tried to upgrade the kernel again. Guess what? It just works now. The term.log section looks nothing like the one above. Also the old kernel has been retained.
term.log: Log started: 2011-08-22 22:23:29 (Reading database ... M(Reading database ... 5%M(Reading database ... 10%M(Reading Preparing to replace initramfs-tools 0.98.8 (using .../initramfs-tools_0.99_all.deb Unpacking replacement initramfs-tools ...M Selecting previously deselected package linux-image-2.6.39-bpo.2-amd64.M Unpacking linux-image-2.6.39-bpo.2-amd64 (from .../linux-image-2.6.39-bpo.2-amd64_2 Processing triggers for man-db ...M Setting up initramfs-tools (0.99) ...M Installing new version of config file /etc/kernel/postrm.d/initramfs-tools ...M Installing new version of config file /etc/kernel/postinst.d/initramfs-tools ...M Installing new version of config file /etc/initramfs-tools/initramfs.conf ...M update-initramfs: deferring update (trigger activated)M Setting up linux-image-2.6.39-bpo.2-amd64 (2.6.39-3~bpo60+1) ...M Running depmod.M Examining /etc/kernel/postinst.d.M run-parts: executing /etc/kernel/postinst.d/initramfs-tools 2.6.39-bpo.2-amd64 /boo update-initramfs: Generating /boot/initrd.img-2.6.39-bpo.2-amd64M run-parts: executing /etc/kernel/postinst.d/zz-update-grub 2.6.39-bpo.2-amd64 /boot Generating grub.cfg ...M Found linux image: /boot/vmlinuz-2.6.39-bpo.2-amd64M Found initrd image: /boot/initrd.img-2.6.39-bpo.2-amd64M Found linux image: /boot/vmlinuz-2.6.38-bpo.2-amd64M Found initrd image: /boot/initrd.img-2.6.38-bpo.2-amd64M Found linux image: /boot/vmlinuz-2.6.32-5-amd64M Found initrd image: /boot/initrd.img-2.6.32-5-amd64M doneM Processing triggers for initramfs-tools ...M update-initramfs: Generating /boot/initrd.img-2.6.39-bpo.2-amd64M Log ended: 2011-08-22 22:24:39