1 '\" te 2 .\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved. 3 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. 4 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. 5 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] 6 .TH ZONEADM 1M "Feb 13, 2009" 7 .SH NAME 8 zoneadm \- administer zones 9 .SH SYNOPSIS 10 .LP 11 .nf 12 \fBzoneadm\fR \fB-z\fR \fIzonename\fR [\fB-u\fR \fIuuid-match\fR] \fIsubcommand\fR 13 [\fIsubcommand_options\fR] 14 .fi 15 16 .LP 17 .nf 18 \fBzoneadm\fR [\fB-R\fR \fIroot\fR] [\fB-z\fR \fIzonename\fR] [\fB-u\fR \fIuuid-match\fR] list 19 [\fIlist_options\fR] 20 .fi 21 22 .LP 23 .nf 24 \fBzoneadm\fR [\fB-R\fR \fIroot\fR] \fB-z\fR \fIzonename\fR [\fB-u\fR \fIuuid-match\fR] mark incomplete 25 .fi 26 27 .SH DESCRIPTION 28 .sp 29 .LP 30 The \fBzoneadm\fR utility is used to administer system zones. A zone is an 31 application container that is maintained by the operating system runtime. 32 .SH SECURITY 33 .sp 34 .LP 35 Once a process has been placed in a zone other than zone \fB0\fR, the process 36 or any of its children cannot change zones. 37 .SH OPTIONS 38 .sp 39 .LP 40 The following options are supported: 41 .sp 42 .ne 2 43 .na 44 \fB\fB-R\fR \fIroot\fR\fR 45 .ad 46 .sp .6 47 .RS 4n 48 Specify an alternate root (boot environment). This option can only be used in 49 conjunction with the "\fBlist\fR" and "\fBmark\fR" subcommands. 50 .RE 51 52 .sp 53 .ne 2 54 .na 55 \fB\fB-u\fR \fIuuid-match\fR\fR 56 .ad 57 .sp .6 58 .RS 4n 59 Unique identifier for a zone, as assigned by \fBlibuuid\fR(3LIB). If this 60 option is present and the argument is a non-empty string, then the zone 61 matching the \fBUUID\fR is selected instead of the one named by the \fB-z\fR 62 option, if such a zone is present. 63 .RE 64 65 .sp 66 .ne 2 67 .na 68 \fB\fB-z\fR \fIzonename\fR\fR 69 .ad 70 .sp .6 71 .RS 4n 72 String identifier for a zone. 73 .RE 74 75 .SH SUBCOMMANDS 76 .sp 77 .LP 78 Subcommands which can result in destructive actions or loss of work have a 79 \fB-F\fR flag to force the action. If input is from a terminal device, the user 80 is prompted if such a command is given without the \fB-F\fR flag; otherwise, if 81 such a command is given without the \fB-F\fR flag, the action is disallowed, 82 with a diagnostic message written to standard error. If a zone installation or 83 uninstallation is interrupted, the zone is left in the incomplete state. Use 84 uninstall to reset such a zone back to the configured state. 85 .sp 86 .LP 87 The following subcommands are supported: 88 .sp 89 .ne 2 90 .na 91 \fB\fBattach\fR [\fB-F\fR] [\fB-n\fR \fIpath\fR] [\fIbrand-specific 92 options\fR]\fR 93 .ad 94 .sp .6 95 .RS 4n 96 The \fBattach\fR subcommand takes a zone that has been detached from one system 97 and attaches the zone onto a new system. Therefore, it is advised (though not 98 required) that the \fBdetach\fR subcommand should be run before the "attach" 99 takes place. Once you have the new zone in the configured state, use the 100 \fBattach\fR subcommand to set up the zone root instead of installing the zone 101 as a new zone. 102 .sp 103 The \fB-F\fR option can be used to force the zone into the "installed" state 104 with no validation. This option should be used with care since it can leave the 105 zone in an unsupportable state if it was moved from a source system to a target 106 system that is unable to properly host the zone. The \fB-n\fR option can be 107 used to run the \fBattach\fR subcommand, without executing the command. It uses 108 the output of the "\fBdetach\fR \fB-n\fR" subcommand as input and is useful to 109 identify any conflicting issues, such as the network device being incompatible, 110 and can also determine whether the host is capable of supporting the zone. The 111 path can be "\fB-\fR", to read the input from standard input. 112 .sp 113 The zone's brand may include additional options that govern how the zone will 114 be attached. See \fBbrands\fR(5) for specific brand information. 115 .sp 116 The zone being attached must first be configured using the \fBzonecfg\fR (see 117 \fBzonecfg\fR(1M)) command. This does not apply when running "\fBattach\fR 118 \fB-n\fR". 119 .sp 120 Use the following command to attach a zone: 121 .sp 122 .in +2 123 .nf 124 # \fBzoneadm -z my-zone attach\fR 125 .fi 126 .in -2 127 .sp 128 129 .RE 130 131 .sp 132 .ne 2 133 .na 134 \fB\fBboot\fR [\fB--\fR \fIboot_options\fR]\fR 135 .ad 136 .sp .6 137 .RS 4n 138 Boot (or activate) the specified zones. 139 .sp 140 The following \fIboot_options\fR are supported: 141 .sp 142 .ne 2 143 .na 144 \fB\fB-i\fR \fIaltinit\fR\fR 145 .ad 146 .sp .6 147 .RS 4n 148 Select an alternative executable to be the primordial Process. \fIaltinit\fR is 149 a valid path to an executable. The default primordial process is 150 \fBinit\fR(1M). 151 .RE 152 153 .sp 154 .ne 2 155 .na 156 \fB\fB-m\fR \fIsmf_options\fR\fR 157 .ad 158 .sp .6 159 .RS 4n 160 The \fIsmf_options\fR include two categories of options to control booting 161 behavior of the service management facility: recovery options and messages 162 options. 163 .sp 164 Message options determine the type and amount of messages that \fBsmf\fR(5) 165 displays during boot. Service options determine the services which are used to 166 boot the system. See \fBkernel\fR(1M) for a listing of the \fB-m\fR suboptions. 167 .RE 168 169 .sp 170 .ne 2 171 .na 172 \fB\fB-s\fR\fR 173 .ad 174 .sp .6 175 .RS 4n 176 Boots only to milestone \fBsvc:/milestone/single-user:default\fR. This 177 milestone is equivalent to init level \fBs\fR. See \fBsvc.startd\fR(1M) and 178 \fBinit\fR(1M). 179 .RE 180 181 .RE 182 183 .sp 184 .ne 2 185 .na 186 \fB\fBclone\fR [\fB-m\fR \fIcopy\fR] [\fB-s\fR \fIzfs_snapshot\fR] 187 \fIsource_zone\fR\fR 188 .ad 189 .sp .6 190 .RS 4n 191 Install a zone by copying an existing installed zone. This subcommand is an 192 alternative way to install the zone. 193 .sp 194 .ne 2 195 .na 196 \fB\fB-m\fR \fIcopy\fR\fR 197 .ad 198 .sp .6 199 .RS 4n 200 Force the clone to be a copy, even if a "\fBZFS\fR clone" is possible. 201 .RE 202 203 .sp 204 .ne 2 205 .na 206 \fB\fB-s\fR \fIzfs_snapshot\fR\fR 207 .ad 208 .sp .6 209 .RS 4n 210 Specify the name of a \fBZFS\fR snapshot to use as the source of the clone. The 211 \fIsnapshot\fR must be a \fIsnapshot\fR of the source zone taken from a 212 previous "\fBzoneadm\fR clone" installation. 213 .RE 214 215 The source zone must be halted before this subcommand can be used. 216 .RE 217 218 .sp 219 .ne 2 220 .na 221 \fB\fBdetach\fR [\fB-n\fR]\fR 222 .ad 223 .sp .6 224 .RS 4n 225 Detach the specified zone. Detaching a zone is the first step in moving a zone 226 from one system to another. The full procedure to migrate a zone is that the 227 zone is detached, the \fIzonepath\fR directory is moved to the new host, and 228 then the zone is attached on the new host. Once the zone is detached, it is 229 left in the configured state. If you try to install or clone to a configured 230 zone that has been detached, you will receive an error message and the 231 \fBinstall\fR or \fBclone\fR subcommand will not be allowed to proceed. The 232 \fB-n\fR option can be used to run the \fBdetach\fR subcommand, without 233 executing the command. This generates the information needed for running the 234 "\fBattach\fR \fB-n\fR" subcommand, which is useful to identify any conflicting 235 issues, such as the network device being incompatible or if the host is capable 236 of supporting the zone. The information is sent to standard output and can be 237 saved to a file or piped to the "\fBattach\fR \fB-n\fR" subcommand. 238 .sp 239 Use the following command to detach a zone: 240 .sp 241 .in +2 242 .nf 243 # zoneadm -z my-zone detach 244 .fi 245 .in -2 246 .sp 247 248 The source zone must be halted before this subcommand can be used. 249 .RE 250 251 .sp 252 .ne 2 253 .na 254 \fB\fBhalt\fR\fR 255 .ad 256 .sp .6 257 .RS 4n 258 Halt the specified zones. \fBhalt\fR bypasses running the shutdown scripts 259 inside the zone. It also removes run time resources of the zone. 260 .sp 261 Use: 262 .sp 263 .in +2 264 .nf 265 zlogin \fIzone\fR shutdown 266 .fi 267 .in -2 268 .sp 269 270 to cleanly shutdown the zone by running the shutdown scripts. 271 .RE 272 273 .sp 274 .ne 2 275 .na 276 \fB\fBhelp\fR [\fIsubcommand\fR]\fR 277 .ad 278 .sp .6 279 .RS 4n 280 Display general help. If you specify \fIsubcommand\fR, displays help on 281 \fIsubcommand\fR. 282 .RE 283 284 .sp 285 .ne 2 286 .na 287 \fB\fBinstall\fR [\fB-x\fR \fInodataset\fR] [\fIbrand-specific options\fR]\fR 288 .ad 289 .sp .6 290 .RS 4n 291 Install the specified zone on the system. This subcommand automatically 292 attempts to verify first. It refuses to install if the verify step fails. See 293 the \fBverify\fR subcommand. 294 .sp 295 .ne 2 296 .na 297 \fB\fB-x\fR \fInodataset\fR\fR 298 .ad 299 .sp .6 300 .RS 4n 301 Do not create a \fBZFS\fR file system. 302 .RE 303 304 The zone's brand may include additional options that govern how the software 305 will be installed in the zone. See \fBbrands\fR(5) for specific brand 306 information. 307 .RE 308 309 .sp 310 .ne 2 311 .na 312 \fB\fBlist\fR [\fIlist_options\fR]\fR 313 .ad 314 .sp .6 315 .RS 4n 316 Display the name of the current zones, or the specified zone if indicated. 317 .sp 318 By default, all running zones are listed. If you use this subcommand with the 319 \fBzoneadm\fR \fB-z\fR \fIzonename\fR option, it lists only the specified zone, 320 regardless of its state. In this case, the \fB-i\fR and \fB-c\fR options are 321 disallowed. 322 .sp 323 If neither the \fB-i\fR or \fB-c\fR options are given, all running zones are 324 listed. 325 .sp 326 The following \fIlist_options\fR are supported: 327 .sp 328 .ne 2 329 .na 330 \fB\fB-c\fR\fR 331 .ad 332 .sp .6 333 .RS 4n 334 Display all configured zones. This option overides the \fB-i\fR option. 335 .RE 336 337 .sp 338 .ne 2 339 .na 340 \fB\fB-i\fR\fR 341 .ad 342 .sp .6 343 .RS 4n 344 Expand the display to all installed zones. 345 .RE 346 347 .sp 348 .ne 2 349 .na 350 \fB\fB-p\fR\fR 351 .ad 352 .sp .6 353 .RS 4n 354 Request machine parsable output. The output format is a list of lines, one per 355 zone, with colon- delimited fields. These fields are: 356 .sp 357 .in +2 358 .nf 359 zoneid:zonename:state:zonepath:uuid:brand:ip-type 360 .fi 361 .in -2 362 .sp 363 364 If the \fBzonepath\fR contains embedded colons, they can be escaped by a 365 backslash ("\:"), which is parsable by using the shell \fBread\fR(1) function 366 with the environmental variable \fBIFS\fR. The \fIuuid\fR value is assigned by 367 \fBlibuuid\fR(3LIB) when the zone is installed, and is useful for identifying 368 the same zone when present (or renamed) on alternate boot environments. Any 369 software that parses the output of the "\fBzoneadm list -p\fR" command must be 370 able to handle any fields that may be added in the future. 371 .sp 372 The \fB-v\fR and \fB-p\fR options are mutually exclusive. If neither \fB-v\fR 373 nor \fB-p\fR is used, just the zone name is listed. 374 .RE 375 376 .sp 377 .ne 2 378 .na 379 \fB\fB-v\fR\fR 380 .ad 381 .sp .6 382 .RS 4n 383 Display verbose information, including zone name, id, current state, root 384 directory, brand type, ip-type, and options. 385 .sp 386 The \fB-v\fR and \fB-p\fR options are mutually exclusive. If neither \fB-v\fR 387 nor \fB-p\fR is used, just the zone name is listed. 388 .RE 389 390 .RE 391 392 .sp 393 .ne 2 394 .na 395 \fB\fBmark incomplete\fR\fR 396 .ad 397 .sp .6 398 .RS 4n 399 Change the state of an installed zone to "incomplete." This command may be 400 useful in cases where administrative changes on the system have rendered a zone 401 unusable or inconsistent. This change cannot be undone (except by uninstalling 402 the zone). 403 .RE 404 405 .sp 406 .ne 2 407 .na 408 \fB\fBmove\fR \fInew_zonepath\fR\fR 409 .ad 410 .sp .6 411 .RS 4n 412 Move the \fIzonepath\fR to \fInew_zonepath\fR. The zone must be halted before 413 this subcommand can be used. The \fInew_zonepath\fR must be a local file system 414 and normal restrictions for \fIzonepath\fR apply. 415 .RE 416 417 .sp 418 .ne 2 419 .na 420 \fB\fBready\fR\fR 421 .ad 422 .sp .6 423 .RS 4n 424 Prepares a zone for running applications but does not start any user processes 425 in the zone. 426 .RE 427 428 .sp 429 .ne 2 430 .na 431 \fB\fBreboot\fR\fR 432 .ad 433 .sp .6 434 .RS 4n 435 Restart the zones. This is equivalent to a \fBhalt\fR \fBboot\fR sequence. This 436 subcommand fails if the specified zones are not active. 437 .RE 438 439 .sp 440 .ne 2 441 .na 442 \fB\fBuninstall [\fR\fB-F\fR\fB]\fR\fR 443 .ad 444 .sp .6 445 .RS 4n 446 Uninstall the specified zone from the system. Use this subcommand with caution. 447 It removes all of the files under the \fIzonepath\fR of the zone in question. 448 You can use the \fB-F\fR flag to force the action. 449 .RE 450 451 .sp 452 .ne 2 453 .na 454 \fB\fBverify\fR\fR 455 .ad 456 .sp .6 457 .RS 4n 458 Check to make sure the configuration of the specified zone can safely be 459 installed on the machine. Following is a break-down of the checks by 460 \fBresource/property\fR type: 461 .sp 462 .ne 2 463 .na 464 \fB\fBzonepath\fR\fR 465 .ad 466 .sp .6 467 .RS 4n 468 \fBzonepath\fR and its parent directory exist and are owned by root with 469 appropriate modes . The appropriate modes are that \fBzonepath\fR is \fB700\fR, 470 its parent is not \fBgroup\fR or \fBworld-writable\fR and so forth. 471 \fBzonepath\fR is not over an NFS mount. A sub-directory of the \fBzonepath\fR 472 named "root" does not exist. 473 .sp 474 If \fBzonepath\fR does not exist, the \fBverify\fR does not fail, but merely 475 warns that a subsequent install will attempt to create it with proper 476 permissions. A \fBverify\fR subsequent to that might fail should anything go 477 wrong. 478 .sp 479 \fBzonepath\fR cannot be a symbolic link. 480 .RE 481 482 .sp 483 .ne 2 484 .na 485 \fB\fBfs\fR\fR 486 .ad 487 .sp .6 488 .RS 4n 489 Any \fBfs\fR resources have their \fItype\fR value checked. An error is 490 reported if the value is one of \fBproc\fR, \fBmntfs\fR, \fBautofs\fR, 491 \fBcachefs\fR, or \fBnfs\fR or the filesystem does not have an associated mount 492 binary at \fB/usr/lib/fs/\fI<fstype>\fR/mount\fR. 493 .sp 494 It is an error for the \fIdirectory\fR to be a relative path. 495 .sp 496 It is an error for the path specified by \fBraw\fR to be a relative path or if 497 there is no \fBfsck\fR binary for a given filesystem type at 498 \fB/usr/lib/fs/\fI<fstype>\fR/fsck\fR. It is also an error if a corresponding 499 \fBfsck\fR binary exists but a \fBraw\fR path is not specified. 500 .RE 501 502 .sp 503 .ne 2 504 .na 505 \fB\fBnet\fR\fR 506 .ad 507 .sp .6 508 .RS 4n 509 All physical network interfaces exist. All network address resources are one 510 of: 511 .RS +4 512 .TP 513 .ie t \(bu 514 .el o 515 a valid IPv4 address, optionally followed by "\fB/\fR" and a prefix length; 516 .RE 517 .RS +4 518 .TP 519 .ie t \(bu 520 .el o 521 a valid IPv6 address, which must be followed by "\fB/\fR" and a prefix length; 522 .RE 523 .RS +4 524 .TP 525 .ie t \(bu 526 .el o 527 a host name which resolves to an IPv4 address. 528 .RE 529 Note that hostnames that resolve to IPv6 addresses are not supported. 530 .sp 531 The physical interface name is the network interface name. 532 .sp 533 A zone can be configured to be either exclusive-IP or shared-IP. For a 534 shared-IP zone, both the physical and address properties must be set. For an 535 exclusive-IP zone, the physical property must be set and the address property 536 cannot be set. 537 .RE 538 539 .sp 540 .ne 2 541 .na 542 \fB\fBrctl\fR\fR 543 .ad 544 .sp .6 545 .RS 4n 546 It also verifies that any defined resource control values are valid on the 547 current machine. This means that the privilege level is \fBprivileged\fR, the 548 limit is lower than the currently defined system value, and that the defined 549 action agrees with the actions that are valid for the given resource control. 550 .RE 551 552 .RE 553 554 .SH EXAMPLES 555 .LP 556 \fBExample 1 \fRUsing the \fB-m\fR Option 557 .sp 558 .LP 559 The following command illustrates the use of the \fB-m\fR option. 560 561 .sp 562 .in +2 563 .nf 564 # \fBzoneadm boot -- -m verbose\fR 565 .fi 566 .in -2 567 .sp 568 569 .LP 570 \fBExample 2 \fRUsing the \fB-i\fR Option 571 .sp 572 .LP 573 The following command illustrates the use of the \fB-i\fR option. 574 575 .sp 576 .in +2 577 .nf 578 # \fBzoneadm boot -- -i /sbin/init\fR 579 .fi 580 .in -2 581 .sp 582 583 .LP 584 \fBExample 3 \fRUsing the \fB-s\fR Option 585 .sp 586 .LP 587 The following command illustrates the use of the \fB-s\fR option. 588 589 .sp 590 .in +2 591 .nf 592 # \fBzoneadm boot -- -s\fR 593 .fi 594 .in -2 595 .sp 596 597 .SH EXIT STATUS 598 .sp 599 .LP 600 The following exit values are returned: 601 .sp 602 .ne 2 603 .na 604 \fB\fB0\fR\fR 605 .ad 606 .sp .6 607 .RS 4n 608 Successful completion. 609 .RE 610 611 .sp 612 .ne 2 613 .na 614 \fB\fB1\fR\fR 615 .ad 616 .sp .6 617 .RS 4n 618 An error occurred. 619 .RE 620 621 .sp 622 .ne 2 623 .na 624 \fB\fB2\fR\fR 625 .ad 626 .sp .6 627 .RS 4n 628 Invalid usage. 629 .RE 630 631 .SH ATTRIBUTES 632 .sp 633 .LP 634 See \fBattributes\fR(5) for descriptions of the following attributes: 635 .sp 636 637 .sp 638 .TS 639 box; 640 c | c 641 l | l . 642 ATTRIBUTE TYPE ATTRIBUTE VALUE 643 _ 644 Interface Stability Committed 645 .TE 646 647 .SH SEE ALSO 648 .sp 649 .LP 650 \fBread\fR(1), \fBsvcs\fR(1), \fBzlogin\fR(1), \fBzonename\fR(1), 651 \fBinit\fR(1M), \fBkernel\fR(1M), \fBsvcadm\fR(1M), \fBsvc.startd\fR(1M), 652 \fBsvc.startd\fR(1M), \fBzonecfg\fR(1M), \fBlibuuid\fR(3LIB), 653 \fBattributes\fR(5), \fBbrands\fR(5), \fBnative\fR(5), \fBsmf\fR(5), 654 \fBzones\fR(5) 655 .SH NOTES 656 .sp 657 .LP 658 The \fBzones\fR(5) service is managed by the service management facility, 659 \fBsmf\fR(5), under the service identifier: 660 .sp 661 .in +2 662 .nf 663 svc:/system/zones:default 664 .fi 665 .in -2 666 .sp 667 668 .sp 669 .LP 670 Administrative actions on this service, such as enabling, disabling, or 671 requesting restart, can be performed using \fBsvcadm\fR(1M). The service's 672 status can be queried using the \fBsvcs\fR(1) command. 673 .sp 674 .LP 675 The act of installing a new non-global zone is a fresh installation of the 676 Solaris operating system. A new installation of Solaris must not require 677 interaction with the user (that is, it must be "hands off"). Because of this, 678 packages installed in the global zone and all non-global zones cannot contain 679 request scripts (see \fBpkgask\fR(1M)). If a package did have a request script, 680 then the creation of a non-global zone could not be done without user 681 intervention. Any package that contains a request script is added to the global 682 zone only. See \fBpkgadd\fR(1M).