Solaris 10 发行版中存在下列文件系统错误。
从 0.20.46.00-IR 开始的 Dell SAS 6 HBA (LSI 1068) 固件版本引进了一种不兼容,该不兼容可能会阻止 lsiutil 和 raidctl(1M) 命令成功地配置虚拟驱动器。在失败之后,物理驱动器将进入脱机状态,并且不可访问。Solaris 10 5/08 发行版中随附的 raidctl(1M) 以及 ITImpt 5.07.04 版软件包中的 lsiutil 将受到影响。
将显示以下错误消息:
# /usr/sbin/raidctl -C "0.3.0 0.4.0" -s 64k 0 Creating RAID volume will destroy all data on spare space of member disks, proceed (yes/no)? Operation failed |
解决方法:使用 SAS 配置实用程序配置虚拟驱动器。要访问 SAS 配置实用程序,请在 BIOS 引导序列过程中得到提示时输入 Ctrl-C。
在 Intel 多处理器系统上,ata 驱动程序可能会在系统引导过程中超时。当根设备所在的驱动器具有绑定到传统 ata 驱动程序的 HBA 控制器时,会出现这样的超时。在系统引导过程中,这样的超时会导致暂时挂起、硬挂起或出现紧急情况,控制台上会出现类似如下的消息:
scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0): timeout: reset bus, target=0 lun=0 scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0): timeout: early timeout, target=0 lun=0 gda: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0/cmdk@0,0 (Disk0): Error for command 'read sector' Error Level: Informational gda: [ID 107833 kern.notice] Sense Key: aborted command gda: [ID 107833 kern.notice] Vendor 'Gen-ATA ' error code: 0x3 gda: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0/cmdk@0,0 (Disk0): Error for command 'read sector' Error Level: Informational gda: [ID 107833 kern.notice] Sense Key: aborted command gda: [ID 107833 kern.notice] Vendor 'Gen-ATA ' error code: 0x3 scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0): timeout: abort request, target=0 lun=0 scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0): timeout: abort device, target=0 lun=0 scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0): timeout: reset target, target=0 lun=0 scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0): timeout: reset bus, target=0 lun=0 scsi: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0 (ata0): timeout: early timeout, target=0 lun=0 gda: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0/cmdk@0,0 (Disk0): Error for command 'read sector' Error Level: Informational gda: [ID 107833 kern.notice] Sense Key: aborted command gda: [ID 107833 kern.notice] Vendor 'Gen-ATA ' error code: 0x3 gda: [ID 107833 kern.warning] WARNING: /pci@0,0/pci-ide@1f,2/ide@0/cmdk@0,0 (Disk0): |
解决方法:请选择以下解决方法之一:
为了避免性能下降,解决方法 3 或 4 只应在解决方法 5 尚不可用时临时使用。
解决方法 1:如果系统上有 AHCI,请在 BIOS 中启用它。启用此设置会要求重新安装 Solaris OS。
解决方法 2:在其中的控制器不使用 ata 驱动程序的磁盘上安装 Solaris。
解决方法 3:在 BIOS 设置中禁用 MP,以便只有一个处理器处于活动状态。
解决方法 4:在 Solaris 中禁用 MP,以便只有一个处理器处于活动状态。从 Grand Unified Bootloader (GRUB) 菜单中执行以下步骤:
键入 e 编辑选定的 Solaris 项。
导航到以 kernel 开头的行。
键入 e 切换到 GRUB 编辑模式。
将 -kd 附加到该行。
按 Enter 键接受更改。
键入 b 使用选定的 Solaris 项进行引导。
在 kbmd 提示符下,键入以下命令:
use_mp/W 0 :c |
如果执行系统引导,则继续步骤 10。否则,请安装 Solaris 10 5/08 软件。
在安装结束时,请重新引导系统。重复步骤 1 至 7。
为了使所做的更改永久生效,以便不必在后续的引导过程中重复上述步骤,请执行以下操作:
在完成系统引导之后成为超级用户。
打开 /etc/system 文件。
添加以下行:
set use_mp = 0 |
解决方法 5:禁用微代码更新。键入以下命令:
# mv /platform/i86pc/ucode /platform/i86pc/ucode.disabled |
在系统引导之后,可以手动调用微代码更新:
# ucodeadm -u /platform/i86pc/ucode.disabled/intel-ucode.txt |
如果最初为非全局区域配置了使用 `add fs 子命令挂载的 ZFS 文件系统,并指定了 mountpoint=legacy,则后续区域安装会失败。将显示以下错误消息:
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 |
解决方法:安装了非全局区域后,添加对 ZFS 文件系统的访问权限。
ZFS 旨在成为与 POSIX 兼容的文件系统,并且在大多数情况下,ZFS 与 POSIX 兼容。但是,存在两种 ZFS 不能达到 POSIX 兼容测试标准的边界情况:
更新 ZFS 文件系统容量统计信息。
修改达到容量极限的文件系统的现有数据。
相关 CR:
6362314
6362156
6361650
6343113
6343039
如果使用 fdisk -E 命令修改 ZFS 存储池使用的磁盘,该存储池将不可用,并可能导致 I/O 故障或系统出现紧急情况。
解决方法:
请勿使用 fdisk 命令修改 ZFS 存储池使用的磁盘。如果要访问 ZFS 存储池使用的磁盘,请使用 format 实用程序。通常情况下,不应修改文件系统正在使用的磁盘。
以下是 Veritas NetBackup 和 Brightstor ARCserve Backup 产品的问题。
Veritas NetBackup 产品可用于备份 ZFS 文件,且此配置是受支持的。但是,该产品目前不支持备份或恢复 ZFS 文件中的 NFSv4 样式 ACL 信息。传统的权限位和其他文件属性可以被正确地备份和恢复。
如果用户试图备份或恢复 ZFS 文件,则 ZFS 文件中的 NFSv4 样式 ACL 信息将被删除。不会显示任何指示 ZFS 文件中的 ACL 信息被删除的错误消息。
对 ZFS/NFSv4 ACL 的支持功能正处于开发过程中,预计在下一 Veritas NetBackup 发行版中提供。
解决方法 1:
从 Solaris 10 8/07 发行版开始,tar 和 cpio 命令都可以正确处理具有 NFSv4 样式 ACL 的 ZFS 文件。
使用带有 -p 选项的 tar 命令或带有 -P 选项的 cpio 命令将 ZFS 文件写入一个文件。然后,使用 Veritas NetBackup 备份 tar 或 cpio 归档文件。
解决方法 2:
除使用 Veritas NetBackup 之外,还可以使用 ZFS send 和 receive 命令备份 ZFS 文件。这些命令会正确地处理 ZFS 文件的所有属性。
BrightStor ARCserve Backup (BAB) Client Agent for UNIX (Solaris) 可用于备份和恢复 ZFS 文件。
但在备份过程中不保留 ZFS NFSv4 样式 ACL。将保留传统 UNIX 文件权限和属性。
解决方法:如果要保留具有 NFSv4 样式 ACL 的 ZFS 文件,请使用带有 -p 选项的 tar 命令或带有 -P 选项的 cpio 命令,将 ZFS 文件写入一个文件。然后,使用 BAB 备份 tar 或 cpio 归档文件。
如果在运行 Solaris 10 6/06 发行版之前版本的系统(该系统中没有 embedded_su 修补程序)中添加 Solaris 10 8/07 或 Solaris 10 5/08 发行版中的 SUNWzfsg 软件包,则 ZFS Administration 应用程序向导无法完全正常工作。
如果尝试在没有 embedded_su 修补程序的系统上运行 ZFS Administration 应用程序, 您将只能浏览 ZFS 配置。将显示以下错误消息:
/usr/lib/embedded_su: not found |
解决方法:
在运行 Solaris 10 6/06 发行版之前版本的系统中添加 embedded_su 修补程序 (119574-02)。
对于一个使用 Solaris iSCSI 软件启动器连接的目标设备,如果主机的文件系统 I/O 出现了紧急情况,该 I/O 可能无法刷新或同步该目标设备。这种无法刷新或同步的情况可能导致文件系统损坏。不会显示任何错误消息。
解决方法:
使用日志文件系统(如 UFS)。从 Solaris 10 开始,缺省情况下启用 UFS 日志记录功能。有关 UFS 的更多信息,请参见《系统管理指南:设备和文件系统》中的“Solaris 10 发行版中文件系统方面的新增功能”。
将 NFSv4 服务器从 Solaris Express 6/05 升级到 Solaris Express 7/05 或更高版本(包括所有 Solaris 10 更新)之后,程序可能会遇到 EACCES 错误。另外,各目录可能错误地显示为空。
要避免这些错误,请卸载,然后重新挂载客户机文件系统。在卸载失败的情况下,可能需要通过使用 umount -f 强制卸载文件系统。另外,也可以重新引导客户机。
如果使用不同的 Solaris 10 早期版本在网络中安装客户机和服务器,则 NFSv4 访问控制列表 (ACL) 功能可能无法正常运行。使用这些功能的受影响的 ACL 功能和命令行实用程序如下所示:
acl()
facl()
getfacl
setfacl
有关这些功能和实用程序的更多信息,请参见它们各自的手册页。
例如,在包含下列配置的网络中可能观察到错误:
运行 Solaris 10 Beta 软件的客户机
运行 Solaris 10 软件的服务器
下表说明对于不同的 Solaris 10 发行版,客户机-服务器配置中的 ACL 功能的结果。
操作 |
客户机 S10 OS |
服务器 S10 OS |
结果 |
---|---|---|---|
获取 ACL |
S10 Beta |
S10 OS |
创建 ACL * |
获取 ACL |
S10 OS |
S10 Beta |
正常运行 |
设置 ACL |
S10 Beta |
S10 OS |
正常运行 |
设置 ACL |
S10 OS |
S10 Beta |
错误:EOPNOTSUP |
解决方法:要使 NFSv4 ACL 功能正常,请在服务器和客户机上完全安装 Solaris 10 OS。
在当前 Solaris 10 版本中,NFSv4 访问控制列表 (ACL) 的 Solaris 实现现在与 RFC 3530 规范兼容。不过,在使用 Solaris 10 Beta 2 或 Beta 1 版本的 NFSv4 客户机上发生错误。这些客户机不能在使用当前 Solaris 10 发行版的 NFSv4 服务器中创建文件。将显示以下错误消息:
NFS getacl failed for server_name: error 9 (RPC: Program/version mismatch) |
解决方法:无。
mkfs 命令可能无法在具有某一特定磁盘几何参数 (disk geometry) 且大小超过 8 GB 的磁盘上创建文件系统。由此得到的柱面组大小对于 1 KB 碎片来说太大。柱面组的大小过大意味着在一个块中无法容纳多余的元数据。
将显示以下错误消息:
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. |
解决方法:改用 newfs 命令。或者,如果使用 mkfs 命令,请指定较大的碎片大小(如 4096)。
系统在大小大于或等于 1 TB 的分区上不能生成转储。如果系统中存在此类设备,则在系统引导后,在发生系统紧急情况后可能发生下列问题:
系统不保存转储。
将显示以下消息:
0% done: 0 pages dumped, compression ratio 0.00, dump failed: error 6 |
解决方法:将系统的转储设备大小配置为小于 1 TB。
如果使用 smosservice 命令将 OS 服务添加到 UFS 文件系统,会显示没有足够可用磁盘空间的消息。此错误特定于贴有 EFI 标签的磁盘上的 UFS 文件系统。
解决方法:完成以下解决方法。
应用 SMI VTOC 磁盘标签。
重新创建文件系统。
重新运行 smosservice 命令。