LWN: Comments on "Various notes on /usr unification" https://lwn.net/Articles/483921/ This is a special feed containing comments posted to the individual LWN article titled "Various notes on /usr unification". en-us Sat, 01 Nov 2025 09:15:43 +0000 Sat, 01 Nov 2025 09:15:43 +0000 https://www.rssboard.org/rss-specification lwn@lwn.net Various notes on /usr unification https://lwn.net/Articles/866730/ https://lwn.net/Articles/866730/ immibis <div class="FormattedComment"> And now initramfs would be the strict necessary software to boot, and / would be mounted from THE server.<br> <p> I actually have one system which has a real partition instead of an initramfs. It works fine. Apparently the only problem is that the tools to maintain it don&#x27;t exist.<br> <p> initramfs typically terminates by mounting something else over / using the pivot_root syscall. But there&#x27;s no reason only an initramfs can do that! You are free to install a minimal system locally and then have its init set up the network and NFS and then pivot_root to NFS.<br> </div> Thu, 19 Aug 2021 09:17:28 +0000 The most important question not asked https://lwn.net/Articles/529055/ https://lwn.net/Articles/529055/ mirabilos <div class="FormattedComment"> I’ve done C:\WIN for 3.x, 9x and 2000 (NT-based) successfully.<br> </div> Thu, 13 Dec 2012 15:18:44 +0000 The most important question not asked https://lwn.net/Articles/485943/ https://lwn.net/Articles/485943/ farnz <p>Windows 95 is not a fair comparison here, though. It, Windows 98 and Windows ME were all stop-gaps until Windows NT was able to replace them (which it got close to with Windows 2000, and managed with Windows XP), and they did a variety of interesting things related to their ability to use MS-DOS device drivers for low level filesystem access. It's much the same situation as criticising Linux, because when you run certain apps on a FreeBSD system with their Linux compatibility layer they don't work well. <p>Of course, this shows one side of the "gradual change" coin - Windows XP was released in 2001, so it took Microsoft 6 years to shift people in their preferred direction. <p>If you could repeat the experiment with NT-based Windows, that would be interesting; I don't know if any NT Windows could install to a directory other than C:\Windows or C:\WINNT, however. Thu, 08 Mar 2012 18:45:57 +0000 The most important question not asked https://lwn.net/Articles/485875/ https://lwn.net/Articles/485875/ khim <p>And, of course “c:\Windows” is not “c:\Windows&#160;System” because Windows itself does not like spaces (or long file names). Typical for Microsoft: <b>everyone else</b> should fix their programs when they port to new version of Windows (old programs saw “C:\PROGRA~1” and were happy), but Microsoft don't.</p> <p>P.S. This is not a speculation: Windows9x gave you ability to select name of directory where you can install it. I've installed it in “c:\Program&#160;Files\Windows” (to keep it confined to a single subdirectory) and then various Microsoft packages started complaining that they should be moved from “c:\Program&#160;Files\Windows” to “c:\PROGRA~1\WINDOWS”… When I've reported it as a bug in DirectX the bug was closed as INVALID with comment that you should not use non-MSDOS names from the main Windows directory.</p> Thu, 08 Mar 2012 14:46:25 +0000 The most important question not asked https://lwn.net/Articles/485867/ https://lwn.net/Articles/485867/ nye <div class="FormattedComment"> <font class="QuotedText">&gt;While we're at it, fstab is so 70s, how about /etc/filesystems.</font><br> <p> ITYM '/Et Cetera/My Filesystem Table'<br> <p> (So apparently one of the reasons for 'c:\Program Files', when other options like 'c:\Programs' seem more sensible is that it was a way to flush out programs which didn't handle spaces in file paths.)<br> </div> Thu, 08 Mar 2012 14:05:05 +0000 Various notes on /usr unification https://lwn.net/Articles/485836/ https://lwn.net/Articles/485836/ slashdot <div class="FormattedComment"> Just use a custom init that mounts /usr and then execs the real init.<br> <p> </div> Thu, 08 Mar 2012 09:48:31 +0000 Various notes on /usr unification https://lwn.net/Articles/485829/ https://lwn.net/Articles/485829/ kragil <div class="FormattedComment"> Stupid Debian-bashing (from a person who probably does not use it)<br> In place upgrades generally work just great and are supported on Debian. Sure they are not 100% perfect for everyone, but they have been for me.<br> <p> Your Canonical-bashing is a lot better than this.<br> <p> </div> Thu, 08 Mar 2012 09:28:20 +0000 Various notes on /usr unification https://lwn.net/Articles/485587/ https://lwn.net/Articles/485587/ dlang <div class="FormattedComment"> why would there be enough benefit in a more human readable fstab (which is mostly not manipulated by humans anyway) that would make it worth breaking all existing tools that understand the current format?<br> <p> while I would agree that there are nicer ways to configure what's managed by fstab, there is a large pool of tools and training that know the existing format, what may have been a great change to make 30 years ago needs much more justification now.<br> </div> Tue, 06 Mar 2012 22:03:49 +0000 Various notes on /usr unification https://lwn.net/Articles/485581/ https://lwn.net/Articles/485581/ rgmoore <p>I could definitely see a reworked <code>fstab</code> format. Even if you don't want to work in dependencies- there's some concept of ordering, at least- the format is also terse and cryptic. I wouldn't mind something a bit more verbose and readable. Just don't let Lennart Poettering get involved, or it'll generate another tempest in a teapot no matter how good an idea it is. Tue, 06 Mar 2012 21:48:58 +0000 Various notes on /usr unification https://lwn.net/Articles/485438/ https://lwn.net/Articles/485438/ Cyberax <div class="FormattedComment"> I wouldn't mind something fstab-y but a little bit more modern. Fstab format is way too obsolete, there are no real notions of dependencies and ordering.<br> <p> For example, Amazon EC2 nodes have specialized disks for scratch space. I want to assemble a RAID-0 of them, format them as XFS and then mount them on /tmp.<br> <p> In my ideal world the fstab-ng would have entry like:<br> <font class="QuotedText">&gt;none /tmp xfs defaults,noatime depends-on=assemble-scratch-raid</font><br> <p> Where assemble-scratch-raid is, perhaps, a systemd task.<br> </div> Tue, 06 Mar 2012 11:37:04 +0000 Various notes on /usr unification https://lwn.net/Articles/485332/ https://lwn.net/Articles/485332/ rgmoore <p>I don't see <code>fstab</code> as losing its importance. You still need some place to record the identifiers and mount points for the key partitions, which may include things like /var, /tmp, /opt, and /usr/local in addition to the ones you mentioned. That information has to remain available after <code>initramfs</code> has done its job, and root still needs to be able to edit it in case the hardware configuration changes. It seems to me that it's simpler to have one canonical copy of <code>fstab</code> that's located on the one disk that <code>initramfs</code> knows about by itself. The mount process is a bit more complicated than it would be if <code>initramfs</code> had its own copy of <code>fstab</code>- you have to mount that disk, read <code>fstab</code>, and then mount any other disks mentioned there- but that's still simpler than trying to keep two copies of <code>fstab</code> in sync by rebuilding <code>initramfs</code> any time the canonical copy is edited. Tue, 06 Mar 2012 01:36:47 +0000 Various notes on /usr unification https://lwn.net/Articles/485292/ https://lwn.net/Articles/485292/ man_ls Sounds like a smokescreen to me. All we are saying is that live upgrading a Debian system is <i>supported</i>, while on Fedora it is not. Not that it is flawless. Mon, 05 Mar 2012 22:41:33 +0000 Various notes on /usr unification https://lwn.net/Articles/485161/ https://lwn.net/Articles/485161/ jwakely You can, but it means the same as <tt>#!./bash</tt> so probably doesn't do what you wanted. Mon, 05 Mar 2012 12:12:43 +0000 Various notes on /usr unification https://lwn.net/Articles/485154/ https://lwn.net/Articles/485154/ Cyberax <div class="FormattedComment"> I never understood why can't we just write:<br> <font class="QuotedText">&gt;#!bash</font><br> or<br> <font class="QuotedText">&gt;#!env bash</font><br> <p> instead of using absolute paths.<br> </div> Mon, 05 Mar 2012 10:55:12 +0000 Various notes on /usr unification https://lwn.net/Articles/485150/ https://lwn.net/Articles/485150/ jschrod <div class="FormattedComment"> But with /bin being a symlink to /usr/bin this would actually work, for once.<br> <p> Not like now, where you can't write a bash script for both Linux (/bin/bash) and FreeBSD (/usr/bin/bash) without using #!/usr/bin/env. Then it could just be /usr/bin/bash and we would be done. Just as in Solaris, since many years.<br> </div> Mon, 05 Mar 2012 09:53:27 +0000 Various notes on /usr unification https://lwn.net/Articles/485129/ https://lwn.net/Articles/485129/ Cyberax <div class="FormattedComment"> As I understand, unionfs in FUSE is pretty complete.<br> <p> However, FUSE itself is not ready at all for high-performance filesystems. It's fine for things like sshfs over WAN but totally sucks for local filesystems.<br> </div> Sun, 04 Mar 2012 22:36:48 +0000 Various notes on /usr unification https://lwn.net/Articles/485112/ https://lwn.net/Articles/485112/ dpquigl <div class="FormattedComment"> If you want to go with file system approaches unionfs and aufs have been around long before the FUSE version of unionfs. How full featured is the FUSE one? From what I understand everyone has been focusing on the most common case which is one RW branch and one RO branch. They don't want to do an arbitrary number of branches.<br> </div> Sun, 04 Mar 2012 18:02:39 +0000 Various notes on /usr unification https://lwn.net/Articles/485105/ https://lwn.net/Articles/485105/ dirtyepic <div class="FormattedComment"> <font class="QuotedText">&gt; A lot of software doesn't support being upgraded while it's running </font><br> <p> I'm going to have to call bullshit on that one. See every rolling distro ever.<br> <p> <font class="QuotedText">&gt; or config files get rewritten by upgrade processes to fit the new version</font><br> <font class="QuotedText">&gt; and then the old version overwrites the changes when it's flushing state</font><br> <font class="QuotedText">&gt; to disk while quitting</font><br> <p> Well, first of all, don't overwrite config files. Store the new config somewhere else and give the user an interactive diff tool. Second, any service that writes state to a file that would get overwritten on a reinstall is broken. Any service that can't recognize state information from its previous version is broken.<br> <p> <font class="QuotedText">&gt; "Being replaced while running" is a scenario very few projects test for.</font><br> <p> Because it rarely causes problems. The majority of Gentoo systems are upgraded continually while in use. The biggest problem I had after upgrading and recompiling every package installed on a system that hadn't been updated in six months, which included major gcc and glibc updates, was Firefox wouldn't open links sent to it from external programs until I restarted it.<br> </div> Sun, 04 Mar 2012 17:45:35 +0000 Various notes on /usr unification https://lwn.net/Articles/485085/ https://lwn.net/Articles/485085/ cmccabe <div class="FormattedComment"> And if a Boeing 747 crash-lands on top of the computer, that would probably be bad too. But how is it related to what we were talking about?<br> <p> Just to be clear, the issue we were talking about was version skew in libraries causing applications to misbehave during the upgrade.<br> </div> Sun, 04 Mar 2012 06:25:51 +0000 Various notes on /usr unification https://lwn.net/Articles/485061/ https://lwn.net/Articles/485061/ Cyberax <div class="FormattedComment"> FUSE union mounts actually work, but way too slow for real use.<br> <p> And no, I'm not aware of any progress in that area.<br> </div> Sat, 03 Mar 2012 22:07:07 +0000 Various notes on /usr unification https://lwn.net/Articles/485036/ https://lwn.net/Articles/485036/ dpquigl <div class="FormattedComment"> Has there been any progress on union mounts in the last year? Last I saw the conversation ended with the proposal dead in the water. I don't believe they ever determined who's responsibility it was to do culling of duplicate entries (the kernel, or glibc). Also the FUSE guy chimed in and claimed all the work was unnecessary and he could just do it in fuse.<br> </div> Sat, 03 Mar 2012 17:00:59 +0000 The most important question not asked https://lwn.net/Articles/484987/ https://lwn.net/Articles/484987/ anselm <p>That's already spoken for.</p> Fri, 02 Mar 2012 22:52:11 +0000 Various notes on /usr unification https://lwn.net/Articles/484955/ https://lwn.net/Articles/484955/ Cyberax <div class="FormattedComment"> fstab is becoming more and more useless by the day. If initramfs is going to be mounting the real / and /usr then maybe we could move mounting of other filesystems there?<br> <p> After all, the only major remaining filesystem is /home and maybe a swap partition.<br> </div> Fri, 02 Mar 2012 19:38:49 +0000 The most important question not asked https://lwn.net/Articles/484925/ https://lwn.net/Articles/484925/ dmm <div class="FormattedComment"> While we're at it, fstab is so 70s, how about /etc/filesystems.<br> </div> Fri, 02 Mar 2012 16:08:37 +0000 Various notes on /usr unification https://lwn.net/Articles/484921/ https://lwn.net/Articles/484921/ rgmoore <p>But there's no particular reason to split /etc out as a separate directory. It's already a subdirectory of /, which has the same general requirements of being machine specific and only alterable by root. And you probably don't want it as a separate partition because it contains <code>fstab</code>. which is important to have immediately on mounting /. Fri, 02 Mar 2012 15:54:11 +0000 Various notes on /usr unification https://lwn.net/Articles/484857/ https://lwn.net/Articles/484857/ david.a.wheeler <div class="FormattedComment"> Parent said, "The idea is that you should be able to have a separate partition for each different kind of data...." and listed:<br> / Machine specific, read-only <br> /var Machine specific, read-write, stable across reboots <br> /tmp Machine specific, read-write, volatile across reboots <br> /usr Shared, read-only <br> /home Shared, read-write<br> <p> Also add:<br> /etc Machine specific, read-only<br> <p> (Where "read-only" means "written only by special sys admin actions")<br> <p> BTW, I am *glad* that there was a usrmove argument. When someone proposes a big change to some convention that is widely used, people should examine it for problems BEFORE it's changed, and any change has some pain. I think usrmove is overall a good idea, though.<br> <p> </div> Fri, 02 Mar 2012 05:37:17 +0000 iff you accept /* -> /usr/*, then why not instead /usr/* -> /* https://lwn.net/Articles/484838/ https://lwn.net/Articles/484838/ filteredperception <div class="FormattedComment"> actually maybe I'm just being stupid. network mounted /usr. Probably I should follow one of these links and either read for the first time, or more likely discover something I never bothered to remember, as to what 'usr' means. (?SharedResource). <br> </div> Thu, 01 Mar 2012 23:52:28 +0000 iff you accept /* -> /usr/*, then why not instead /usr/* -> /* https://lwn.net/Articles/484837/ https://lwn.net/Articles/484837/ filteredperception <div class="FormattedComment"> +1 for the joke jef, but cmon, I know _you_ could have given a legitimate answer to my question... Seriously, what is the short answer for 'why have /usr at all in the post merge world?' (as anything but the compatability symlink, versus putting the opposite compatability symplinks under /)<br> </div> Thu, 01 Mar 2012 23:48:21 +0000 Various notes on /usr unification https://lwn.net/Articles/484818/ https://lwn.net/Articles/484818/ nybble41 <div class="FormattedComment"> <font class="QuotedText">&gt; I guess /var/tmp either has to go or we have to separate the "volatile" filesystems into "volatile-and-likely-to-fit-in-RAM" vs. "volatile-and-possibly-enormous".</font><br> <p> I believe /var/tmp is generally considered to be "stable across reboots", so at least that much would remain consistent. *Old* files may be deleted from /var/tmp, of course, but while files in /tmp are only valid for the life of a single process (and thus can always be deleted after a reboot), files in /var/tmp represent transient data which may nonetheless remain useful well after the process which created it has exited.<br> <p> Since /var/tmp is defined as stable it's unlikely to be located on a RAM disk, but applications using large temporary files must still be prepared for the possibility of running out of free space.<br> </div> Thu, 01 Mar 2012 21:28:09 +0000 iff you accept /* -> /usr/*, then why not instead /usr/* -> /* https://lwn.net/Articles/484817/ https://lwn.net/Articles/484817/ jspaleta <div class="FormattedComment"> You know.... <br> bringing the /me directory into the conversation is just unnecessary complexity.<br> <p> -jef<br> </div> Thu, 01 Mar 2012 21:11:32 +0000 Various notes on /usr unification https://lwn.net/Articles/484811/ https://lwn.net/Articles/484811/ dskoll <p><i><tt>/</tt> Machine specific, read-only<br> <tt>/var</tt> Machine specific, read-write, stable across reboots<br> <tt>/tmp</tt> Machine specific, read-write, volatile across reboots<br> <tt>/usr</tt> Shared, read-only<br> <tt>/home</tt> Shared, read-write</i></p> <p>I'm sold. That's a beautiful, clear and logical explanation. Thanks. <p>I guess <tt>/var/tmp</tt> either has to go or we have to separate the "volatile" filesystems into "volatile-and-likely-to-fit-in-RAM" vs. "volatile-and-possibly-enormous". Thu, 01 Mar 2012 20:42:34 +0000 /local vs /usr/local https://lwn.net/Articles/484775/ https://lwn.net/Articles/484775/ rgmoore <p>I think something like <code>/local</code> for code that is specific to an individual machine makes sense. Of course, software that's specific to an individual machine is probably being handled outside the distribution, or it would go wherever the distro decides it belongs. That makes dealing with it a local policy issue, so you're free to name and deal with it however you see fit. Thu, 01 Mar 2012 18:25:15 +0000 Various notes on /usr unification https://lwn.net/Articles/484771/ https://lwn.net/Articles/484771/ pboddie <div class="FormattedComment"> I actually forgot to suggest accusations of trolling, along with "correlation does not imply causation" and "the plural of anecdote is not data". Of course such terms and phrases describe actual phenomena, but they also seem to take the role of the panic button in any discussion.<br> </div> Thu, 01 Mar 2012 18:12:49 +0000 Various notes on /usr unification https://lwn.net/Articles/484728/ https://lwn.net/Articles/484728/ drago01 <div class="FormattedComment"> <font class="QuotedText">&gt; On a somewhat related note, I'd like to make a motion to retire the term "bikeshedding".</font><br> <p> The term at least has a meaning. I'd rather retire the term "power user" ;)<br> </div> Thu, 01 Mar 2012 16:27:44 +0000 Various notes on /usr unification https://lwn.net/Articles/484692/ https://lwn.net/Articles/484692/ nix This is called the <a href="http://en.wikipedia.org/wiki/Euphemism_treadmill#Euphemism_treadmill">euphemism treadmill</a>. Thu, 01 Mar 2012 14:34:29 +0000 Mass rebuilds https://lwn.net/Articles/484656/ https://lwn.net/Articles/484656/ smurf <div class="FormattedComment"> Same for Debian, except that it's usually a single developer with too much free time and/or raw CPU power on their hands who decides to do their own personal mass rebuild – and file bugs about everything that fails to build.<br> </div> Thu, 01 Mar 2012 12:59:51 +0000 Various notes on /usr unification https://lwn.net/Articles/484653/ https://lwn.net/Articles/484653/ Cyberax <div class="FormattedComment"> Well, in this case /root might be necessary. But it still strikes me as an extra top-level directory which is hardly ever needed now.<br> <p> Maybe it could be a job for union mounts (once Valerie Aurora gets them mainlined).<br> </div> Thu, 01 Mar 2012 12:56:58 +0000 Various notes on /usr unification https://lwn.net/Articles/484647/ https://lwn.net/Articles/484647/ smurf <div class="FormattedComment"> Not always, no.<br> Some login methods require files in $HOME. sshd with authorized_keys is only one of them. Not every system has a console, and even if it has one I don't want to force somebody to go to the data center and plug something magic into some blade system just because a reboot has managed not to mount $HOME.<br> (Which might as well be on NFS. To require a working NFS for root login is stupid.)<br> </div> Thu, 01 Mar 2012 12:38:58 +0000 Various notes on /usr unification https://lwn.net/Articles/484630/ https://lwn.net/Articles/484630/ sorpigal I don't insist on one. If the issue is packaging effort it seems logical to take what is built for initramfs purposes and make that the "minimal root" stuff for people without an initramfs, just place it on disk as usual. Thu, 01 Mar 2012 11:27:19 +0000 Various notes on /usr unification https://lwn.net/Articles/484608/ https://lwn.net/Articles/484608/ AndreE <div class="FormattedComment"> Should we get rid of the word "wolves" though?<br> </div> Thu, 01 Mar 2012 08:45:53 +0000