[Pkg-sysvinit-devel] Bug#386945: initscripts: User Mode Linux (UML) doesn't start because /dev/shm is mounted noexec

Henrique de Moraes Holschuh hmh at debian.org
Sat Sep 16 15:24:41 UTC 2006


On Sat, 16 Sep 2006, Petter Reinholdtsen wrote:
> Yes.  I discovered this while I started to look closer at the ubuntu
> patches, and decided to get this done quickly to try to get ifupdown
> work asynchroniously, as well as provide uml, dosemu and others with
> some place to store their stuff.

Good job, and also kudos to the Ubuntu guys.

But I think we might want to improve it a little yet before deploying to
unstable:

1. Support tmpfs limits on resource usage, we really should not be mounting
various tmpfs with their default size!  10MB for /var/run and 1MB for
/var/lock seems like reasonable hardwired defaults (see below for how to
override)

2. Support local admin override of these tmpfs parameters, in /etc/fstab

3. Warn in d-d-announce that we will be deploying this, and that people
better test it.  And that if they want the early-writeable tmpfs elsewhere,
they are to bring it up with the TC immediately, because the "talk about it
in the mailing lists" approach failed and thus we now require a fast,
non-challengable TC decision on this issue which we will be very happy to
follow.

4. Document very clearly the very early userspace requirements of a Debian
system.  These *have* to be met by the kernel and initrd.

Very Early Userspace
	Starts: when kernel/initrd handles control to init for bootstrap
	Ends:	right before coldplug is run.

	Requires before it can start:
		root filesystem mounted read-only
		in-kernel tmpfs support ready for use
		in-kernel bind mount functionality, including mount --move

	Provides when it ends:
		early read-writeable filesystem mounted (currently, /var/run)
		essential kernel-userland interfaces ready (/proc, /sys, etc)
		[optional] early static module loading (**missing**)
		[optional] early static sysfs and procfs setup (**missing**)

	Caveats:
		Accurate system time is NOT guaranteed to be available
		at this stage.  In fact, system time will be incorrect
		except in specific setups.  DO NOT MOUNT FILESYSTEMS THAT
		CANNOT COPE WITH THIS.  DO NOT FSCK FILESYSTEMS.

		Accurate system timezone information is available only
		from glibc's global timezone setup (/etc/localtime).

We should document the rest of the bootstrap stages too, that will allow us
to fix the current breakages (system time undefined when it shouldn't,
parallel boot missing key chokepoints at early userspace setup, etc).  But
that does not have anything to do with the early writeable fs.

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh




More information about the Pkg-sysvinit-devel mailing list