
* - Tong - mlist4suntong@yahoo.com [20070812 14:44]:
Ever since I did 'apt-get upgrade' in my Grml-Small v0.4 HD install, I can't use 'shutdown now' or 'reboot' properly any more. E.g., reboot will complain that '/etc/init.d/grml-reboot' not found.
I looked into the problem, learned that /etc/init.d/grml-reboot is from grml-etc, but I have grml-etc installed.
Finally I found that somehow the 'apt-get upgrade' installed the '/etc/init.d/grml-reboot' file as '/etc/init.d/grml-reboot.dpkg-new'.
I don't understand why apt-get/dpkg is doing this, ie, deliberately breaking my working system. I remember lots of packages have been updated, I don't know how many those .dpkg-new files are out there breaking my system. So,
- how to fix the problem?
mv /etc/init.d/grml-reboot.dpkg-new /etc/init.d/grml-reboot
- how to prevent it from happening again?
Make sure you check the files where you are asked questions like:
| What would you like to do about it ? Your options are: | Y or I : install the package maintainer’s version | N or O : keep your currently-installed version | D : show the differences between the versions | Z : start a new shell to examine the situation | The default action is to keep your current version.
So by default you won't accept the new file (unless you choose 'I') but instead use the old file and a .dpkg-new will be generated for further actions.
According to your specific problem: looks like something changed /etc/init.d/grml-reboot on your system (so the hashsum of the file stored in package management and the one of current /etc/init.d/grml-reboot don't match). Assuming that it wasn't you who changed the file on your own I'll check that out on my own so it won't happen with the next grml-small version.
regards, -mika-