1. Introduction Zones currently when booted through zoneadm(1M) end up at the traditional run-level "3" or the equivalent System Management Facility, smf(5), milestone of svc:/milestone/multi-user-server:default. There are a number of cases where being able to boot a zone into single-user mode would be useful including being able to repair a zone that will not boot or for booting a zone with just enough context so that a global zone process enter the zone via facilities such as zlogin(1) and execute some other process. This latter functionality is the method the Solaris patching software will use to install patches in a zone by booting up installed, but not running zones into single-user mode so that they can be patched by executing the patchadd(1M) from within the zone itself. 2. Proposal An optional subargument will be available to the "boot" subcommand of zoneadm(1M) to specify that this particular boot should be a single-user mode boot. For compatibility with what customers expect, "-s" will be introduced for this purpose. Other relevant boot arguments (see kernel(1M)) can be introduced in the future. global# zoneadm -z myzone boot -s Interfaces Exported ------------------- Interface Classification Comments --------- -------------- -------- -s subargument Evolving Boots zone single-user to "zoneadm boot" The following is the proposed changes to the zoneadm(1M) man page: @@ -41,8 +41,15 @@ The following subcommands are supported: - boot Boot (or activate) the specified zones. + boot [boot_options] + Boot (or activate) the specified zones. + The following boot_options are supported: + + -s Boots only to milestone svc:/milestone/single- + user:default. This milestone is equivalent to + init level 's'. See svc.startd(1M) and init(1M). + halt Halt the specified zones. halt bypasses running the shutdown scripts inside the zone. It also removes run time resources of the zone. A release binding of Patch is requested.