How to upgrade from Fedora40 to Fedora41 with less stress.

Upgrade "By the book" instructions:

Update software and back up your system.
dnf upgrade --refresh

Install the DNF plugin.
dnf install dnf-plugin-system-upgrade

Start the update with DNF.
dnf system-upgrade download --releasever=41

Reboot and upgrade.
dnf system-upgrade reboot

Now let's fix the problems.
must resolve all .rpmnew and .rpmsave files rpmconf -a

must run hp-setup again to detect scanner
hp-setup -i 192.168.90.10

Reinstall instead of Upgrade instructions:
If you are forced to reformat any disks:.
/boot must be on ext4 and one giga!
/boot/efi must be fat16 Efi system partition and 200 mega.
/ and swap; I used lvm 120 giga.

Certbot does not work any more!
Remove all certbot packages:
dnf remove certbot certbot-auto
dnf install snapd
ln -s /var/lib/snapd/snap /snap
snap install --classic certbot
ln -s /snap/bin/certbot /usr/bin/certbot

df command now gives garbage
add to /root/.bashrc:
alias df='df -x tmpfs'

Fedora 38 now by default ignores /etc/sysconfig/network-scripts!
Uncomment: plugins=keyfile,ifcfg-rh in file /etc/NetworkManager/NetworkManager.conf.
or
migrate to keyfiles.
check keyfiles and network-script files:
nmcli -f TYPE,FILENAME,NAME conn
nmcli conn show
nmcli conn show --active
dnf remove NetworkManager-initscripts-ifcfg-rh

biosdevname doesn't work anymore!
add these lines to our rc.local file:
ip link set dev enp0s31f6 down
ip link set dev enp0s31f6 name eth0
ip link set dev eth0 up

ip link set dev enp3s1 down
ip link set dev enp3s1 name eth1
ip link set dev eth1 up

sshd by default does not allow remote login by root!
block login from outside world in nftables and then add to file /etc/ssh/sshd_config:
PermitRootLogin yes
and systemctl restart sshd

using nvme drives:
mvme list
parted /dev/nvme0n1 p
mount /dev/nvme1n1p6 /mnt/guest

Updated 19 Feb 2025
by Kevin Gyllenberg.