This chapter describes how to set up a DIGITAL UNIX system for maximum compatibility with ULTRIX systems, and how to migrate file systems from an ULTRIX system to a DIGITAL UNIX system. This chapter also discusses the following topics:
Using the
tar
and
pxtar
commands
Configuring Small Computer System Interconnect (SCSI) devices
Setting up internationalization databases
Configuring the
inetd
daemon for ULTRIX
compatibility
Configuring the
mountd
daemon for ULTRIX
compatibility
Note
For information on migrating shadowed data from an ULTRIX system to a DIGITAL UNIX Version 3.0 or later system, see the Logical Storage Manager manual.
You
can mount an ULTRIX File System (UFS) on a DIGITAL UNIX system, provided the file
system is created with an 8 kB block size and there are partition tables on
the disk.
The DIGITAL UNIX system can read the partition table created by the ULTRIX
chpt
command.
Once you mount the ULTRIX file system, you can use
it as you normally would.
Using an ULTRIX file system on a DIGITAL UNIX system does
not affect its usability on an ULTRIX system.
To move an ULTRIX file system to a DIGITAL UNIX system, follow these steps:
If the file system was created with a 4 kB block size, you must dump the disk to tape or to a disk that has a file system created with an 8 kB block size.
Install the disk containing the ULTRIX file system onto the DIGITAL UNIX system.
Check
the ULTRIX file system by using the
fsck
command:
# /usr/sbin/fsck /dev/rrz0h ** /dev/rz0h ** Last Mounted On IMPOSSIBLE INTERLEAVE = 0 IN SUPERBLOCK SET TO DEFAULT ?
The
IMPOSSIBLE INTERLEAVE
message
indicates that the DIGITAL UNIX system cannot use certain information on the ULTRIX
disk.
Answer the
SET TO DEFAULT
prompt by typing
yes
, as shown:
SET TO DEFAULT ? yes IMPOSSIBLE NPSECT = 0 IN SUPERBLOCK SET TO DEFAULT ?
The
IMPOSSIBLE NPSECT
message
indicates that the DIGITAL UNIX system cannot use certain information on the ULTRIX
disk.
Answer the
SET TO DEFAULT
prompt by typing
yes
, as shown:
SET TO DEFAULT ? yes ** Phase 1 -- Check Blocks and Sizes ** Phase 2 -- Check Pathnames
.
.
.
#
The
fsck
command continues.
Note
You receive these messages from the DIGITAL UNIX
fsck
command the first time you use the command on an ULTRIX disk. If you use thefsck
command to check the disk later, these messages do not appear.
Create a directory on which to mount the ULTRIX data.
The
following command creates a directory named
ultrixdata
:
# mkdir /ultrixdata
Mount the file system:
# mount /dev/rz0h /ultrixdata
Each time you move an ULTRIX disk from an ULTRIX system to a DIGITAL UNIX
system or from a DIGITAL UNIX system to an ULTRIX system, run the
fsck
command.
Then, mount the disk.
For mounting UFS CD-ROM discs, use
the
-d
option to the
mount
command.
See
mount
(8)
for more information.
This section describes migration from the ULTRIX Disk Shadowing product to the DIGITAL UNIX Logical Volume Manager (LVM) software.
Note
This section does not discuss migration to the Logical Storage Manager (LSM) software on DIGITAL UNIX systems. For migration information about LSM, see the Logical Storage Manager manual.
Before migrating ULTRIX shadowed data to a DIGITAL UNIX system, review the following guidelines:
The LVM subsystem has a broader management scope than the ULTRIX Disk Shadowing product. Nevertheless, the migration strategy presented in this section only focuses on the disk mirroring aspects of the LVM subsystem. For a complete description of the LVM subsystem, see the System Administration manual.
You must have
root
privilege on the DIGITAL UNIX
system to mirror data using the LVM subsystem.
Creating physical volumes, which is an LVM concept, on a raw partition overwrites the existing data on that partition.
An ULTRIX shadow device can only consist of corresponding partitions on physical disks of the same type. Logical volumes do not have this restriction.
You cannot migrate shadowed
root
and
swap
partitions to the LVM subsystem.
Consider the user data size and the metadata size when allocating partitions for LVM physical volumes:
User data
If the existing ULTRIX shadowed partition is nearly full, migrate the data to a larger partition.
Metadata
A DIGITAL UNIX system requires more physical space to replicate data than an ULTRIX system requires because the LVM metadata uses more disk space. Use the default LVM parameters for maximum logical volumes, maximum physical volumes, and maximum physical extents in a volume group, which requires approximately 4 MB of additional disk space.
The following steps summarize the procedure for migrating shadowed data from an ULTRIX system to a DIGITAL UNIX system:
Dump the ULTRIX shadowed file system to tape. (This is the only step performed on an ULTRIX system.)
Label the disks that you intend to use for disk mirroring. If you plan to migrate the shadowed disks, install the disks on the DIGITAL UNIX system before labeling.
Create and extend a nonmirrored logical volume.
Mirror the logical volume.
Create a DIGITAL UNIX file system on the mirrored logical device.
Mount the DIGITAL UNIX file system and restore the ULTRIX file system from tape.
Repeat this procedure for each ULTRIX shadowed file system.
The following example demonstrates how to migrate an ULTRIX shadowed file system to corresponding partitions on a DIGITAL UNIX system. The resulting migration automatically mirrors data on the DIGITAL UNIX system in the same manner that data was shadowed on the ULTRIX system. The elements of this example include:
File system:
/fs
Shadow device:
/dev/shd14g
Disk partitions:
/dev/rz1g
and
/dev/rz2g
Shadow set: two-memberDisk
type:
rz56
File system:
/fs
Logical
volume:
logvolmir
Volume group:
/dev/vg01
Physical volumes:
/dev/rz1g
and
/dev/rz2g
Mirror capacity: single mirroredDisk
type:
rz56
Use the following example as a guide for migrating your ULTRIX shadowed data:
Dump the ULTRIX shadowed file system to tape by entering the following command on your ULTRIX system:
# dump 0uf /dev/rmt0h /fs
This
command copies the entire contents of the
/fs
file system
to the
/dev/rmt0h
tape.
The command also records the date
of the dump in the file
/etc/dumpdates
when the dump is
successful.
On the DIGITAL UNIX system, create a label on the disks you will use for mirroring:
# disklabel -r -w rz1 rz56 # disklabel -r -w rz2 rz56
These commands install the standard label on the designated drive. (For more information about initializing disks, see the System Administration manual.)
You can omit this step if you have already installed a label on your disks.
On the DIGITAL UNIX system, create and extend a nonmirrored logical volume using the following steps:
Create
the physical volumes you will use for disk mirroring by entering the LVM
pvcreate
command:
# pvcreate /dev/rrz1g Physical volume /dev/rrz1g has been successfully created. # pvcreate /dev/rrz2g Physical volume /dev/rrz2g has been successfully created.
This command initializes your direct access storage device for use as a physical volume in a volume group.
Create a volume group directory in the
/dev
directory:
# mkdir /dev/vg01
Volumes that are mirrored must be in the
same volume group.
This command creates the directory that identifies the
volume group
vg01
for the LVM subsystem.
Create the volume group device file:
# mknod /dev/vg01/group c 16 0
This
command creates the volume group special device file, which is a direct connection
between the volume group and the LVM driver code.
The volume group special
device file must be a character (c
) device; it must use
one of three predefined major device numbers, in this case
16
;
and it must have a minor device number of
0
.
Create
the volume group and populate it with the physical volumes you created with
the
pvcreate
commands:
# vgcreate /dev/vg01 /dev/rz1g /dev/rz2g Creating /etc/lvmtab. Volume group /dev/vg01 has been successfully created.
This command creates the
/dev/vg01
volume group that has the members
/dev/rz1g
and
/dev/rz2g
.
The
/etc/lvmtab
file
contains information that allows the LVM software to access the physical volumes
that compose its volume groups after a system reboot.
# lvcreate -s y -n logvolmir /dev/vg01 A logical volume with name "logvolmir" will be created. Logical volume "/dev/vg01/logvolmir" has been successfully created with minor number 1.
The
lvcreate
command
creates a logical volume name,
logvolmir
.
Extend the logical volume to encompass all the physical extents
of one physical volume.
In this example,
63
is the total
number of physical extents in the physical volume
/dev/rz1g
.
The
vgdisplay
command lists the number of physical extents
available on each volume.
Specify a
logical extent for the logical volume by using the
lvextend
command:
# lvextend -l 63 /dev/vg01/logvolmir /dev/rz1g Logical volume "/dev/vg01/logvolmir" has been successfully extended.
The
-l
option extends the
logical volume so that it encompasses 63 physical extents.
The first argument
to the command,
/dev/vg01/logvolmir
, names the logical
volume.
The second argument,
/dev/rz1g
, specifies that
the logical extents are assigned to the physical extents on the
/dev/rz1g
physical device.
Mirror the logical volume on the
/dev/rz2g
device:
# lvextend -m 1 /dev/vg01/logvolmir /dev/rz2g The newly allocated mirror is now being synchronized. This operation will take some time. Please wait... Logical volume "/dev/vg01/logvolmir" has been successfully extended.
The
-m
option specifies
that the system maintains one mirror of the data in logical volume
/dev/vg01/logvolmir
.
The
/dev/rz2g
argument specifies
that the system maintain the mirror using physical extents on the
/dev/rz2g
physical device.
Create a file system on the
logvolmir
volume
by using the
newfs
command:
# newfs /dev/vg01/logvolmir rz56
Mount the ULTRIX file system on the LVM mirrored logical device and restore the file system from tape:
# mount /dev/vg01/logvolmir /fs # cd /fs # restore -r
The
mount
command mounts the
/dev/vg01/logvolmir
logical volume on the
/fs
directory.
The
cd
command changes the current directory to
/fs
, and the
restore -r
command restores the ULTRIX data from tape to the current
working directory.
The
/fs
file system is now converted to DIGITAL UNIX LVM
disk mirroring.
The
ULTRIX system supports two commands for maintaining tape archives:
pxtar
and
tar
.
The
pxtar
command
is POSIX-compliant; the
tar
command is not.
The DIGITAL UNIX system has one tape archive command,
tar
.
The DIGITAL UNIX
tar
command is POSIX-compliant.
If you use the ULTRIX
pxtar
command to create a tape
archive, you can read that tape archive by using the DIGITAL UNIX
tar
command.
In addition, if you use the ULTRIX
tar
command
to create archives that fit on a single volume, you can read those single-volume
archives with the DIGITAL UNIX
tar
command.
However, the ULTRIX
tar
command allows you to create
and read an archive that can span multiple tapes.
The ULTRIX
tar
command writes a file header at the start of each continuation
tape.
By default, the DIGITAL UNIX
tar
command does not expect
the ULTRIX header information.
The header information is treated as data,
resulting in an incorrectly extracted file and the DIGITAL UNIX
tar
command reporting a checksum error.
To read an ULTRIX
tar
archive spanning multiple tapes using the DIGITAL UNIX
tar
command,
use the
-U
option on the DIGITAL UNIX system.
This option
allows the DIGITAL UNIX
tar
command to read tapes and to ignore
the header information specific to ULTRIX.
During
the
doconfig
portion of the installation, the
sizer
program determines what hardware (such as disks and tapes)
is attached to your system and reports its findings in the system configuration
file.
On ULTRIX systems,
sizer
automatically places 16
Small Computer System Interface (SCSI) device entries (rz0-rz7
for disks and
tz0-tz7
for tapes) in the system configuration
file.
This behavior enables you to attach additional SCSI devices at any
time without having to rebuild your kernel.
On DIGITAL UNIX systems,
sizer
finds only the SCSI devices
physically attached to your system at the time of installation and specifies
those devices in the system configuration file.
For example, if you have
an RZ56 as unit 0, a TLZ04 as unit 1, and an RZ24 as unit 2 on your system,
sizer
places only these three devices in your configuration file,
as
rz0
,
tz1
, and
rz2
,
respectively.
If you later add new devices to your system, you must edit
the configuration file to include the new devices and rebuild the kernel.
You can save yourself the need to repeat this process by using the
/sys/conf/GENERIC
file as a guide to edit the configuration file
to add all possible
rzn
and
tzn
devices the first time you rebuild
the kernel.
If you are performing an advanced installation, you can edit
the configuration file before the first kernel is built.
For information
about editing the DIGITAL UNIX configuration file and rebuilding the kernel, see the
System Administration
manual.
The RZ57 SCSI disk and TZK10 SCSI tape units are not supported on a DIGITAL UNIX system.
Some applications can require you to configure shared memory. Configuring shared memory on a DIGITAL UNIX system is done in the same way as on an ULTRIX system, by editing the configuration file and rebuilding the kernel. However, the configuration parameters are slightly different, as shown in the following table:
Parameter on ULTRIX | Parameter on DIGITAL UNIX | Remarks |
smmax |
shmmax |
Defines the maximum number of bytes of virtual memory at which a shared memory segment can be sized. The default value is 4 MB on DIGITAL UNIX systems. This value is expressed in pages on ULTRIX systems, and expressed in bytes on DIGITAL UNIX systems. |
smmin |
shmmin |
Defines the minimum number of bytes of virtual memory at which a shared memory segment might be sized. The default value is 1 MB on DIGITAL UNIX systems. This value is expressed in pages on ULTRIX systems, and expressed in bytes on DIGITAL UNIX systems. |
smseg |
shmseg |
Defines the maximum number of shared memory segments per process. The default value is 32 on DIGITAL UNIX systems. |
These DIGITAL UNIX defaults are set to values that are common to most layered products. See the System Administration manual for information about modifying the configuration file and rebuilding the kernel.
The DIGITAL UNIX internationalization features allow you
to receive messages and give input in your native language, even when you
are in single-user mode.
For this feature to operate correctly, you must
store message catalogs and locale databases for the
/sbin
commands in the
/etc
directory.
You must also be sure
that the
LANG
environment variable is defined correctly.
To
store message catalogs and locale databases for the
/sbin
commands in the
/etc
directory, follow these steps:
Translate the message catalogs to the appropriate language, if necessary.
The message catalogs are stored in the
/usr/lib/nls/msg/en_US.88591
directory.
Other message catalogs might also be available in subdirectories
of the
/usr/lib/nls/msg
directory if someone has, for example,
translated the system catalogs.
Create subdirectories in the
/etc/nls
directory.
Programs search for the message catalogs in the
/etc/nls/msg/%L
directory, where
%L
represents the currently defined locale.
You must create the
msg/%L
subdirectories.
For example, suppose you want
to use message catalogs for French as it is spoken in Canada.
Enter the following
commands to create subdirectories:
% cd /etc/nls % mkdir -p msg/fr_CA.88591
Copy to the
/etc
directory the message
catalogs and locale databases for the language and commands you want to use.
For example, suppose you want to use French as it is spoken in Canada
when you are in single-user mode.
Suppose that someone has translated the
system-supplied message catalogs and has stored them in the
/usr/lib/nls/msg/fr_CA.88591
directory.
In this case, you would enter the following
cp
commands:
% cp /usr/lib/nls/loc/fr_CA.88591 /etc/nls/loc/fr_CA.88591 % cp /usr/lib/nls/loc/fr_CA.88591.en \ /etc/nls/loc/fr_CA.88591.en % cp /usr/lib/nls/msg/fr_CA.8859/* /etc/nls/msg/fr_CA.8859/.
The first
cp
command copies the French-Canadian
character database, the second command copies the environment database, and
the third command copies the message catalogs.
Delete any message catalogs
from the
/etc/nls/msg/fr_CA.8859
directory that do not
correspond to an
/sbin
command.
This frees up space in
the root partition.
Announce
to the system that you want to use the French-Canadian locale when you are
in single-user mode.
To do this, define the
LANG
environment
variable as follows:
% setenv LANG fr_CA.88591
You can also set the
LANG
variable in root's
.profile
file or shell
resource file.
Both DIGITAL UNIX
and ULTRIX systems include the
/etc/inetd.conf
file, which
contains information for the
inetd
daemon.
The
inetd
daemon is the Internet service daemon.
The DIGITAL UNIX
inetd.conf
file contains a new field.
The
following list describes the fields in the DIGITAL UNIX
inetd.conf
file:
ServiceName, which names one of
the services in the
/etc/services
file.
SocketType, which is either a stream value or a datagram value.
ProtocolName, which is one of the
protocols in the
/etc/protocols
file.
Wait/NoWait, which determines whether
the
inetd
daemon waits for a datagram server to release
the socket.
(Stream sockets are always
NoWait
.)
UserName, which specifies the user
name that the
inetd
daemon should use to start the server.
ServerPath, which specifies the
full pathname of the server the
inetd
daemon should execute.
ServerArguments, which are the command-line arguments passed to the server.
The new
UserName
field allows you
to specify what user name
inetd
should assign to a server
when it starts.
On ULTRIX systems, servers were automatically started with
the root user name.
For compatibility, specify root in this field for each
service.
However, if your server does not need root privileges, consider
specifying another user name in this field.
As long as your server does not
need root privileges, you should not notice a difference between the operation
of an ULTRIX server and the operation of a DIGITAL UNIX server that is started under
a user name other than root.
The
mountd
daemon works with other daemons to provide the NFS service.
This daemon checks
the access permission of the client and returns a pointer to the file system
or directory that is to be mounted by the NFS service.
By default, the
mountd
daemon on DIGITAL UNIX systems accepts
requests only from the superuser of a remote system.
By contrast, the ULTRIX
daemon accepts mount requests from any user.
You can configure the
mountd
daemon on a DIGITAL UNIX system
to accept requests from users other than the superuser.
To do so, start the
daemon with the
-n
option, as shown:
# /usr/sbin/mountd -n
This command starts the daemon so that it operates the same as the ULTRIX
mountd
daemon.