The following file system bugs apply to the Solaris 10 release.
If a non-global zone is initially configured with a ZFS file system to be mounted with the `add fs subcommand and specifies mountpoint=legacy, the subsequent zone installation fails. The following error message is displayed.
ERROR: No such file or directory: cannot mount </zones/path/root/usr/local> in non-global zone to install: the source block device or directory </path/local> cannot be accessed
Workaround: Add access to a ZFS file system after installing the non-global zone.
ZFS is designed to be a POSIX compliant file system and in most situations, ZFS is POSIX compliant. However, two edge case conditions exist when ZFS does not meet the POSIX compliance tests:
Updating ZFS files system capacity statistics.
Modifying existing data with a 100 percent full file system.
If you use the fdisk -E command to modify a disk that is used by a ZFS storage pool, the pool becomes unusable and might cause an I/O failure or system panic.
Do not use the fdisk command to modify a disk that is used by a ZFS storage pool. If you need to access a disk that is used by a ZFS storage pool, use the format utility. In general, disks that are in use by file systems should not be modified.
The following are the issues with the Veritas NetBackup and Brightstor ARCserve Backup products.
The Veritas NetBackup product can be used to back up ZFS files, and this configuration is supported. However, this product does not currently support backing up or restoring NFSv4-style ACL information from ZFS files. Traditional permission bits and other file attributes are correctly backed up and restored.
If a user tries to back up or restore ZFS files, the NFSv4-style ACL information from ZFS files is silently dropped. There is no error message indicating that the ACL information from ZFS files has been dropped.
Support for ZFS/NFSv4 ACLs is under development and is expected to be available in the next Veritas NetBackup release.
As of the Solaris 10 8/07 release, both the tar and cpio commands correctly handle ZFS files with NFSv4-style ACLs.
Use the tar command with the -p option or the cpiocommand with the -P option to write the ZFS files to a file. Then, use the Veritas NetBackup to back up the tar or cpio archive.
As an alternative to using Veritas NetBackup, use the ZFS send and receive commands to back up ZFS files. These commands correctly handle all attributes of ZFS files.
The BrightStor ARCserve Backup (BAB) Client Agent for UNIX (Solaris) can be used to backup and restore ZFS files.
However, ZFS NFSv4-style ACLs are not preserved during backup. Traditional UNIX file permissions and attributes are preserved.
Workaround: If you want to preserve ZFS files with NFSv4-style ACLs, use the tar command with the -p option or the cpio command with the -P option to write the ZFS files to a file. Then, use BAB to backup the tar or cpio archive.
If you add the SUNWzfsg package from a Solaris 10 8/07 release to a system that runs a pre-Solaris 10 6/06 release, which does not have the embedded_su patch, the ZFS Administration application wizards are not fully functional.
If you attempt to run the ZFS Administration application on a system without the embedded_su patch, you will only be able to browse your ZFS configuration. The following error message is displayed:
/usr/lib/embedded_su: not found
Add the embedded_su patch (119574-02) to the system that runs a pre-Solaris 10 6/06 release.
If a host panics with file system I/O occurring to a target, which is connected by using the Solaris iSCSI software initiator, the I/O might not be able to flush or sync to the target device. This inability to flush or sync might cause file system corruption. No error message is displayed.
Use the journaling file system like UFS. Starting with Solaris 10, UFS logging is enabled by default. For more information about UFS, see What’s New in File Systems? in System Administration Guide: Devices and File Systems.
After you upgrade an NFSv4 server from 6/05 to Solaris Express 7/05 or later (including all Solaris 10 updates), your programs might encounter EACCES errors. Furthermore, directories might erroneously appear to be empty.
To prevent these errors, unmount and then remount the client file systems. In case unmounting fails, you might need to forcibly unmount the file system by using umount -f. Alternatively, you can also reboot the client.
NFSv4 Access Control List (ACL) functions might work improperly if clients and servers in the network are installed with different previous Solaris 10 releases. The affected ACL functions and command-line utilities that use these functions are the following:
For more information about these functions and utilities, see their respective man pages.
For example, errors might be observed in a network that includes the following configuration:
A client that is running Solaris 10 Beta software
A server that is running Solaris 10 software
The following table illustrates the results of the ACL functions in client-server configurations with different Solaris 10 releases.
Workaround: For the NFSv4 ACL functionality to work properly, perform a full installation of the Solaris 10 OS on both the server and the client.
In the current Solaris 10 version, Solaris implementation of NFSv4 Access Control Lists (ACL) is now compliant with RFC 3530 specifications. However, errors occur for NFSv4 clients that use the Solaris 10 Beta 2 or Beta 1 versions. These clients cannot create files in the NFSv4 servers that are using the current Solaris 10 release. The following error message is displayed:
NFS getacl failed for server_name: error 9 (RPC: Program/version mismatch)
The mkfs command might be unable to create a file system on disks with a certain disk geometry and whose sizes are greater than 8 Gbytes. The derived cylinder group size is too large for the 1-Kbyte fragment. The large size of the cylinder group means that the excess metadata cannot be accommodated in a block.
The following error message is displayed:
With 15625 sectors per cylinder, minimum cylinders per group is 16. This requires the fragment size to be changed from 1024 to 4096. Please re-run mkfs with corrected parameters.
Workaround: Use the newfs command instead. Or, assign a larger fragment size, such as 4096, when you use the mkfs command.
Creating a UFS file system with the newfs command might fail under the following conditions:
The size of the slice is small, approximately less than 4 Mbytes.
The size of the disk exceeds 8 Gbytes.
The error is caused by the large-size requirement of the file system for metadata. The following warning message is displayed:
Warning: inode blocks/cyl group (295) >= data blocks (294) in last cylinder group. This implies 4712 sector(s) cannot be allocated. /dev/rdsk/c0t0d0s6: 0 sectors in 0 cylinders of 48 tracks, 128 sectors 0.0MB in 0 cyl groups (13 c/g, 39.00MB/g, 18624 i/g) super-block backups (for fsck -F ufs -o b=#) at: #
Workaround: As superuser, perform one of the following workarounds:
Workaround 1: Specify the number of tracks when you use the newfs command. Follow these steps.
Use the format command to find out the number of tracks to assign. For example:
# format Searching for disks...done AVAILABLE DISK SELECTIONS: 0. c0t0d0 <SUN18G cyl 7506 alt 2 hd 19 sec 248> /pci@1f,4000/scsi@3/sd@0,0 Specify disk (enter its number):
In the example, the number of tracks is 19.
Assign the number to the file system that you create with the newfs command. For example:
# newfs -v -t 19 /dev/dsk/c0t0d0s6 newfs: construct a new file system /dev/rdsk/c0t0d0s6: (y/n)? y mkfs -F ufs /dev/rdsk/c0t0d0s6 4712 -1 19 8192 1024 16 10 167 2048 t 0 -1 8 128 n mkfs: bad value for nsect: -1 must be between 1 and 32768 mkfs: nsect reset to default 32 Warning: 152 sector(s) in last cylinder unallocated /dev/rdsk/c0t0d0s6: 4712 sectors in 8 cylinders of 19 tracks, 32 sectors 2.3MB in 1 cyl groups (16 c/g, 4.75MB/g, 2304 i/g) super-block backups (for fsck -F ufs -o b=#) at: 32, #
Workaround 2: Specify the number of bytes per inode (nbpi) in the newfs command to reduce the inode density in the file system. For example:
# newfs -i 4096 /dev/dsk/c0t0d0s6 newfs: construct a new file system /dev/rdsk/c0t0d0s6: (y/n)? y Warning: 1432 sector(s) in last cylinder unallocated /dev/rdsk/c0t0d0s6: 4712 sectors in 1 cylinders of 48 tracks, 128 sectors 2.3MB in 1 cyl groups (16 c/g, 48.00MB/g, 11648 i/g) super-block backups (for fsck -F ufs -o b=#) at: 32, #
The system cannot generate a dump on a partition that is equal to or greater than 1 Tbyte in size. If such a device is on a system, the following might occur after the system boots subsequent to a system panic:
The system does not save the dump.
The following message is displayed:
0% done: 0 pages dumped, compression ratio 0.00, dump failed: error 6
Workaround: Configure the size of your system's dump device to less than 1 Tbyte.
If you use the smosservice command to add OS services to a UFS file system, a message that there is insufficient disk space available is displayed. This error is specific to UFS file systems on EFI-labeled disks.
Workaround: Complete the following workaround.
Apply the SMI VTOC disk label.
Re-create the file system.
Rerun the smosservice command.