On Thursday, December 20, 2012 09:31:36 AM Michał Górny wrote:
> On Thu, 20 Dec 2012 00:27:26 +0100
> 
> "J. Roeleveld" <jo...@antarean.org> wrote:
> > On Wednesday, December 19, 2012 09:13:28 AM Greg KH wrote:
> > > On Tue, Dec 18, 2012 at 08:21:36AM +0100, J. Roeleveld wrote:
> > > > On Mon, December 17, 2012 22:31, Greg KH wrote:
> > > > > On Mon, Dec 17, 2012 at 09:03:40PM +0100, J. Roeleveld wrote:
> > > > >> Olav Vitters <o...@vitters.nl> wrote:
> > > > >> >On Mon, Dec 17, 2012 at 09:29:26AM -0500, Richard Yao wrote:
> > > > >> >> As I said in an earlier email, Lennart Poettering claims that it
> > > > >> >> does
> > > > >> >> not work. We are discussing some of the things necessary to make
> > > > >> >> it
> > > > >> >
> > > > >> >work.
> > > > >> >
> > > > >> >Just to repeat:
> > > > >> >In this thread it was claimed that a separate /usr is not
> > > > >> >supported by
> > > > >> >systemd/udev.
> > > > >> >
> > > > >> >A case which works with latest systemd on various distributions. I
> > > > >> >checked with upstream (not Lennart), and they confirmed it works.
> > > > >> >I
> > > > >> >can
> > > > >> >wait for Lennart to say the same, but really not needed.
> > > > >> >
> > > > >> >I assume this will again turn into a "but I meant something else".
> > > > >> 
> > > > >> Olav.
> > > > >> 
> > > > >> Lennart has stated that he considers a seperate /usr without init*
> > > > >> broken.
> > > > > 
> > > > > Yes, as do I, and so do a lot of other developers.
> > > > 
> > > > It is only "broken", because upstream decided to move everything into
> > > > /usr
> > > > that was previously in /.
> > > 
> > > No, not at all, please see the web page that describes, in detail, the
> > > problems that has been going on for quite some time now, with the /usr
> > > and / partitions and packages.
> > > 
> > >   http://freedesktop.org/wiki/Software/systemd/separate-usr-is-broken
> > > 
> > > One good solution to this issue is to move everything into /usr, and
> > > that's something that has wonderful benifits in the long run, and is
> > > something that I expect all Linux distros to eventually implement.
> > > Those that don't, will suffer because of it.
> > > 
> > > Again, see the web page for why moving stuff into /usr is a good idea
> > > for the reasons behind this.
> > > 
> > >   
http://www.freedesktop.org/wiki/Software/systemd/TheCaseForTheUsrMerge
> > 
> > Example: /usr Network Share
> > When /usr is on a network share, why not add a / on network as well?
> > I have multiple systems and as they all have different uses, they all have
> > different software installed.
> > 
> > Example: Multiple Guest Operating Systems on the Same Host
> > See answer to previous example.
> > 
> > How many environments actually currently exist where a shared /usr is
> > being
> > used?
> 
> Are you aware that these environments are actually one of the most
> important reasons for moving everything to /usr? I don't know what
> hackery you're using to keep the systems in sync and working but it is
> braindead enough.

An init* needs to be kept in sync with the rest of the system as well. As that 
is a compressed filesystem, it takes a lot more effort to keep that in sync in 
comparison to a "normal" filesystem.
I consider having to write scripts to unpack, modify and repack an init* to be 
more hackery then to keep a bootable root-filesystem working that can mount 
all the filesystems needed for the whole environment.
Anything needed to mount /usr, /var, /run (and any other part needed for the 
boot-process) should not be allowed to depend on anything in any of those 
directories prior to those being mountable.

> The difference between keeping part of the system in rootfs
> and initramfs is that you can discard initramfs after using it. It can
> be anything which is enough to get the /usr mounted and system
> starting. Files on rootfs *have* to be in sync with those on /usr
> or you're getting random failures.

The same is true for an init*.
If an update of part of the OS leads to subtle changes in the filesystem where 
older versions can no longer properly access them, the init* is broken.

--
Joost


Reply via email to