JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris 管理:Oracle Solaris Zones、Oracle Solaris 10 Zones 和资源管理     Oracle Solaris 11 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

第 1 部分Oracle Solaris 资源管理

1.  资源管理介绍

2.  项目和任务(概述)

3.  管理项目和任务

4.  扩展记帐(概述)

5.  管理扩展记帐(任务)

6.  资源控制(概述)

7.  管理资源控制(任务)

8.  公平份额调度器(概述)

9.  管理公平份额调度器(任务)

10.  使用资源上限设置守护进程控制物理内存(概述)

11.  管理资源上限设置守护进程(任务)

12.  资源池(概述)

13.  创建和管理资源池(任务)

14.  资源管理配置示例

第 2 部分Oracle Solaris Zones

15.  Oracle Solaris Zones 介绍

16.  非全局区域配置(概述)

17.  规划和配置非全局区域(任务)

18.  关于安装、关闭、停止、卸载和克隆非全局区域(概述)

19.  安装、引导、关闭、停止、卸载和克隆非全局区域(任务)

20.  非全局区域登录(概述)

21.  登录到非全局区域(任务)

22.  关于区域迁移和 zonep2vchk 工具

23.  迁移 Oracle Solaris 系统和迁移非全局区域(任务)

24.  关于安装了区域的 Oracle Solaris 11 系统上的自动安装和软件包

25.  Oracle Solaris Zones 管理(概述)

全局区域可见性和访问权限

区域中的进程 ID 可见性

区域中的系统可查看性

利用 zonestat 实用程序报告活动区域统计信息

非全局区域节点名称

在区域内运行 NFS 服务器

文件系统和非全局区域

-o nosuid 选项

在区域中挂载文件系统

在区域中卸载文件系统

安全限制和文件系统行为

作为 NFS 客户机的非全局区域

在区域中禁止使用 mknod

遍历文件系统

从全局区域中访问非全局区域的限制

共享 IP 非全局区域中的联网

共享 IP 区域分区

共享 IP 网络接口

同一计算机上共享 IP 区域之间的 IP 通信

共享 IP 区域中的 Oracle Solaris IP 过滤器

共享 IP 区域中的 IP 网络多路径

专用 IP 非全局区域中的联网

专用 IP 区域分区

专用 IP 数据链路接口

同一计算机上专用 IP 区域之间的 IP 通信

专用 IP 区域中的 Oracle Solaris IP 过滤器

专用 IP 区域中的 IP 网络多路径

非全局区域中的设备使用

/dev/devices 名称空间

专用设备

设备驱动程序管理

在非全局区域中无法使用或者修改的实用程序

无法在非全局区域中使用的实用程序

SPARC: 修改为可在非全局区域中使用的实用程序

允许具有安全含义的实用程序

在非全局区域中运行应用程序

在非全局区域中使用的资源控制

安装了区域的系统上的公平份额调度器

全局或非全局区域中的 FSS 份额分配

区域之间的份额平衡

安装了区域的系统上的扩展记帐

非全局区域中的特权

在区域中使用 IP 安全体系结构

共享 IP 区域中的 IP 安全体系结构

专用 IP 区域中的 IP 安全体系结构

在区域中使用 Oracle Solaris 审计

区域中的核心文件

在非全局区域中运行 DTrace

关于备份安装了区域的 Oracle Solaris 系统

备份回送文件系统目录

在全局区域中备份系统

在系统上备份单个非全局区域

创建 Oracle Solaris ZFS 备份

确定在非全局区域中备份的内容

仅备份应用程序数据

常规数据库备份操作

磁带备份

关于恢复非全局区域

在安装了区域的系统上使用的命令

26.  管理 Oracle Solaris Zones(任务)

27.  配置和管理不可编辑的区域

28.  各种 Oracle Solaris Zones 问题的故障排除

第 3 部分Oracle Solaris 10 Zones

29.  Oracle Solaris 10 Zones 介绍

30.  评估 Oracle Solaris 10 系统和创建归档文件

31.  (可选)将 Oracle Solaris 10 native 非全局区域迁移到 Oracle Solaris 10 Zones

32.  配置 solaris10 标记区域

33.  安装 solaris10 标记区域

34.  引导区域、登录和区域迁移

词汇表

索引

文件系统和非全局区域

本节介绍有关安装了区域的 Oracle Solaris 系统上文件系统问题的相关信息。每个区域都有自己的文件系统分层结构部分,根目录称为区域 root。区域中的进程仅可访问区域根目录下的分层结构部分中的文件。chroot 实用程序可以在区域中使用,但是仅用于将进程限制在区域内的根路径。有关 chroot 的更多信息,请参见 chroot(1M)

-o nosuid 选项

mount 实用程序的 -o nosuid 选项具有以下功能:

所有可使用 mount 实用程序(如 mount(1M) 手册页中所述)挂载的 Oracle Solaris 文件系统都可以使用这一特定于文件系统的选项。在本指南中,这些文件系统在在区域中挂载文件系统中列出。同时也对挂载功能进行了说明。有关 -o nosuid 选项的更多信息,请参见《Oracle Solaris 管理:网络服务》中的“访问网络文件系统(参考)”。

在区域中挂载文件系统

从区域中挂载文件系统时,将应用 nodevices 选项。例如,如果区域被授予访问对应于 UFS 文件系统的块设备 (/dev/dsk/c0t0d0s7) 和原始设备 (/dev/rdsk/c0t0d0s7) 的权限,则从区域中挂载此文件系统时,会自动使用 nodevices 选项挂载。此规则不适用于通过 zonecfg 配置指定的挂载。

下表介绍用于在非全局区域中挂载文件系统的选项。其他挂载方法过程在配置、检验并提交区域在正在运行的非全局区域中挂载文件系统中介绍。

对于未在此表中列出的任意文件系统类型,如果它在 /usr/lib/fstype/mount 中具有挂载二进制命令,则可以在配置中指定此文件系统类型。

如果允许挂载缺省文件系统之外的其他文件系统,则区域管理员可以影响系统。

文件系统
非全局区域中的挂载选项
AutoFS
不能使用 zonecfg 挂载。可以在区域中挂载。
CacheFS
不能在非全局区域中使用。
FDFS
可以使用 zonecfg 挂载,可以从区域中挂载。
HSFS
可以使用 zonecfg 挂载,可以从区域中挂载。
LOFS
可以使用 zonecfg 挂载,可以从区域中挂载。
MNTFS
不能使用 zonecfg 挂载。可以在区域中挂载。
NFS
不能使用 zonecfg 挂载。当前区域所支持的版本 V2、V3 和 V4 可以在区域中挂载。
PCFS
可以使用 zonecfg 挂载,可以从区域中挂载。
PROCFS
不能使用 zonecfg 挂载。可以在区域中挂载。
TMPFS
可以使用 zonecfg 挂载,可以从区域中挂载。
UDFS
可以使用 zonecfg 挂载,可以从区域中挂载。
UFS
可以使用 zonecfg 挂载,可以从区域中挂载。

注 - quota(1M) 中所述的 quota 命令不能用来检索通过 zonecfg add fs 资源添加的 UFS 文件系统的配额信息。

如果使用 add fs,必须在全局区域内安装 system/file-system/ufs 软件包。要在非全局区域内通过 zonecfg 命令使用 UFS 文件系统,必须在安装后或通过 AI 清单脚本将该软件包安装到区域中。

以下内容键入到一行中:

global# pkg -R /tank/zones/my-zone/root \
install system/file-system/ufs

ZFS
可以使用 zonecfg datasetfs 资源类型进行挂载。

有关更多信息,请参见如何配置区域在正在运行的非全局区域中挂载文件系统mount(1M) 手册页。

在区域中卸载文件系统

卸载文件系统的能力将取决于执行初始挂载的人员。如果使用 zonecfg 命令将文件系统指定为区域配置的一部分,则全局区域将拥有此挂载,而非全局区域管理员无法卸载该文件系统。如果从非全局区域内挂载文件系统(例如在区域 /etc/vfstab 文件中指定挂载),则非全局区域管理员可以卸载该文件系统。

安全限制和文件系统行为

在区域中挂载某些文件系统时存在安全限制。其他文件系统在区域中挂载时会显示出特殊行为。已修改的文件系统列表如下。

AutoFS

Autofs 是一项可自动挂载相应文件系统的客户端服务。当客户机尝试访问目前未挂载的文件系统时,AutoFS 文件系统会拦截请求并调用 automountd 以挂载请求的目录。在区域中建立的 AutoFS 挂载对于此区域而言是本地挂载。不能从其他区域(包括全局区域)访问这些挂载。在停止或重新引导区域时,将删除挂载。有关 AutoFS 的更多信息,请参见《Oracle Solaris 管理:网络服务》中的"Autofs 如何工作"

每个区域都运行自己的 automountd 副本。自动映射和超时由区域管理员控制。不能跨越非全局区域的 AutoFS 挂载点从全局区域触发其他区域中的挂载。

触发其他挂载时,便会在内核中创建某些 AutoFS 挂载。此类挂载不能使用常规 umount 接口删除,因为它们必须作为一个组进行挂载或卸载。请注意,提供此功能是为了关闭区域。

MNTFS

MNTFS 是一款虚拟文件系统,可提供本地系统中已挂载文件系统表的只读访问权限。在非全局区域中使用 mnttab 可查看的一组文件系统是该区域中已挂载的一组文件系统和一个根 (/) 项。具有无法在区域中访问的特殊设备的挂载点(例如 /dev/rdsk/c0t0d0s0)都将其特殊设备的挂载点设置为与此挂载点相同。系统中的所有挂载都可从全局区域的 /etc/mnttab 表中查看。有关 MNTFS 的更多信息,请参见《Oracle Solaris 管理:设备和文件系统》中的"挂载和取消挂载 Oracle Solaris 文件系统"

NFS

在区域中建立的 NFS 挂载对于此区域而言是本地挂载。不能从其他区域(包括全局区域)访问这些挂载。在停止或重新引导区域时,将删除挂载。

在区域中,NFS 挂载如同使用 nodevices 选项进行挂载。

nfsstat 命令输出仅与运行此命令的区域有关。例如,如果在全局区域中运行此命令,则仅报告有关此全局区域的信息。有关 nfsstat 命令的更多信息,请参见 nfsstat(1M)

PROCFS

/proc 文件系统(或 PROCFS)提供进程可见性和访问限制,同时还提供有关进程的区域关联的信息。通过 /proc 只能查看同一区域中的进程。

全局区域中的进程可以查看非全局区域中的进程和其他对象。这样,此类进程便可查看整个系统范围的内容。

在区域中,procfs 挂载如同使用 nodevices 选项进行挂载。有关 procfs 的更多信息,请参见 proc(4) 手册页。

LOFS

通过 LOFS 进行挂载的范围被限制为区域中可见的文件系统部分。因此,对区域中的 LOFS 挂载没有任何限制。

UFS、UDFS、PCFS 以及其他基于存储的文件系统

使用 zonecfg 命令配置具有 fsck 二进制命令的基于存储的文件系统(例如 UFS)时,区域管理员必须指定 raw 参数。该参数指明原始(字符)设备,如 /dev/rdsk/c0t0d0s7zoneadmd 守护进程自动在清理模式下运行 fsck 命令 (fsck -p),该命令在挂载文件系统之前以非交互方式检查并修复文件系统。如果 fsck 失败,则 zoneadmd 无法使区域达到就绪状态。由 raw 指定的路径不能是相对路径。

对于没有在 /usr/lib/fs/ fstype/fsck 中提供 fsck 二进制代码的文件系统,不能为 fsck 指定设备。如果此文件系统具有 fsck 二进制命令,则必须为 fsck 指定设备。

有关更多信息,请参见zoneadmd 守护进程fsck(1M) 命令。

ZFS

除了在区域中挂载的文件系统中所述的缺省数据集外,您还可以使用 zonecfg 命令以及 add dataset 资源将 ZFS 数据集添加到非全局区域。此数据集在非全局区域中进行挂载并显示,并且在全局区域中也可见。区域管理员可以在此数据集中创建和销毁文件系统,并可修改此数据集的属性。

zfszoned 属性指明是否已将数据集添加到非全局区域。

# zfs get zoned tank/sales
NAME          PROPERTY    VALUE      SOURCE
tank/sales    zoned       on         local

通过数据集资源委托到非全局区域中的每个数据集都具有别名。数据集布局在区域内不可见。每个具有别名的数据集在区域中的显示方式与在池中一样。数据集的缺省别名是数据集名称中最后的部分。例如,如果委托数据集 tank/sales 使用缺省别名,则区域将看到名为 sales 的虚拟 ZFS 池。在数据集资源内设置别名属性,可以将别名定制为其他值。

每个非全局区域的 zonepath 数据集中都有一个名为 rpool 的数据集。对于所有非全局区域,该区域 rpool 数据集别名为 rpool

my-zone# zfs list -o name,zoned,mounted,mountpoint
NAME                ZONED  MOUNTED  MOUNTPOINT
rpool                  on       no  /rpool
rpool/ROOT             on       no  legacy
rpool/ROOT/solaris     on      yes  /
rpool/export           on       no  /export
rpool/export/home      on       no  /export/home

数据集别名的名称限制与 ZFS 池的名称限制相同。这些限制在 zpool(1M) 手册页中介绍。

如果要共享全局区域中的数据集,可以使用具有 add fs 子命令的 zonecfg 命令来添加通过 LOFS 方式挂载的 ZFS 文件系统。全局管理员或授予了相应权限的用户负责设置和控制数据集的属性。

有关 ZFS 的更多信息,请参见《Oracle Solaris 管理:ZFS 文件系统》中的第 10  章 "Oracle Solaris ZFS 高级主题"

作为 NFS 客户机的非全局区域

区域可以是 NFS 客户机。支持版本 2、版本 3 和版本 4 协议。有关这些 NFS 版本的信息,请参见《Oracle Solaris 管理:网络服务》中的"NFS 服务的功能"

缺省版本为 NFS 版本 4。可以使用以下方法之一在客户机上启用其他 NFS 版本:

在区域中禁止使用 mknod

请注意,不能使用 mknod(1M) 手册页中所述的 mknod 命令在非全局区域中创建特殊文件。

遍历文件系统

区域的文件系统名称空间是可从全局区域访问的名称空间的子集。可以通过以下方式,防止全局区域中的非特权进程遍历非全局区域的文件系统分层结构:

请注意,尝试访问为其他区域挂载的 AutoFS 节点将失败。全局管理员不必具有向下派生到其他区域的自动映射。

从全局区域中访问非全局区域的限制

安装了非全局区域之后,除了系统备份实用程序之外,此区域永远不能通过其他任何命令从全局区域中直接访问。此外,当非全局区域向未知环境公开之后,便不再将其视为安全区域。例如放置在可公共访问的网络上的区域,这种情况下可能会危及区域的安全并且可能会改变其文件系统的内容。如果存在任何危及区域安全的可能性,全局管理员便应将此区域视为不可信区域。

任何可通过 -R-b 选项(或等效选项)接受备用根的命令,在以下情况成立时得使用:

例如通过非全局区域根路径在全局区域中运行的 pkgadd 实用程序的 -R root_path 选项。

以下是通过备用根路径使用 -R 的命令、程序和实用程序的列表:

以下是通过备用根路径使用 -b 的命令和程序的列表: