btcreate - Builds a bootable Standalone System (SAS) kernel on tape
/usr/sys/bin/btcreate [-a addlist_file[-d disk_tmp_space]] [-f] [-k
config_file] -mdisk_partition [-s fslist_file] [-t tape_device]
Use the btcreate command to build a bootable Standalone System (SAS) kernel
on UFS and AdvFS file systems. The btcreate command supports noninterac-
tive and interactive modes. To run the command in noninteractive mode,
specify at least the -f, -k, -m, -s, -t, and -d options on the command
line. To run the command in interactive mode, invoke it without any
options or with a subset of the preceding options. You are then prompted
to supply the minimum parameters and variables.
The following command options are available:
Causes the btcreate command to back up the files and directories speci-
fied in the addlist_file. Files are backed up to the miniroot file
system. This miniroot file system is the minimum file system required
to build the SAS kernel. If you are using the btcreate command in
noninteractive mode, you must create the addlist_file file before
invoking the command. The addlist_file file name must be absolute
pathname, such as /usr/lib/sabt/etc/addlist.
The addlist_file file consists of one line for each entry. Each entry
has two fields separated by a space or tab character. The first field
specifies the absolute pathname of the file or directory on the
currently running system. If the file is not found, the btcreate com-
mand exits. The second field specifies the absolute pathname of the
file or directory on the miniroot file system.
A sample addlist_file follows:
If the total size of all files and directories exceeds the size limit
of 360KB on the miniroot file system, the btcreatecommandexits.
-d Enables you to specify the location of temporary workspace. If you do
not use this option, the btcreate command creates temporary files in
the /usr filesystem and requires up to 156000 blocks (512 byte blocks)
of disk space. In the following example, the temporary files are
created in the /mnt/bt_tmp directory:
# ./btcreate -d /mnt/bt_tmp
-f Forces the newfscommandto create the miniroot file system without veri-
fying whether or not a file system exists on the partition. This option
also forces the btcreate command to be completely noninteractive,
whether or not you specify the mfs parameter or the disk partition
parameter with the -m option.
Causes the btcreatecommandto use the specified kernel configuration
file located in the /usr/sys/conf directory. The kernel configuration
file defines the run-time behavior of the kernel and is used to build
the SAS kernel.
-m mfs | disk_partition
Causes the btcreate command to create the miniroot file system on a
memory file system (mfs) using the mfs command, or on the specified
disk partition (for example, dsk0h) using the newfs command. The
miniroot file system is the minimum file system required to build the
An mfs is a UFS file system which resides in virtual memory. By creat-
ing the miniroot file system in virtual memory, you can save disk
space. The mfscommanduses 21MB of memory using swap space as the spe-
cial device. The btcreate command mounts the mfs on the
/var/tmp/mfsmnt$$ mount point. If you specify the mfs option, the
btcreate command creates another memory file system that is 20.5MB
which is mounted on the /var/tmp/procprod directory.
If you have sufficient disk space, use the -m option with the
disk_partition variable to create the miniroot file system on disk.
Causes the btcreate command to back up the file systems specified in
the fslist_file file to tape. If you are using the btcreatecommandin
non-interactive mode, you must create this file before invoking the
utility. Specify an absolute pathname such as/usr/lib/sabt/etc/fslist
for the fslist_file file parameter.
The fslist_file file consists of one line for each file system you want
to back up. Each line contains three fields separated by a space as
devname mountpoint type
In the previous example:
Specifies the name of the disk device where the file system
resides. For example, /dev/disk/disk0a, /dev/vol/rootdg/rootvol,
and root_domain#root are valid device names for UFS and AdvFS
Specifies where the file system is mounted. For example, the mount
point may be the root directory (/).
Specifies the type of file system. Valid entries are ufs for the
UNIX File System or advfs for the Advanced File System.
Causes the btcreatecommandto use the tape device specified (for exam-
Use the btcreatecommand to build a bootable Standalone System (SAS) kernel
on tape. The SAS kernel has a built-in memory file system (mfs), which con-
tains the minimum commands, files, and directories needed to restore the
system image. This is referred to as the miniroot file system. The
btcreatecommand supports UFS and AdvFS file systems only.
You must have superuser privileges to use thiscommand and you can invoke
only a single instance of the btcreate command.
To execute, the btcreate command requires 20MB of disk space in the
/usr directory unless you use the -d option to specify alternate tem-
To prepare to create a SAS kernel using the btcreate command, have the fol-
lowing information available:
+ Name of the configuration file in the /usr/sys/conf directory.
+ Name of the disk partition (for example, dsk2e) where the miniroot
file system is to reside. Minimum size needed on the disk is 21MB.
This disk partition should not be mounted when you issue the btcreate
The btcreate command invokes the newfs command to create the parti-
tion. If you do not specify the -f option, the newfs command
prompts you to confirm overwriting the partition. If you specify the
-f option, the newfs command overwrites this partition without
prompting you for confirmation.
+ Name of the tape device, for example tape0_d1, where the SAS kernel
and file systems are to reside.
+ Device name, mount point, and type of each file system (UFS, AdvFS )
that you want to back up to the tape device. The following examples
show valid UFS and AdvFS entries:
/dev/disk/dsk1a / ufs
/dev/disk/dev/dsk1g /usr ufs
root_domain#root / advfs
usr_domain#usr /usr advfs
If you do not specify the -s option, the btcreatecommand displays a
list of file systems to help you with your selection. If you specify
the -s option, you must create the file before starting the btcreate
utility. See the -s option for more information.
Do not select swap partitions or volumes for file system backups.
For UFS filesystems over LSM volumes use the vdump and vrestore com-
mands to archive and extract file systems.
+ An addlist_file file, if you specify the -a option, which includes
files or directories on the miniroot file system. See the -a option
for more information.
+ An fslist_file file, if you specify the -s option, which specifies the
file systems to back up. See the -s option for more information.
+ A /usr/lib/sabt/sbin/custom_install.sh script, if you want to custom-
ize the restored system image. Both interactive and noninteractive
users must create this file before invoking the btcreate utility. The
file must be written in the Bourne shell language (sh1) as it is the
only shell provided on the miniroot file system.
The btcreatecommand copies the custom_install.sh file to tape and
places it in the sbin directory on the miniroot file system. The
btextractcommand invokes the custom_install.sh script before exiting.
To create the SAS kernel, the btcreatecommand copies the
/usr/sys/conf/YOUR_SYSTEM_NAME configuration file to
/usr/sys/conf/YOUR_SYSTEM_NAME.BOOTABLE and modifies it as follows:
config vmunix root on md
pseudo-device memd 38000
These modifications indicate that a memory file system of 38000 is config-
ured. The memory file system and the disk partition where the miniroot
file system reside are equivalent in size.
After modifying the configuration file, the btcreatecommand executes the
doconfig command and moves the bootable kernel,
/usr/sys/YOUR_SYSTEM_NAME.BOOTABLE/vmunix to the /usr/sys/bin directory.
You can optionally label disks using your own disklabel script. If a cus-
tomized disklabel script is not present, the btextract command labels the
disks in the usual manner. A customized disklabel script has the follow-
+ It must be located in the /usr/lib/sabt/etc directory.
+ It must be named custom_disklabel_file.
You use the btextract command to boot a system from a bootable tape. Store
the following information with the tape, so that recovery is faster:
+ When btextract command starts, it prompts you for the following infor-
-- The device name of the tape drive (such as dev/tape/tape0_d1) in
which the bootable tape is loaded
-- The compression density at which the tape was created
-- Whether a default or advanced (customized) restore operation is
+ The type and layout of the disk from which the bootable tape is
created. You can obtain this information by using the diskconfig GUI
or the disklabel command.
To automate recovery, you can store restoration instructions in the
/usr/lib/sabt/etc/custom_prerestore file. See btextract(8) for more infor-
>>0 An error occurred
The following examples demonstrate several methods of invoking the btcreate
1. In the following example, the btcreate command is invoked without any
options, placing you in interactive mode. The btcreate command prompts
you for all information needed to build the SAS kernel.
2. In the following example, all options are specified causing the
btcreatecommand to build the SAS kernel in noninteractive mode. That
is, the SAS kernel is built without prompting you for information.
# /usr/sys/bin/btcreate -a /usr/lib/sabt/etc/addlist_file -f \
-k YOUR_SYSTEM_NAME -m mfs -t tape0_d1 -d /mnt/bt_tmp \
3. In the following example, the -a option is excluded from the command
line. The btcreatecommand assumes you are not adding files or direc-
tories. The SAS kernel is built without prompting you for information
because you specified the minimum options required to run in nonin-
# /usr/sys/bin/btcreate -f -k GOOFY -m mfs -t tape0_d1 \
4. In the following example, the -k option is excluded from the command
line. The btcreatecommand places you in interactive mode and prompts
you for any options that you did not specify.
# /usr/sys/bin/btcreate -a /usr/sys/bin/user_file -f \
-m dsk0h -t tape0_d1 -s /usr/local/bin/backup_file
Provides a log of the btcreate process
Specifies the customized shell script used to perform system adminis-
trative tasks on the restored system image
A custom disklabel file read by the btextract command
A locking file that prevents multiple instances of the btcreate command
The following restrictions apply:
+ You cannot run multiple instances of the btcreate command. The
/usr/run/bttape.pid lock file is created when the command runs and is
removed when that instance of the command is terminated.
+ LSM support is provided only for root, swap and usr filesystems.
+ LSM support is provided on a system only if it is configured with LSM
volumes at installation.
+ LSM support is provided only in unattended mode.
+ Mirroring and striping are not supported options for bootable tape.
Commands: df(1), btextract(8), disklabel(8), doconfig(8), dump(8),
newfs(8), mkfdmn(8), mkfset(8), pmerge(8), vdump(8)