[opensuse-factory] Restructuring /usr/bin, etc. [WAS: sles? ]
On Fri, Aug 6, 2010 at 10:00 AM, Kay Sievers
On Fri, 2010-08-06 at 15:27 +0200, Guido Berhoerster wrote:
* Kay Sievers
[2010-08-06 13:36]: On Fri, 2010-08-06 at 09:42 +0200, Stefan Seyfried wrote:
On Fri, 06 Aug 2010 03:03:22 +0200 Kay Sievers
wrote: I think that /usr on nfs, or even on a different disk should just get a reality check, and be finally dropped.
Having /usr, /var, /opt and /tmp on different partitions / disks is basically a standard setup for lots of real-world corporate installations.
The people who break such standard setups (or even think about breaking them) all the time should just get a reality check...
/usr not on the rootfs is broken since ages for anything that isn't a simple server. It does not make any sense to do that, and that's why nobody really cares.
Many things plugging into udev/hotplug break if /usr is not available at early boot. I stopped asking people to fix such things.
Unfortunately an all too common attitude in Linuxland. Anyway, can we then just be honest and officially abandon the now arbitrary /bin /sbin -- /usr/bin /usr/sbin separation by moving stuff and symlinking /bin and /sbin to /usr? It's nothing uncommon, Solaris/OpenSolaris, HP-UX, and AIX for example all don't have a separate /bin any more. It would certainly ease the pain with linking libraries which are in /usr.
Anything like this sounds good to me. It's just a pretty useless exercise with this artificial split. I would understand to have 'the desktop' split out into /usr, but everything else is just crazy. An it seems entirely random what we do here today. The 'maybe needed at boot' thing just does not mean anything today.
The real fix is a properly working read-only /, for people who use /usr on a separate filesystem, anyway.
Kay
I'm not clear what exactly is being proposed, but any significant shuffling of /usr/bin, /usr/sbin, /usr/lib will potentially impact a lot of existing installs. I have machines (low-end servers) I setup 7 or 8 years ago and have simply been upgrading over the years. One I just checked has a 2GB / (root) and a 5 GB /usr. Neither have enough freespace to absorb the other, so I'd likely have to re-install the OS from scratch on those. (I know, 7 years later, it's about time anyway.) Regardless, I'm not saying my setup of a few machines is enough to drive the future, but I do think it begs the question as to how common setups like mine are. Is there a way to know? Does smolt collect that sort of info? Can smolt be extended to collect it. Greg -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
* Greg Freemyer
I'm not clear what exactly is being proposed, but any significant shuffling of /usr/bin, /usr/sbin, /usr/lib will potentially impact a lot of existing installs.
Please read the last email and don't start yet another thread. We were discussing about not installing any binaries and libraries into /bin, /sbin, and /lib but rather into /usr/bin, /usr/sbin, and /usr/lib. /bin and /sbin could then be symlinked to /usr/bin and /usr/sbin for compatibility reasons, /lib needs to remain as it contains other things. Upgrading from one release to another, i.e. creating symlinks would need to be handled by a scriptlet. -- Guido Berhoerster -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
On Fri, Aug 6, 2010 at 12:06 PM, Guido Berhoerster
* Greg Freemyer
[2010-08-06 17:37]: I'm not clear what exactly is being proposed, but any significant shuffling of /usr/bin, /usr/sbin, /usr/lib will potentially impact a lot of existing installs.
Please read the last email and don't start yet another thread. We were discussing about not installing any binaries and libraries into /bin, /sbin, and /lib but rather into /usr/bin, /usr/sbin, and /usr/lib. /bin and /sbin could then be symlinked to /usr/bin and /usr/sbin for compatibility reasons, /lib needs to remain as it contains other things. Upgrading from one release to another, i.e. creating symlinks would need to be handled by a scriptlet.
-- Guido Berhoerster
But that would break every existing install with /usr as a separate partition since booting requires many of the /bin,. /sbin, /lib utilities prior to /usr being mounted. Think about the kernel modules in /lib. Also, you'd totally break grub I assume if /lib became a symlink to a directory on a different partition. Far more logical to turn /usr/bin, /usr/sbin, /usr/lib into symlinks back to /bin, /sbin, /lib. It would add 2 or 3 GB of diskspace requirements to /, but that at least seems doable. RE: changing subject - my belief is that when the subject of a thread totally changes drastically, the subject should be updated. I did not start a new thread just changed the subject. Thus threaded email clients and the archives should keep all this together. Greg -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
On Fri, 6 Aug 2010 13:00:36 -0400
Greg Freemyer
I did not start a new thread just changed the subject.
Maybe you did, but then your mail client thought that you were about to do something stupid and removed "References:" and "In-Reply-To:" headers. Your Mail does not contain them.
Thus threaded email clients and the archives should keep all this together.
No, they can't. (enough OT for now ;) -- Stefan Seyfried "Theory and practice sometimes clash. And when that happens, theory loses. Every single time." -- Linus Torvalds -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
Guido Berhoerster
Please read the last email and don't start yet another thread. We were discussing about not installing any binaries and libraries into /bin, /sbin, and /lib but rather into /usr/bin, /usr/sbin, and /usr/lib. /bin and /sbin could then be symlinked to /usr/bin and /usr/sbin for compatibility reasons, /lib needs to remain as it contains other things.
If you ever like to create a minimal diskless boot, you know why /sbin needs to remain separately. /sbin contains all those system binaries that are needed in order to mount /usr. And btw: for people who don't know.... /usr was of course the filesystem for users. /usr/dmr was the home directory from Dennis Rithie (this is where the kernel sources have been) and /usr/ken was the home directory from Ken Thompson (this is where the sources for the utilities have been). /usr/bin was created for the same reason other people later created /usr/local..... All programs in /usr/bin are not part of UNIX but are private local hacking results. Jörg -- EMail:joerg@schily.isdn.cs.tu-berlin.de (home) Jörg Schilling D-13353 Berlin js@cs.tu-berlin.de (uni) joerg.schilling@fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/ URL: http://cdrecord.berlios.de/private/ ftp://ftp.berlios.de/pub/schily -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
On Mon, 09 Aug 2010 14:24:56 +0200, Joerg.Schilling@fokus.fraunhofer.de (Joerg Schilling) wrote:
All programs in /usr/bin are not part of UNIX but are private local hacking results.
But that is historic use. Nowadays /usr/local/bin is the canonical place for local hacks and tha's also the reason why a distribution will never install anything there. Philipp -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
Philipp Thomas
On Mon, 09 Aug 2010 14:24:56 +0200, Joerg.Schilling@fokus.fraunhofer.de (Joerg Schilling) wrote:
All programs in /usr/bin are not part of UNIX but are private local hacking results.
But that is historic use. Nowadays /usr/local/bin is the canonical place for local hacks and tha's also the reason why a distribution will never install anything there.
This is historical use.... /usr/local/bin was abandoned in 1989 in favor of the /opt/<vendor>/bin/* hierarchy. Jörg -- EMail:joerg@schily.isdn.cs.tu-berlin.de (home) Jörg Schilling D-13353 Berlin js@cs.tu-berlin.de (uni) joerg.schilling@fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/ URL: http://cdrecord.berlios.de/private/ ftp://ftp.berlios.de/pub/schily -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
On Mon, 09 Aug 2010 23:35:31 +0200, Joerg.Schilling@fokus.fraunhofer.de (Joerg Schilling) wrote:
This is historical use.... /usr/local/bin was abandoned in 1989 in favor of the /opt/<vendor>/bin/* hierarchy.
Definitely no! Citing from FHS 2.3 which is mandatory for LSB applications (http://www.pathname.com/fhs/pub/fhs-2.3.pdf): [...] 4.2. Requirements The following directories, or symbolic links to directories, are required in /usr. Directory Description bin Most user commands include Header files included by C programs lib Libraries local Local hierarchy (empty after main installation) sbin Non-vital system binaries [...] 3.13. /opt : Add-on application software packages 3.13.1. Purpose /opt is reserved for the installation of add-on application software packages. A package to be installed in /opt must locate its static files in a separate /opt/<package> or /opt/<provider> directory tree, where <package> is a name that describes the software package and <provider> is the providers LANANA registered name. [...] 4.5. /usr/bin : Most user commands 4.5.1. Purpose This is the primary directory of executable commands on the system. [...] 4.8.2. /usr/local : Local hierarchy 4.8.2.1. Purpose The /usr/local hierarchy is for use by the system administrator when installing software locally. It needs to be safe from being overwritten when the system software is updated. It may be used for programs and data that are shareable amongst a group of hosts, but not found in /usr. Locally installed software must be placed within /usr/local rather than /usr unless it is being installed to replace or upgrade software in /usr. 7 Philipp -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
Philipp Thomas
On Mon, 09 Aug 2010 23:35:31 +0200, Joerg.Schilling@fokus.fraunhofer.de (Joerg Schilling) wrote:
This is historical use.... /usr/local/bin was abandoned in 1989 in favor of the /opt/<vendor>/bin/* hierarchy.
Definitely no! Citing from FHS 2.3 which is mandatory for LSB
Then it may be that Linux ignores the filesysem hierarchy standards that have been agreed on with _all_ UNIX vendors in the late 1980s. Jörg -- EMail:joerg@schily.isdn.cs.tu-berlin.de (home) Jörg Schilling D-13353 Berlin js@cs.tu-berlin.de (uni) joerg.schilling@fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/ URL: http://cdrecord.berlios.de/private/ ftp://ftp.berlios.de/pub/schily -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
On Tue, 10 Aug 2010, Joerg Schilling wrote:
Philipp Thomas
wrote: On Mon, 09 Aug 2010 23:35:31 +0200, Joerg.Schilling@fokus.fraunhofer.de (Joerg Schilling) wrote:
This is historical use.... /usr/local/bin was abandoned in 1989 in favor of the /opt/<vendor>/bin/* hierarchy.
Definitely no! Citing from FHS 2.3 which is mandatory for LSB
Then it may be that Linux ignores the filesysem hierarchy standards that have been agreed on with _all_ UNIX vendors in the late 1980s.
Well, that would have been 30 years ago. A lot has happened since and what was thought to be the best thing since sliced bread then is now only of anecdotal value. Steffen -- Give orange me give eat orange me eat orange give me eat orange give me you. (chimp Nim, using sign language) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 08/10/2010 04:16 AM, Joerg Schilling wrote:
Philipp Thomas
wrote: On Mon, 09 Aug 2010 23:35:31 +0200, Joerg.Schilling@fokus.fraunhofer.de (Joerg Schilling) wrote:
This is historical use.... /usr/local/bin was abandoned in 1989 in favor of the /opt/<vendor>/bin/* hierarchy.
Definitely no! Citing from FHS 2.3 which is mandatory for LSB
Then it may be that Linux ignores the filesysem hierarchy standards that have been agreed on with _all_ UNIX vendors in the late 1980s.
That may be. Linux is a UNIX-like system, not a UNIX system. Linux has the FHS and LSB and while they mostly agree with legacy UNIX specs, they are absolutely free not to. I agree with Steffen. Quoting UNIX specs for FHS is a good historical story, but that's about it. Quoting the *reasons* why certain decisions were made would be constructive. - -Jeff - -- Jeff Mahoney SUSE Labs -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.15 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org/ iEYEARECAAYFAkxhZPgACgkQLPWxlyuTD7JUlACdF5LyDLWh01026P2s8WttNCkS MGcAniJZMXbgzS+uUNCDsnCa7rMbn7zQ =4QIh -----END PGP SIGNATURE----- -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
On 2010/08/09 16:56 (GMT-0400) Philipp Thomas composed:
Joerg Schilling wrote:
All programs in /usr/bin are not part of UNIX but are private local hacking results.
But that is historic use.
Speaking of historic use, how did /etc* stop being THE place for global config files? It's really irritating to have to try to find/remember these things buried in the monstrous /usr (or /var) tree instead of in /etc where they belong. e.g. /usr/share/kde4/config/kdm/kdmrc instead of /etc/kde/config/kdm/kdmrc -- "The wise are known for their understanding, and pleasant words are persuasive." Proverbs 16:21 (New Living Translation) Team OS/2 ** Reg. Linux User #211409 Felix Miata *** http://fm.no-ip.com/ -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
Felix Miata
On 2010/08/09 16:56 (GMT-0400) Philipp Thomas composed:
Joerg Schilling wrote:
All programs in /usr/bin are not part of UNIX but are private local hacking results.
But that is historic use.
Speaking of historic use, how did /etc* stop being THE place for global config files? It's really irritating to have to try to find/remember these things buried in the monstrous /usr (or /var) tree instead of in /etc where they belong. e.g. /usr/share/kde4/config/kdm/kdmrc instead of /etc/kde/config/kdm/kdmrc
This seems to be a bug. /var was originally designed for temporary data when it was introduced in 1987 with SunOS-4.0. SVr4 holds the package database in /var/pkg and this may have been the beginning of putting config files to /var The original design was: drwxr-sr-x 4 bin 1536 Aug 7 04:05 adm log files drwxr-sr-x 2 bin 512 Oct 14 1990 crash Kernel core files drwxr-sr-x 2 bin 512 Nov 20 1999 log log files lrwxrwxrwx 1 root 10 Mar 29 1997 mail -> spool/mail mail spool drwxr-sr-x 3 root 1536 Oct 5 1996 named named cache drwxr-sr-x 4 root 512 Oct 14 1990 net rsh aliases and rwho cache drwxr-sr-x 2 bin 512 Oct 19 2001 preserve vi crash logs lrwxrwxrwx 1 root 10 Nov 4 1996 spool -> ../u/spool Spool files (can be mounted) drwxrwxrwt 1 root 8 Nov 4 1996 tmp non tmpfs drwxr-sr-x 4 bin 512 Aug 31 2008 yp yp cache /usr is complete nonsense as everybody knows that /usr is a read-only file system on many platforms. Making /usr read only happened in the beginning of the 1980s when net boot with shared resources was introuced (e.g. via the BSD ND protocol that implements remote block devices). Jörg -- EMail:joerg@schily.isdn.cs.tu-berlin.de (home) Jörg Schilling D-13353 Berlin js@cs.tu-berlin.de (uni) joerg.schilling@fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/ URL: http://cdrecord.berlios.de/private/ ftp://ftp.berlios.de/pub/schily -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
El 09/08/10 18:53, Felix Miata escribió:
Speaking of historic use, how did /etc* stop being THE place for global config files? It's really irritating to have to try to find/remember these things buried in the monstrous /usr (or /var) tree instead of in /etc where they belong. e.g. /usr/share/kde4/config/kdm/kdmrc instead of /etc/kde/config/kdm/kdmrc
Those are default configuration, not supposed to be modified by the user aka. "templates" -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
On 2010/08/10 09:37 (GMT-0400) Cristian Rodríguez composed:
Felix Miata wrote:
Speaking of historic use, how did /etc* stop being THE place for global config files? It's really irritating to have to try to find/remember these things buried in the monstrous /usr (or /var) tree instead of in /etc where they belong. e.g. /usr/share/kde4/config/kdm/kdmrc instead of /etc/kde/config/kdm/kdmrc
Those are default configuration, not supposed to be modified by the user aka. "templates"
And? Last I checked, the result of using systemsettings put the replacement in the same location as the supposed template (not just in openSUSE). Yup, Factory still does in KDM 4.4.9whatever (leaving no kdmrc.bak). 'rpm -qa | grep kdm' produces only "[6]+ Stopped grep kdm" instead of giving expected grep output. :-p -- "The wise are known for their understanding, and pleasant words are persuasive." Proverbs 16:21 (New Living Translation) Team OS/2 ** Reg. Linux User #211409 Felix Miata *** http://fm.no-ip.com/ -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
participants (9)
-
Cristian Rodríguez
-
Felix Miata
-
Greg Freemyer
-
Guido Berhoerster
-
Jeff Mahoney
-
Joerg.Schilling@fokus.fraunhofer.de
-
Philipp Thomas
-
Stefan Seyfried
-
Steffen Winterfeldt