5 ms·
What's the recommendation? Nuke the system and install fresh? Or upgrade?
by sdfghswe 3y ago
What's the recommendation? Nuke the system and install fresh? Or upgrade?
- whalesalad 3y agofwiw in server environments I have (knock on wood) always had very pleasant experiences upgrading debian. for a desktop env with lots more config and packages, ymmv.
- ilyt 3y agoThe most common case for failures is frankendebian [0] and just putting some badly designed packages that mess stuff up. I had never had, even on desktop, problems with vanilla Debian install, they all stewed from some 3rd party repo not playing nice. * [0] https://wiki.debian.org/DontBreakDebian https://wiki.debian.org/DontBreakDebian
- dsr_ 3y agoThis is Debian. Starting with 1.3, it has been possible and generally recommended to upgrade in place. 1. Read the install notes. Read the upgrade notes. 2. Note the things that the upgrade notes say will change and need human input. 3. Backup if, for some strange reason, you don't make backups automatically. 4. Change the sources.list and, if there are any, sources.list.d configs to point to the new stable release name. 5. If you set APT::Default-Release, set it to the new stable release name. 6. Update the package list: apt update 7. Upgrade the system: apt dist-upgrade 8. Reboot. 9. Fix items from the policy config list you made in step 2. 10. Check on anything left: apt upgrade That should be it.
- taneliv 3y agoIf you are more happy-go-lucky, you can just do 4, 6-8 and 10, like I did for years (closer to a decade, actually, I think 1997 til 2006, when I switched mostly to Ubuntu). However, I've always installed apt-listchanges and configured it to prompt me before installing anything, which (mostly?) removes need for 1 and 2, a bit like backing up removes need for 3.
- ilyt 3y agoBy default the upgrade can ask a lot of questions, but you can kinda skip it by just telling it to keep old config files then merge them with the new ones at the end: export DEBIAN_FRONTEND=noninteractive apt-get update apt-get -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' dist-upgrade upgrade done. All of configs you changed are not touched and the new version is in <name>. dpkg-dist file find /etc -name '*.dpkg-dist to show "a config that package would use if you didn't change it". diff it with your config and add any required changes. Done. > 10. Check on anything left: apt upgrade 11. apt autoremove
- ilyt 3y agoadd repos apt-get update apt-get dist-upgrade answer the questions. Most will be "do you want old version of file, distro maintainer version of file, or do you want to diff or edit it". If you don't want to answer the questions and just want to keep only config that you changed: export DEBIAN_FRONTEND=noninteractive apt-get update apt-get -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' dist-upgrade (we use that because our configs are managed by CM Puppet anyway) That will: if you have not changed system config in a given package, update config file to latest * if you have changed it, it will preserve it but put new one into .dpkg-dist file. If you did not add any non-debian repos that would collide it pretty much always succeeds. Now: * find any file ending with .dpkg-dist * inspect both this and config to see whether you want to put some of new config into your current config That looks longer than it is. Near-every upgrade I did is just those 3 commands and some waiting.