Redefining Linux's filesystem hierarchy
Distro Walk – GoboLinux

© Photo by Angie Corbett-Kuiper on Unsplash
GoboLinux's revised directory structure just might be the future of Linux.
The standard Linux directory structure has changed only in minor ways since the days of Unix. Most of these changes are slight, such as the addition of the /media
directory for external drives and /sbin
for binaries that require root privileges, the adjustment of symbolic links between /bin
and /user/bin
, or the addition of virtual directories such as /proc
. In addition, from time to time, some distributions add their own unique directories. Fedora, for instance, installs with an /selinux
directory. In addition, many distributions, including Ubuntu, standardize home directories, installing with subfolders such as Desktop
, Downloads
, Documents
, and Pictures
. Otherwise, the general structure has remained largely unchanged, partly due to the semi-successful Linux Standard Base [1] (which first appeared at the turn of the millennium), partly due to the dominance of a handful of distributions being the source of dozens of others, and mainly because the file hierarchy is good enough for general purposes and needs only occasional tweaks and updates.
However, returning after almost a five-year absence and with a new project leader, GoboLinux is an experiment in a radical new structure [2]. As the project homepage explains, "GoboLinux was created out of a desire to try new approaches in the Linux distribution design space." GoboLinux 017 continues this journey with a focus on the exploration of novel ideas aimed at making the system simpler yet functional.
The Revision
First, a quick reminder of what you probably already know. Famously, everything in Linux is treated as a file, from application files to external drives and partitions. The directory hierarchy gives every file a place (Table 1). Beneath the root
directory, indicated by a forward slash (/
), libraries are placed in /lib
, binaries in /bin
or similarly named subdirectories like /usr/bin
, temporary files in /tmp
, and so on. The basic structure is reproduced in applications and subdirectories, giving at least a semi-consistency throughout the system. If you need a reminder, the Debian Project has a page that includes a table of the top-level directories and describes the relationship between them [3].
[...]
Buy this article as PDF
(incl. VAT)