Why Are /bin and /sbin Symlinks in Ubuntu 20.04?

20.04

tl;dr: In Ubuntu 20.04, folders such as /bin and /sbin are now symlinks to the same folders in /usr. Why was this change made and shouldn't the release notes mention it?

This took a few days, but I tracked down some issues I was having in system setup. As part of a preseed post-install set of commands, I unpack a .tar.gz onto new systems, which puts some files in various folders, including /bin. I've been doing this since Ubuntu 14.04. With Ubuntu 20.04, my systems weren't bootable after install (various failure to mount errors).

I finally narrowed the issue down to this unpacking step, and realized that I'm replacing the /bin folder and making many things inaccessible. What a lovely surprise. The fix is easy enough; dump files in /usr/bin, instead.

Specifically, the following symlinks are new in 20.04, apparently (below via multiple fresh installs):

$ lsb_release -ds
Ubuntu 20.04 LTS
$ ls -l / | grep -E "usr|bin|lib"
lrwxrwxrwx   1 root root     7 Apr 23 15:02 bin -> usr/bin/
lrwxrwxrwx   1 root root     7 Apr 23 15:02 lib -> usr/lib/
lrwxrwxrwx   1 root root     8 Apr 23 15:02 sbin -> usr/sbin/
drwxr-xr-x  11 root root  4096 Apr 23 15:05 usr/

Compare with 19.10 (edit: this system was upgraded from 18.04 I think; whoops):

$ lsb_release -ds
Ubuntu 19.10
$ ls -l / | grep -E "usr|bin|lib"
drwxr-xr-x   2 root root  4096 Dec 11 07:41 bin
drwxr-xr-x  20 root root  4096 Nov  4  2019 lib
drwxr-xr-x   2 root root  4096 Nov  3  2019 lib64
drwxr-xr-x   2 root root 12288 Apr  6 13:29 sbin
drwxr-xr-x  11 root root  4096 Aug  5  2019 usr

Arch does this, apparently starting years ago, and the overall topic is the Filesystem Hierachy Standard
.
It's not in the release notes: https://wiki.ubuntu.com/FocalFossa/ReleaseNotes

Best Answer

I hadn't noticed this change, so I dug into it a little bit. I'm guessing it was not in the release notes because it was really an upstream change in Debian:

This Ubuntu announcement is the only official notification of the change I've seen

Merged-usr is now the default in Disco for new installations only

Some other general info

Related Question