This issue only affects Linux Mint 19 Tara.
If you are running any other release (18.x, 19.1, 19.2, 19.3, 20, LMDE) please ignore this topic.
Description of the problem:
A critical issue was found in yesterday's base-file 19.0.2 update.
Due to a build issue the package content is empty and its post-installation script results in creating the /var/run directory (which should normally be a symbolic link towards /run). This prevents many system services from running correctly, including those responsible for the console and the login screen.
Solution:
To fix the problem boot in recovery mode:
- Boot your computer
- Press the SHIFT key while booting to force the boot menu to show up
- Select Advanced options for Linux Mint 19
- Select the "recovery mode" boot option
- When the Recovery Menu appears, select "root - Drop to root shell prompt"
- Press Enter
Code: Select all
mount -o rw,remount /
rm -rf /var/run
ln -s /run /var/run
To completely fix the issue, open a terminal and type:
Code: Select all
wget linuxmint.com/tmp/base-files_19.0.1_all.deb
sudo dpkg -i base-files_19.0.1_all.deb
About 2h ago, the repositories were rolled back to version 19.0.1 of the base-files package. It can take up to 48h for this change to be picked up by all the mirrors.
I'd like to apologize to everyone impacted by this issue. The change between 19.0.1 and 19.0.2 had nothing to do with the boot sequence. It was tiny and very simple (a URL was changed in a text file) so we didn't test the boot sequence. We were alerted by the community of this regression.
While working on a solution we also noticed a limitation in Timeshift. System snapshots typically fix update issues like this one. Even if the computer can no longer boot, you can launch Timeshift from a live session and it can find your snapshots and restore them from there. This issue is a very special one though, with /var/run still being there but being a different directory than /run, Timeshift doesn't detect the change and thus doesn't restore this properly. We'll need to analyse this going forward.