Oracle® Hierarchical Storage Manager and StorageTek QFS Software 维护和管理指南 发行版 6.0 E56775-02 |
|
上一页 |
下一页 |
本章介绍文件系统维护和重新配置任务。第一节“管理 Oracle HSM 文件系统”介绍所有 Oracle HSM 文件系统的维护,包括归档和非归档文件系统、共享和非共享(独立)文件系统。第二节“管理 Oracle HSM 共享文件系统”介绍影响共享文件系统的特殊注意事项。
本节概述以下任务:
设置文件系统配额以控制给定用户或用户集合在文件系统内可以占用的在线存储空间和总存储空间。可以按用户 ID、组 ID 或管理员定义的根据公共特征(如参与特定的项目)对用户分组的管理集 ID 设置配额。当项目包含来自多个组的用户并跨多个目录和文件时,管理集 ID 尤其有用。
可以通过使用 quota
挂载选项(默认设置)挂载文件系统来启用配额,通过使用 noquota
挂载选项挂载文件系统来禁用配额。通过在文件系统根目录中放置一个或多个配额文件可定义配额:.quota_u
、.quota_g
和 .quota_a
,分别为用户、组和管理集设置配额。每个文件中的第一个记录(即记录 0
)设置默认值。后续记录设置特定于特定用户、组或管理集的值。
配额分配可用的文件系统空间,而不仅仅是存储空间。因此,配额同时针对在介质上分配的 512 字节块的数目和在文件系统中分配的 inode 的数目设置上限。块计数本质上度量存储空间。inode 计数度量可用于访问该存储的资源。因此,使用多个存储空间块而只有一个 inode 的单个文件所占用的文件系统空间量可能会与占用多个 inode 但没有块的多个长度为零的空文件所占用的文件系统空间量相同。
每个配额可以包括软限制和硬限制。硬限制定义给定所有者的所有文件可以暂时使用的文件系统资源上限。软限制定义所有者的文件可以无限期使用的文件系统资源上限。资源使用量只能在短暂的间隔内增长到软限制与硬限制之间的数量,该间隔由配额中的宽限期定义。
本节介绍以下管理任务:
要设置可持续的配额,必须以可管理和可伸缩的方式设置适应用户要求的限制。因此,在设置配额之前,请评估用户的存储需求。要使流程可管理,请首先尽可能宽泛地对用户需求进行分类,以便通过最少的管理工作满足尽可能多的需求。然后,您可以专门评估未包括在较宽泛类别中的少量用户需求。结果将提供关于要设置的配额和限制类型的粗略大纲。
下面概述的方法首先确定访问控制组的文件系统需求,因为大多数组织已定义了这些组。然后,定义需求与这些标准组不一致的特殊用户集。然后,这时才开始解决单个用户的独特需求。执行如下操作:
由于您的现有访问控制组已经将具有类似资源需求的用户归在一起,因此请首先定义将使用文件系统的任何组的平均存储需求。评估所使用的平均存储空间量(以 512 千字节块为单位)和所存储的平均文件数,这等效于所使用的平均 inode 数。
由于组成员通常具有类似的组织角色和工作职责,因此他们经常需要访问相同的目录和文件并且通常对存储具有类似的需求。在示例中,确定了将使用文件系统 /samqfs1
的三个组:dev
(产品开发)、cit
(公司信息技术)和 pgmt
(程序管理)。随后在一个简单的电子表格中列出这些组、每个组的成员数及其个体和组的平均需求。
组 |
用户 | 每用户平均块数 |
每用户平均文件数 |
平均块数/组 | 平均文件数/组 |
---|---|---|---|---|---|
dev |
30 |
67108864 |
500 |
2013265920 |
15000 |
cit |
15 |
10485760 |
50 |
157286400 |
750 |
pmgt |
6 |
20971520 |
200 |
125829120 |
1200 |
总块数/ 文件数(平均) |
接下来,针对任意给定时间的最大存储空间量和组成员将存储的最大文件数执行相同的计算。记录结果。
在示例中,将结果记录在一个新的电子表格中:
组 |
用户 | 每用户最大块数 |
每用户最大文件数 |
最大块数/组 | 最大文件数/组 |
---|---|---|---|---|---|
dev |
30 |
100663296 |
1000 |
3019898880 |
30000 |
cit |
15 |
15728640 |
100 |
235929600 |
1500 |
pmgt |
6 |
31457280 |
400 |
188743680 |
2400 |
总块数/ 文件数(最大) |
现在,确定属于不同的组但具有相同独特存储需求(此需求无法基于组来解决)的用户集。为所确定的每个组织执行与每个访问控制组相同的评估并执行相同的计算。
在示例中,确定了将需要存储分配的两个公司项目,代码为 portal
和 lockbox
。工程、市场营销、合规、测试和文档组的成员将一起处理这些项目并使用相同的目录和许多相同的文件。因此,将其添加到需求电子表格中:
组 |
用户 | 每用户平均块数 |
每用户平均文件数 |
平均块数/组 | 平均文件数/组 |
---|---|---|---|---|---|
dev |
30 |
67108864 |
500 |
2013265920 |
15000 |
cit |
15 |
10485760 |
50 |
157286400 |
750 |
pmgt |
6 |
20971520 |
200 |
125829120 |
1200 |
portal |
10 |
31457280 |
400 |
314572800 |
4000 |
lockbox |
12 |
31457280 |
500 |
377487360 |
6000 |
总块数/ 文件数(平均) |
组 |
用户 | 每用户最大块数 |
每用户最大文件数 |
最大块数/组 | 最大文件数/组 |
---|---|---|---|---|---|
dev |
30 |
100663296 |
1000 |
3019898880 |
30000 |
cit |
15 |
15728640 |
100 |
235929600 |
1500 |
pmgt |
6 |
31457280 |
400 |
188743680 |
2400 |
portal |
10 |
37748736 |
700 |
377487360 |
7000 |
lockbox |
12 |
45613056 |
600 |
547356672 |
7200 |
总块数/ 文件数(最大) |
现在,确定需求尚未解决的单个用户。为每个用户执行与每个访问控制组和非组组织相同的评估并执行相同的计算。
只要可能,就应将用户需求放在一起解决,以便统一策略并使管理开销降至最低。不过,当个别需求比较独特时,您需要单独解决它们。在示例中,确定了 pgmt
组中的 jr23547
是具有特殊职责的用户,需要特殊的存储分配。因此,将他添加需求电子表格中:
组 |
每个集的用户 |
每用户平均块数 |
每用户平均文件数 |
平均块数 |
平均文件数 |
---|---|---|---|---|---|
dev |
30 |
67108864 |
500 |
2013265920 |
15000 |
cit |
15 |
10485760 |
50 |
157286400 |
750 |
pmgt |
6 |
20971520 |
200 |
125829120 |
1200 |
portal |
10 |
31457280 |
400 |
314572800 |
4000 |
lockbox |
12 |
31457280 |
500 |
377487360 |
6000 |
jr23547 |
1 |
10485760 |
600 |
10485760 |
600 |
总块数/ 文件数(平均) |
组 |
用户 | 每用户最大块数 |
每用户最大文件数 |
最大块数/组 | 最大文件数/组 |
---|---|---|---|---|---|
dev |
30 |
100663296 |
1000 |
3019898880 |
30000 |
cit |
15 |
15728640 |
100 |
235929600 |
1500 |
pmgt |
6 |
31457280 |
400 |
188743680 |
2400 |
portal |
10 |
37748736 |
700 |
377487360 |
7000 |
lockbox |
12 |
45613056 |
600 |
547356672 |
7200 |
jr23547 |
1 |
100663296 |
2000 |
100663296 |
2000 |
总块数/ 文件数(最大) |
最后,计算所有用户需要的平均和最大块数和文件数。
组 |
用户 | 每用户平均块数 |
每用户平均文件数 |
平均块数/组 | 平均文件数/组 |
---|---|---|---|---|---|
dev |
30 |
67108864 |
500 |
2013265920 |
15000 |
cit |
15 |
10485760 |
50 |
157286400 |
750 |
pmgt |
6 |
20971520 |
200 |
125829120 |
1200 |
portal |
10 |
31457280 |
400 |
314572800 |
4000 |
lockbox |
12 |
31457280 |
500 |
377487360 |
6000 |
jr23547 |
1 |
10485760 |
600 |
10485760 |
600 |
总块数/ 文件数(平均) |
2998927360 |
27550 |
组 |
用户 | 每用户最大块数 |
每用户最大文件数 |
最大块数/组 | 最大文件数/组 |
---|---|---|---|---|---|
dev |
30 |
100663296 |
1000 |
3019898880 |
30000 |
cit |
15 |
15728640 |
100 |
235929600 |
1500 |
pmgt |
6 |
31457280 |
400 |
188743680 |
2400 |
portal |
10 |
37748736 |
700 |
377487360 |
7000 |
lockbox |
12 |
45613056 |
600 |
547356672 |
7200 |
jr23547 |
1 |
100663296 |
2000 |
100663296 |
2000 |
总块数/ 文件数(平均) |
4470079488 |
50100 |
如果您需要管理基于项目的配额或者其他无法按控制组和用户 ID 定义的配额,请参见为由多个组使用的项目和目录创建管理集。
如果您要在空的新创建的文件系统上设置配额,请转至配置新文件系统以使用配额。
如果您要在已包含文件的文件系统上设置配额,请转至配置现有文件系统以使用配额。
管理集是用于配额的一个目录层次结构或单个目录或文件,由管理集 ID 予以标识。以指定管理集 ID 创建的或者存储在具有指定管理集 ID 的目录中的所有文件都具有相同的配额,无论实际拥有这些文件的用户或组 ID 是什么。要定义管理集,请执行如下操作:
以 root
用户身份登录到文件系统服务器。
在示例中,服务器名为 server1
:
[server1]root@solaris:~#
如果要使用管理集为新项目或团队配置存储配额,请在文件系统内的某个位置为该项目或团队创建一个新目录。
在示例中,在 /samqfs1
文件系统中创建该目录并将其命名为 portalproject/
,与项目同名。
[server1]root@solaris:~#mkdir
/samqfs1/portalproject
为您需要设置配额的目录或文件分配管理集 ID。使用命令 samchaid
[
-fhR
]
admin-set-id
directory-or-file-name
,其中:
-f
强制执行分配并且不报告错误。
-h
将管理集 ID 分配给符号链接。不使用此选项时,将更改符号链接引用的文件的组。
-R
以递归方式将管理集 ID 分配给子目录和文件。
admin-set-id
是一个具有唯一性的整数值。
directory-or-file-name
是您要向其分配管理集 ID 的目录或文件的名称。
在示例中,将管理集 ID 1
分配给目录 /samqfs1/portalproject/
及其所有子目录和文件。
[server1]root@solaris:~#samchaid
-R
1
/samqfs1/portalproject/
如果需要,您可以检查分配。使用命令 command sls -D
directory-path
,其中 -D
指定为 directory-path
中的文件和目录显示详细的 Oracle HSM 目录列表:
[server1]root@solaris:~#sls
-D
/samqfs1/
/portalproject: mode: drwxr-xr-x links: 2 owner: root group: root length: 4096 admin id: 1 inode: 1047.1 project: user.root(1) access: Feb 24 12:49 modification: Feb 24 12:44 changed: Feb 24 12:49 attributes: Feb 24 12:44 creation: Feb 24 12:44 residence: Feb 24 12:44
如果您要在空的新创建的文件系统上设置配额,请转至配置新文件系统以使用配额。
如果您要在已包含文件的文件系统上设置配额,请转至配置现有文件系统以使用配额。
如果您正在创建新文件系统,并且该文件系统中当前没有任何文件,则可以执行此过程。
以 root
用户身份登录到文件系统服务器。
在示例中,服务器名为 server2
:
[server2]root@solaris:~#
如果新文件系统当前未挂载,在继续操作前请先挂载它。
如果必须为组设置配额,请在文件系统根目录中创建一个组配额文件 .quota_g
。使用 Solaris 命令 dd
if=/dev/zero
of=
mountpoint
/.quota_g
bs=4096
count=
number-blocks
,其中:
if=/dev/zero
指定将 UNIX 特殊文件 /dev/zero
中的空字符作为输入。
of=
mountpoint
/.quota_g
指定输出文件,其中 mountpoint
是文件系统的挂载点目录。
bs=4096
将用于写入的块大小设置为 4096
字节。
count=
number-blocks
指定要写入的块数。该值取决于文件将存放的记录数。对于每个指定的配额都有一条 128 字节的记录,因此一个块可以包含 32 条记录。
在示例中,为挂载在 /newsamfs
的文件系统 newsamfs
创建组配额文件。在需求收集阶段中,确定了文件系统中需要配额的三个组:dev
、cit
和 pgmt
。由于不打算添加任何其他组配额,因此设置每个块上的文件大小:
[server2]root@solaris:~#dd
if=
/dev/zero
of=
/newsamfs
/.quota_g
bs=
4096
count=
1
如果必须为管理集设置配额,请在文件系统根目录中创建一个管理集配额文件 .quota_a
。使用 Solaris 命令 dd
if=/dev/zero
of=
mountpoint
/.quota_a
bs=4096
,其中:
mountpoint
是文件系统的挂载点目录。
.quota_a
是输出文件的名称。
4096
是用于写入的块大小(以字节为单位)。
number-blocks
是要写入的块数。
在示例中,为挂载在 /newsamfs
的文件系统 newsamfs
创建管理集配额文件。在需求收集阶段中,确定了文件系统中需要配额的两个项目:portal
(管理集 ID 1
)和 lockbox
(管理集 ID 2
)。由于不打算添加任何其他管理集配额,因此设置每个块上的文件大小:
[server2]root@solaris:~#dd
if=
/dev/zero
of=
/newsamfs
/.quota_a
bs=
4096
count=
1
如果必须为用户设置配额,请在文件系统根目录中创建一个用户配额文件 .quota_u
。使用 Solaris 命令 dd
if=/dev/zero
of=
mountpoint
/.quota_u
bs=4096
count=
number-blocks
,其中:
mountpoint
是文件系统的挂载点目录。
.quota_u
是输出文件的名称。
4096
是用于写入的块大小(以字节为单位)。
number-blocks
是要写入的块数。
在示例中,为挂载在 /newsamfs
的文件系统 newsamfs
创建用户配额文件。在需求收集阶段中,确定了文件系统中需要特定配额的一个用户 jr23547
。由于不打算添加任何其他单个用户配额,因此设置每个块上的文件大小:
[server2]root@solaris:~#dd
if=
/dev/zero
of=
/newsamfs
/.quota_u
bs=
4096
count=
1
卸载文件系统。
您必须先卸载文件系统,然后重新挂载它才能启用配额文件。
[server2]root@solaris:~#umount
/newsamfs
执行文件系统检查。
[server2]root@solaris:~#samfsck
-F
newsamfs
重新挂载文件系统。
当系统检测到在文件系统的根目录中有一个或多个配额文件时,会启用配额。
您不需要在 /etc/vfstab
或 samfs.cmd
文件中包括 quota
挂载选项,因为默认情况下挂载文件系统时会启用配额。
[server2]root@solaris:~#mount
/newsamfs
接下来,根据需要设置或更新配额。请参见为组、项目、目录和用户设置配额。
如果您要为已包含文件的文件系统创建配额,请使用此过程。
以 root
用户身份登录到文件系统服务器。
在示例中,服务器名为 server1
:
[server1]root@solaris:~#
在文本编辑器中打开 /etc/vfstab
文件,并确保未设置 noquota
挂载选项。
在示例中,在 vi
文本编辑器中打开文件。noquota
挂载选项已设置:
[server1]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #------------ ------- --------------- ------ ---- ------- ------------ /devices - /devices devfs - no - /proc - /proc proc - no - ... samqfs1 - /samqfs1 samfs - nonoquota
如果已在 /etc/vfstab
文件中设置了 noquota
挂载选项,请删除该选项并保存文件。
[server1]root@solaris:~# vi /etc/vfstab #File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #------------ ------- --------------- ------ ---- ------- ------------ /devices - /devices devfs - no - /proc - /proc proc - no - ... samqfs1 - /samqfs1 samfs - no-
:wq
[server1]root@solaris:~#
在文本编辑器中打开 /etc/opt/SUNWsamfs/samfs.cmd
文件,并确保未设置 noquota
挂载选项。
在示例中,在 vi
文本编辑器中打开文件。noquota
挂载选项未设置:
[server1]root@solaris:~#vi
/etc/opt/SUNWsamfs/samfs.cmd
# These are the defaults. To change the default behavior, uncomment the # appropriate line (remove the '#' character from the beginning of the line) # and change the value. # #inodes = 0 #fs = samqfs1 # forcedirectio (default no forcedirectio) # high = 80 # low = 70 # weight_size = 1. # weight_age = 1. # readahead = 128 ... # dio_wr_ill_min = 0 # dio_wr_consec = 3 # qwrite (ma filesystem, default no qwrite) # shared_writer (ma filesystem, default no shared_writer) # shared_reader (ma filesystem, default no shared_reader)
如果已在 /etc/opt/SUNWsamfs/samfs.cmd
文件中设置了 noquota
挂载选项,请删除该选项并保存文件。
如果您从 /etc/vfstab
文件和/或 /etc/opt/SUNWsamfs/samfs.cmd
文件中删除了 noquota
挂载选项,请卸载文件系统。
删除 noquota
挂载选项后,必须卸载文件系统,以便您可以在重新挂载后启用配额。
[server1]root@solaris:~#umount
/samqfs1
如果文件系统当前未挂载,现在请挂载它。
必须先挂载文件系统,然后才能启用配额。
[server1]root@solaris:~#mount
/samqfs1
转到文件系统的根目录并检查是否存在任何配额文件。使用 Solaris 命令 ls
-a
并查找 .quota_g
、.quota_a
和/或 .quota_u
文件。
在示例中,当前不存在配额文件。
[server1]root@solaris:~#cd
/samqfs1
[server1]root@solaris:~#ls
-a
/samqfs1
. .archive .fuid .stage portalproject .. .domain .inodes lost+found
如果存在配额文件,不要修改它们。
如果必须为组设置配额并且文件系统根目录中尚未存在组配额文件 .quota_g
,现在请创建该文件。使用 Solaris 命令 dd
if=
/dev/zero
of=
mountpoint
/.quota_g
bs=
4096
count=
number-blocks
,其中:
if=
/dev/zero
指定将 UNIX 特殊文件 /dev/zero
中的空字符作为输入。
of=
mountpoint
/.quota_g
指定输出文件,其中 mountpoint
是文件系统的挂载点目录。
bs=
4096
将用于写入的块大小设置为 4096
字节。
count=
number-blocks
指定要写入的块数。该值取决于文件将存放的记录数。对于每个指定的配额都有一条 128 字节的记录,因此一个块可以包含 32 条记录。
在示例中,为挂载在 /samqfs1
的文件系统 /samqfs1
创建了组配额文件。在需求收集阶段中,确定了文件系统中需要配额的三个组:dev
、cit
和 pgmt
。由于不打算添加任何其他组配额,因此设置每个块上的文件大小:
[server1]root@solaris:~#dd
if=
/dev/zero
of=
/samqfs1
/.quota_g
bs=
4096
count=
1
如果必须为管理集设置配额并且文件系统根目录中尚未存在管理集配额文件 .quota_a
,现在请创建该文件。使用 Solaris 命令 dd
if=
/dev/zero
of=
mountpoint
/.quota_a
bs=
4096
count=
number-blocks
,其中:
mountpoint
是文件系统的挂载点目录。
.quota_a
是输出文件的名称。
4096
是用于写入的块大小(以字节为单位)。
number-blocks
是要写入的块数。
在示例中,为挂载在 /samqfs1
的文件系统 /samqfs1
创建管理集配额文件。在需求收集阶段中,确定了文件系统中需要配额的两个项目:portal
(管理集 ID 1
)和 lockbox
(管理集 ID 2
)。由于不打算添加任何其他管理集配额,因此设置每个块上的文件大小:
[server1]root@solaris:~#dd
if=
/dev/zero
of=
/samqfs1
/.quota_a
bs=
4096
count=
1
如果必须为用户设置配额并且文件系统根目录中尚未存在用户配额文件 .quota_u
,现在请创建该文件。使用 Solaris 命令 dd
if=
/dev/zero
of=
mountpoint
/.quota_u
bs=
4096
count=
number-blocks
,其中:
mountpoint
是文件系统的挂载点目录。
.quota_u
是输出文件的名称。
4096
是用于写入的块大小(以字节为单位)。
number-blocks
是要写入的块数。
在示例中,为挂载在 /samqfs1
的文件系统 /samqfs1
创建用户配额文件。在需求收集阶段中,确定了文件系统中需要特定配额的一个用户 jr23547
。由于不打算添加任何其他单个用户配额,因此设置每个块上的文件大小:
[server1]root@solaris:~#dd
if=
/dev/zero
of=
/samqfs1
/.quota_u
bs=
4096
count=
1
卸载文件系统。
您必须先卸载文件系统,然后重新挂载它才能启用配额文件。
[server1]root@solaris:~#umount
/samqfs1
执行文件系统检查。
[server1]root@solaris:~#samfsck
-F
/samqfs1
重新挂载文件系统。
当系统检测到在文件系统的根目录中有一个或多个配额文件时,会启用配额。
您不需要在 /etc/vfstab
或 samfs.cmd
文件中包括 quota
挂载选项,因为默认情况下挂载文件系统时会启用配额。
[server1]root@solaris:~#mount
/samqfs1
接下来,为组、项目、目录和用户设置配额。
可以使用 samquota
命令设置新配额和调整现有配额。请遵循以下过程:
在确定存储需求的特征后,为每个组、用户和非组组织确定合适的配额。考虑以下因素并根据需要进行调整:
文件系统大小与所有用户需要的平均和最大块数之比
文件系统中 inode 的数目与所有用户需要的平均和最大 inode 数之比
在任意给定时间可能接近其最大需求的用户的数目和类型。
以 root
用户身份登录到文件系统服务器。
在示例中,服务器名为 server1
:
[server1]root@solaris:~#
为需要限制的每个组设置限制。使用命令 samquota
-b
number-blocks
:
type
[
:
scope
]
-f
number-files
:
type
[
:
scope
]
-t
interval
[
:
scope
]
-G
groupID
[
directory-or-file
]
,其中:
-b
number-blocks
将可以在文件系统中存储的 512 千字节块的最大数目设置为 number-blocks
(一个整数)(有关用来指定大小的其他方法,请参见 samquota
手册页)。值为 0
(零)指定块数不受限。
:
是字段分隔符。
type
指定限制类型,h
表示硬限制,s
表示软限制。
scope
(可选)标识受限制管制的存储类型。该参数可以为 o
(表示仅在线(磁盘高速缓存)存储)或 t
(表示总存储,包含磁盘高速缓存和归档存储(默认范围))。
-f
number-files
将文件系统中可存储的最大文件数设置为 number-files
(一个整数)。值为 0
(零)指定文件数不受限。
-t
number-seconds
将宽限期(可以超出软限制的时间长度)设置为 number-seconds
,这是一个表示秒数的整数(有关用来指定时间的其他方法,请参见 samquota
手册页)。
-G
groupID
指定组名称或组的整数标识符。值为 0
(零)将为所有组设置默认限制。
directory-or-file
(可选)是您需要设置配额的特定文件系统或特定目录或文件的挂载点目录。
在示例中,使用需求收集阶段的估算结果对组 dev
可以使用的 /samqfs1
文件系统中的存储空间量以及可以存储的文件数量设置硬限制和软限制。我们仅针对在线存储将宽限期设置为 4320
秒(十二小时)(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[server1]root@solaris:~#samquota
-b
3019898880
:
h
:
t
-f
30000
:
h
:
t
-t
4320:o
\-G
dev
/samqfs1
[server1]root@solaris:~#samquota
-b 2013265920
:
s
:
t
-f 15000
:
s
:
t
-t 4320
\-G
dev
/samqfs1
为需要限制的每个管理集设置限制。使用命令 samquota
-b
number-blocks
:
type
[
:
scope
]
-f
number-files
:
type
[
:
scope
]
-t
interval
[
:
scope
]
-A
adminsetID
[
directory-or-file
]
,其中 -A
adminsetID
是唯一标识管理集的整数值。
将 adminsetID
设置为 0
(零)将为所有管理集设置默认限制。
在示例中,使用需求收集阶段的评估对 /samqfs1
文件系统中 portal
项目(管理集 ID 1
)可以使用的存储空间量以及可以存储的文件数量设置硬限制和软限制。我们针对使用的总存储(这是默认范围)将宽限期设置为 4320
秒(十二小时)(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[server1]root@solaris:~#samquota
-b 377487360
:
h
:
t
-f 7000
:
h
:
t
-t 4320
\-A
1
/samqfs1
[server1]root@solaris:~#samquota
-b 314572800
:
s
:
t
-f 4000
:
s
:
t
-A
1
/samqfs1
为需要限制的每个单个用户设置限制。使用命令 samquota
-b
number-blocks
:
type
[
:
scope
]
-f
number-files
:
type
[
:
scope
]
-t
interval
[
:
scope
]
-U
userID
[
directory-or-file
]
,其中 -U
userID
是用户名或用户的整数标识符。
将 userID
设置为 0
(零)将为所有用户设置默认限制。
在示例中,使用需求收集阶段的估算结果对用户 jr23547
可以使用的 /samqfs1
文件系统中的存储空间量以及 jr23547
可以存储的文件数量设置硬限制和软限制。我们针对使用的总存储(这是默认范围)将宽限期设置为 120960
秒(两周)(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[server1]root@solaris:~#samquota
-b
100663296
:
h
:
t
-f
2000
:
h
:
t
-t 4320
\-U
jr23547
/samqfs1
[server1]root@solaris:~#samquota
-b
10485760
:
s
:
t
-f
600
:
s
:
t
-t
4320
\-U
jr23547
/samqfs1
在此处停止。
当根目录中存在配额文件时,如果使用 noquota
挂载选项挂载 Oracle HSM 文件系统,则当分配或释放了块或文件时,配额记录将变得不一致。在这种情况下,请执行如下操作:
以 root
用户身份登录到文件系统服务器。
在示例中,服务器名为 server1
:
[server1]root@solaris:~#
卸载受影响的文件系统。
在示例中,卸载文件系统 samfs2
:
[server1]root@solaris:~#umount
samfs2
[server1]root@solaris:~#
在文本编辑器中打开 /etc/vfstab
文件,并确保未设置 noquota
挂载选项。
在示例中,在 vi
文本编辑器中打开文件。noquota
挂载选项已设置:
[server1]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #------------ ------- --------------- ------ ---- ------- ------------ /devices - /devices devfs - no - /proc - /proc proc - no - ... samfs2 - /samfs2 samfs - nonoquota
如果已在 /etc/vfstab
文件中设置了 noquota
挂载选项,请删除该选项并保存文件。
[server1]root@solaris:~# vi /etc/vfstab #File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #------------ ------- --------------- ------ ---- ------- ------------ /devices - /devices devfs - no - /proc - /proc proc - no - ... samfs2 - /samfs2 samfs - no-
:wq
[server1]root@solaris:~#
在文本编辑器中打开 /etc/opt/SUNWsamfs/samfs.cmd
文件,并确保未设置 noquota
挂载选项。
在示例中,在 vi
文本编辑器中打开文件。noquota
挂载选项未设置:
[server1]root@solaris:~#vi
/etc/opt/SUNWsamfs/samfs.cmd
# These are the defaults. To change the default behavior, uncomment the # appropriate line (remove the '#' character from the beginning of the line) # and change the value. # #inodes = 0 #fs = samqfs1 # forcedirectio (default no forcedirectio) # high = 80 # low = 70 # weight_size = 1. # weight_age = 1. # readahead = 128 ... # dio_wr_ill_min = 0 # dio_wr_consec = 3 # qwrite (ma filesystem, default no qwrite) # shared_writer (ma filesystem, default no shared_writer) # shared_reader (ma filesystem, default no shared_reader)
如果已在 /etc/opt/SUNWsamfs/samfs.cmd
文件中设置了 noquota
挂载选项,请删除该选项并保存文件。
修复不一致的配额记录。使用命令 samfsck
-F
family-set-name
,其中 family-set-name
是 /etc/opt/SUNWsamfs/mcf
文件中文件系统的系列集名称。
[server1]root@solaris:~#samfsck
-F
samfs2
重新挂载文件系统。
当系统检测到在文件系统的根目录中有一个或多个配额文件时,会启用配额。
您不需要在 /etc/vfstab
或 samfs.cmd
文件中包括 quota
挂载选项,因为默认情况下挂载文件系统时会启用配额。
[server1]root@solaris:~#mount
/samfs2
[server1]root@solaris:~#
在此处停止。
管理员和用户都可以监视配额和资源使用量。root
用户可以使用 samquota
命令生成关于用户、组或管理集的配额报告。文件系统用户可以使用 squota
命令检查自己的配额。
请参见以下过程:
以 root
用户身份登录到文件系统服务器。
在示例中,服务器名为 server1
:
[server1]
root@solaris:~#
要显示所有组的配额统计信息,请使用命令 samquota
-g
[
directory-or-file
]
,其中可选的 directory-or-file
参数将报告的范围限定于指定目录上挂载的文件系统、指定的目录本身或指定的文件。
在本示例中,我们请求针对 samqfs1
文件系统的报告,该文件系统挂载在 /samqfs1
上:
[server1]root@solaris:~#samquota
-g
/samqfs1
要显示所有管理集的配额统计信息,请使用命令 samquota
-a
[
directory-or-file
]
,其中可选的 directory-or-file
参数将报告的范围限定于指定目录上挂载的文件系统、指定的目录本身或指定的文件。
在本示例中,我们请求针对 samqfs1
文件系统的报告,该文件系统挂载在 /samqfs1
上:
[server1]
root@solaris:~#samquota
-a
/samqfs1
要显示所有用户的配额统计信息,请使用命令 samquota
-u
[
directory-or-file
]
,其中可选的 directory-or-file
参数将报告的范围限定于指定目录上挂载的文件系统、指定的目录本身或指定的文件。
在本示例中,我们请求针对 samqfs1
文件系统的报告,该文件系统挂载在 /samqfs1
上:
[server1]
root@solaris:~#samquota
-u
/samqfs1
要显示特定组的配额统计信息,请使用命令 samquota
-G
groupID
[
directory-or-file
]
,其中 groupID
指定组名称或组的整数标识符,可选的 directory-or-file
参数将报告的范围限定于指定目录上挂载的文件系统、指定的目录本身或指定的文件。
在本示例中,我们请求有关 samqfs1
文件系统中 dev
组的配额的报告,该文件系统挂载在 /samqfs1
上:
[server1]root@solaris:~#samquota
-G
dev
/samqfs1
要显示特定管理集的配额统计信息,请使用命令 samquota
-A
adminsetID
[
directory-or-file
]
,其中 adminsetID
指定管理组的整数标识符,可选的 directory-or-file
参数将报告的范围限定于指定目录上挂载的文件系统、指定的目录本身或指定的文件。
在本示例中,我们请求有关 samqfs1
文件系统中管理集 1
的配额的报告,该文件系统挂载在 /samqfs1
上:
[server1]
root@solaris:~#samquota
-A
1
/samqfs1
要显示特定用户的配额统计信息,请使用命令 samquota
-U
userID
[
directory-or-file
]
,其中 userID
指定用户名或用户的整数标识符,可选的 directory-or-file
参数将报告的范围限定于指定目录上挂载的文件系统、指定的目录本身或指定的文件。
在本示例中,我们请求有关 samqfs1
文件系统中用户 jr23547
的配额的报告,该文件系统挂载在 /samqfs1
上:
[server1]
root@solaris:~#samquota
-U
jr23547
/samqfs1
在此处停止。
使用您的用户 ID 登录到文件系统主机。
在示例中,以 od447
用户身份登录到主机 server1
:
[server1]od447@solaris:~#
要显示所有组的配额统计信息,请使用命令 squota
[
directory-or-file
]
,其中可选的 directory-or-file
参数将报告的范围限定于指定目录上挂载的文件系统、指定的目录本身或指定的文件。
在示例中,请求关于所有文件系统的报告:
[server1]od447@solaris:~# squota
Limits
Type ID In Use Soft Hard
/samqfs1
Files group 101 1 1000 1200
Blocks group 101 8 20000 30000
Grace period 25920
No user quota entry.
[server1]od447@solaris:~#
在此处停止。
当需要暂时延长宽限期或需要缩短宽限期时,可以按以下方式操作:
如果组、用户或管理集已超出了其配额的指定软限制,但是超出软限制的时长需要暂时大于当前宽限期所允许的时间,则可以按以下方式延长:
以 root
用户身份登录到文件系统服务器。
在示例中,登录到主机 server1
:
[server1]root@solaris:~#
检查需要延长的配额。使用命令 samquota
-
quota-type
ID
[
directory-or-file
]
,其中:
quota-type
ID
是 G
加上组名称或 ID 编号,A
加上管理集 ID 编号,或者 U
加上用户名或 ID 编号。
directory-or-file
(可选)是您需要延长宽限期的特定文件系统的挂载点目录或特定目录或文件。
在示例中,dev
组明显超出了软限制并且距离其宽限期只剩下几个小时:
[server1]root@solaris:~#samquota
-G
dev
/samqfs1
Online Limits Total Limits Type ID In Use Soft Hard In Use Soft Hard /samqfs1 Files group 101 323 15000 30000 323 15000 30000 Blocks group 101 3109330961 2013265920 3019898880 3109330961 2013265920 3019898880 Grace period 4320 4320 ---> Warning: soft limits to be enforced in 2h21m16s [server1]root@solaris:~#
如果有必要,延长宽限期。使用命令 samquota
-
quota-type
ID
-x
number-seconds
[
directory-or-file
]
,其中:
quota-type
ID
是 G
加上组名称或 ID 编号,A
加上管理集 ID 编号,或者 U
加上用户名或 ID 编号。
directory-or-file
(可选)是您需要延长宽限期的特定文件系统的挂载点目录或特定目录或文件。
number-seconds
是一个整数,表示延期的秒数(有关其他指定时间的方法,请参见 samquota
手册页)。
当提示继续时,输入 y
(yes)。
在示例中,将 dev
组在 samqfs1
文件系统中的文件宽限期延长到 267840
秒(31 天):
[server1]root@solaris:~#samquota
-G
dev
-x
267840
/samqfs1
Setting Grace Timer: continue?y
当重新检查 dev
组配额时,宽限期已延长:
[server1]root@solaris:~#samquota
-G
dev
/samqfs1
Online Limits Total Limits Type ID In Use Soft Hard In Use Soft Hard /samqfs1 Files group 101 323 15000 30000 323 15000 30000 Blocks group 101 43208 2013265920 3019898880 43208 2013265920 3019898880 Grace period 267840 267840 ---> Warning: soft limits to be enforced in 31d [server1]root@solaris:~#
如果组、管理集或用户经常需要延长,请重新评估存储需求并/或考虑永久增大宽限期。使用为组、项目、目录和用户设置配额 过程。
在此处停止。
如果组、用户或管理集已超出了其配额的指定软限制,并且无法在当前宽限期到期之前尽快释放空间以降至软限制之下,则可以重新启动宽限期。执行如下操作:
以 root
用户身份登录到文件系统服务器。
在示例中,登录到主机 server1
:
[server1]root@solaris:~#
检查需要延长的配额。使用命令 samquota
-
quota-type
ID
[
directory-or-file
]
,其中:
quota-type
ID
是 G
加上组名称或 ID 编号,A
加上管理集 ID 编号,或者 U
加上用户名或 ID 编号。
directory-or-file
(可选)是您需要延长宽限期的特定文件系统的挂载点目录或特定目录或文件。
在本示例中,cit
组超出了 samqfs1
文件系统的软限制,并且距离其宽限期仅剩一个多小时:
[server1]root@solaris:~#samquota
-G
cit
/samqfs1
Online Limits Total Limits Type ID In Use Soft Hard In Use Soft Hard /samqfs1 Files group 119 762 750 1500 762 750 1500 Blocks group 119 3109330961 2013265920 3019898880 120096782 157286400 235929600 Grace period 4320 4320 ---> Warning: soft limits to be enforced in 1h11m23s [server1]root@solaris:~#
要在下次分配文件或块时将宽限期重置为其完整的起始大小,请清除宽限期计时器。使用命令 samquota
-
quota-type
ID
-x
clear
[
directory-or-file
]
,其中:
quota-type
ID
是 G
加上组名称或 ID 编号,A
加上管理集 ID 编号,或者 U
加上用户名或 ID 编号。
directory-or-file
(可选)是您需要延长宽限期的特定文件系统的挂载点目录或特定目录或文件。
当提示继续时,输入 y
(yes)。
在示例中,清除了 samqfs1
文件系统上 cit
组的配额的宽限期计时器。
[server1]root@solaris:~#samquota
-G
cit
-x
clear
/samqfs1
Setting Grace Timer: continue?y
[server1]root@solaris:~#
当重新检查 cit
组的配额时,可以发现已经分配了一个文件并且宽限期已重置为 12h
,即 12 个小时(4320
秒):
[server1]root@solaris:~#samquota
-G
cit
/samqfs1
Online Limits Total Limits Type ID In Use Soft Hard In Use Soft Hard /samqfs1 Files group 119 763 750 1500 763 750 1500 Blocks group 119 3109330961 2013265920 3019898880 120096782 157286400 235929600 Grace period 4320 4320 ---> Warning: soft limits to be enforced in 12h [server1]root@solaris:~#
另外,要立即将宽限期重置为其完整的起始大小,请重置宽限期计时器。使用命令 samquota
-
quota-type
ID
-x
reset
[
directory-or-file
]
。
quota-type
ID
是 G
加上组名称或 ID 编号,A
加上管理集 ID 编号,或者 U
加上用户名或 ID 编号。
directory-or-file
(可选)是您需要延长宽限期的特定文件系统的挂载点目录或特定目录或文件。
当提示继续时,输入 y
(yes)。
在示例中,清除了 samqfs1
文件系统上 cit
组的配额的宽限期计时器。
[server1]root@solaris:~#samquota
-G
cit
-x
reset
/samqfs1
Setting Grace Timer: continue?y
[server1]root@solaris:~#
当重新检查 cit
组的配额时,可以发现宽限期已重置为 12h
,即 12 个小时(4320
秒):
[server1]root@solaris:~#samquota
-G
cit
/samqfs1
Online Limits Total Limits Type ID In Use Soft Hard In Use Soft Hard /samqfs1 Files group 119 762 750 1500 762 750 1500 Blocks group 119 3109330961 2013265920 3019898880 120096782 157286400 235929600 Grace period 4320 4320 ---> Warning: soft limits to be enforced in 12h [server1]root@solaris:~#
在此处停止。
以 root
用户身份登录到文件系统服务器。
在示例中,登录到主机 server1
:
[server1]root@solaris:~#
检查您需要缩短的宽限期。使用命令 samquota
-
quota-type
ID
[
directory-or-file
]
,其中:
quota-type
ID
是 G
加上组名称或 ID 编号,A
加上管理集 ID 编号,或者 U
加上用户名或 ID 编号。
directory-or-file
(可选)是您需要延长宽限期的特定文件系统的挂载点目录或特定目录或文件。
在示例中,cit
组超出了软限制并且距离其宽限期还剩十一个小时,但是需要提前结束宽限期:
[server1]root@solaris:~#samquota
-G
cit
/samqfs1
Online Limits Total Limits Type ID In Use Soft Hard In Use Soft Hard /samqfs1 Files group 119 822 750 1500 822 750 1500 Blocks group 119 3109330961 2013265920 3019898880 120096782 157286400 235929600 Grace period 4320 4320 ---> Warning: soft limits to be enforced in 11h [server1]root@solaris:~#
使宽限期到期。使用命令 samquota
-
quota-type
ID
-x
expire
[
directory-or-file
]
,其中:
quota-type
ID
是 G
加上组名称或 ID 编号,A
加上管理集 ID 编号,或者 U
加上用户名或 ID 编号。
directory-or-file
(可选)是您需要延长宽限期的特定文件系统的挂载点目录或特定目录或文件。
在示例中,使 cit
组的宽限期到期:
root@solaris:~#samquota
-G
cit
-x
expire
/samqfs1
Setting Grace Timer: continue?y
当重新检查配额时,cit
组的软限制正被强制用作硬限制:
[server1]root@solaris:~#samquota
-G
cit
/samqfs1
Online Limits Total Limits Type ID In Use Soft Hard In Use Soft Hard /samqfs1 Files group 119 762 750 1500 762 750 1500 Blocks group 119 3109330961 2013265920 3019898880 120096782 157286400 235929600 Grace period 4320 4320 ---> Online soft limits under enforcement (since 6s ago) [server1]root@solaris:~#
在此处停止。
您可以通过创建不一致的配额值限制文件系统资源分配。当文件系统检测到用户、组或管理集的配额值不一致时,会阻止用户、组或管理集使用其他任何系统资源。因此,将配额的硬限制设置为低于对应的软限制将停止进一步的分配。要使用此方法,请执行如下操作:
以 root
用户身份登录到文件系统服务器。
在示例中,登录到主机 server1
:
[server1]root@solaris:~#
备份配额以便以后可以恢复。导出当前配置,并将信息重定向到某个文件。使用命令 samquota
-
quota-type
ID
[
directory-or-file
]
>
file
,其中:
quota-type
ID
是 G
加上组名称或 ID 编号,A
加上管理集 ID 编号,或者 U
加上用户名或 ID 编号。
directory-or-file
(可选)是您需要延长宽限期的特定文件系统的挂载点目录或特定目录或文件。
file
是输出文件的名称。
在本示例中,我们将 cit
组的配额导出到 root
用户起始目录中的文件 restore.samqfs1.quota_g.cit
中(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[server1]root@solaris:~#samquota
-G
cit
-e
/samqfs1
>
\/root/restore.samqfs1.quota_g.cit
[server1]root@solaris:~#
检查输出。使用 Solaris 命令 more
<
file
,其中 file
是输出文件的文件名。
[server1]root@solaris:~# more < /root/restore.samqfs1.quota_g.cit
# Type ID
# Online Limits Total Limits
# soft hard soft hard
# Files
# Blocks
# Grace Periods
samquota -G 119 \
-f 750:s:o -f 1500:h:o -f 750:s:t -f 1500:h:t \
-b 157286400:s:o -b 235929600:h:o -b 157286400:s:t -b 235929600:h:t \
-t 4320:o -t 4320:t
[server1]root@solaris:~#
将配额的硬限制设置为 0
(零),将软限制设置为 1
(或任何非零值)。使用命令 samquota
-
quota-type
ID
-f 1:s -f 0:h -b 1:s -b 0:h
[
directory-or-file
]
。
quota-type
ID
是 G
加上组名称或 ID 编号,A
加上管理集 ID 编号,或者 U
加上用户名或 ID 编号。
directory-or-file
(可选)是您需要延长宽限期的特定文件系统的挂载点目录或特定目录或文件。
在示例中,使 /samqfs1
文件系统中 cit
组的配额不一致,并借此停止新的资源分配。
[server1]root@solaris:~#samquota
-G
cit
-f 1:s -f 0:h -b 1:s -b 0:h
/samqfs1
[server1]root@solaris:~#
当检查 cit
组的配额时,可以发现生效的是零配额。感叹号字符 (!
) 将所有当前使用量显示为超出配额,因此将不会执行进一步的分配:
[server1]root@solaris:~#samquota
-G
cit
/samqfs1
Online Limits Total Limits Type ID In Use Soft Hard In Use Soft Hard /sam6 Files group 119 822! 1 0 822! 1 0 Blocks group 119 3109330961! 1 0 3109330961! 1 0 Grace period 4320 4320 ---> Quota values inconsistent; zero quotas in effect. [server1]root@solaris:~#
当做好准备后,通过将修改的配额恢复为其原始状态来继续正常的分配。执行您创建为 shell 脚本的备份文件。使用 Solaris 命令 sh
file
,其中 file
是备份文件的文件名。
在示例中,通过执行 /root/restore.samqfs1.quota_g.cit
文件恢复 cit
组的配额。
[server1]root@solaris:~#sh
/root/restore.samqfs1.quota_g.cit
Setting Grace Timer: continue? y Setting Grace Timer: continue? y [server1]root@solaris:~#
当检查配额时,可以发现已恢复了正常限制并且不再阻止分配:
[server1]root@solaris:~#samquota
-G
cit
/samqfs1
Online Limits Total Limits Type ID In Use Soft Hard In Use Soft Hard /samqfs1 Files group 119 822 750 1500 822 750 1500 Blocks group 119 3109330961 2013265920 3019898880 120096782 157286400 235929600 Grace period 4320 4320 ---> Warning: soft limits to be enforced in 11h [server1]root@solaris:~#
在此处停止。
要删除或禁用文件系统的配额,请在挂载过程中禁用配额。
以 root
用户身份登录到文件系统服务器。
在示例中,登录到主机 server1
:
[server1]root@solaris:~#
在文本编辑器中打开 /etc/vfstab
文件,向文件系统行的 "Mount Options" 列中添加 noquota
挂载选项,然后保存文件。
在示例中,在 vi
文本编辑器中打开文件,并为 samqfs1
文件系统设置 noquota
挂载选项:
[server1]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #------------ ------- --------------- ------ ---- ------- ------------ /devices - /devices devfs - no - /proc - /proc proc - no - ...samqfs1
- /samqfs1 samfs - nonoquota
:wq
[server1]root@solaris:~#
如果文件系统已挂载,请将其卸载。
您必须卸载然后重新挂载文件系统,以便使操作系统重新加载 /etc/vfstab
文件并执行指定的更改。在示例中,卸载 samqfs1
文件系统:
[server1]root@solaris:~#umount
samqfs1
[server1]root@solaris:~#
挂载文件系统。
在示例中,挂载 samqfs1
文件系统:
[server1]root@solaris:~#mount
samqfs1
[server1]root@solaris:~#
如果您预计以后要恢复配额,请保留配额文件。
当准备好恢复配额时,只需要简单地卸载文件系统,在文件系统上运行命令 samfsck
-F
,删除 noquota
挂载选项,然后重新挂载文件系统。
如果预计不会恢复配额或者如果需要回收配额文件占用的空间,请使用 Solaris 命令 rm
从文件系统的根目录中删除文件 .quota_g
、.quota_a
和/或 .quota_u
。
在示例中,从 /samqfs1
文件系统根目录中删除所有配额文件:
[server1]root@solaris:~#rm
/samqfs1
/
.quota_g
[server1]root@solaris:~#rm
/samqfs1
/
.quota_a
[server1]root@solaris:~#rm
/samqfs1
/
.quota_u
[server1]root@solaris:~#
在此处停止。
通常,管理归档文件系统的方法与非归档文件系统大致相同。不过,在执行大多数文件系统管理任务之前必须停止归档进程。当处于活动状态时,归档进程会对文件系统的主磁盘高速缓存进行更改。因此,在对磁盘高速缓存执行维护工作之前必须停止这些进程。本节介绍以下任务:
以 root
用户身份登录到文件系统主机。
在示例中,登录到主机 server1
:
[server1]root@solaris:~#
使所有归档进程闲置。使用命令 samcmd
aridle
。
此命令将允许当前的归档和回写操作完成,但不会启动任何新作业:
[server1]root@solaris:~#samcmd
aridle
[server1]root@solaris:~#
使所有回写进程闲置。使用命令 samcmd
stidle
。
此命令将允许当前的归档和回写操作完成,但不会启动任何新作业:
[server1]root@solaris:~#samcmd
stidle
[server1]root@solaris:~#
等待活动的归档作业完成。使用命令 samcmd
a
检查归档进程的状态。
当归档进程为 Waiting
for
:arrun
时,归档进程处于空闲状态:
[server1]root@solaris:~#samcmd
a
Archiver status samcmd 5.4 10:20:34 May 20 2014 samcmd on samfs-mds sam-archiverd: Waiting for :arrun sam-arfind: ... Waiting for :arrun
等待活动的回写作业完成。使用命令 samcmd
u
检查回写进程的状态。
当回写进程为 Waiting for :strun
时,回写进程处于空闲状态:
[server1]root@solaris:~#samcmd
u
Staging queue samcmd 5.4 10:20:34 May 20 2014 samcmd on solaris.demo.lan Staging queue by media type: all sam-stagerd: Waiting for :strun root@solaris:~#
要完全停止系统,请同时停止归档和回写进程。
如果您尚未使归档和回写进程闲置,请执行此操作。
如果您尚未以 root
用户身份登录到文件系统主机,请执行此操作。
在示例中,登录到主机 server1
:
[server1]root@solaris:~#
在继续操作之前,使所有可移除的介质驱动器停工。针对每个驱动器,使用命令 samcmd
equipment-number
idle
,其中 equipment-number
是在 /etc/opt/SUNWsamfs/mcf
文件中分配给驱动器的设备序号。
此命令将允许当前的归档和回写作业在驱动器关闭
之前完成,但不会启动任何新作业。在示例中,使序号分别为 801
、802
、803
和 804
的四个驱动器闲置:
[server1]root@solaris:~#samcmd
801
idle
[server1]root@solaris:~#samcmd
802
idle
[server1]root@solaris:~#samcmd
803
idle
[server1]root@solaris:~#samcmd
804
idle
[server1]root@solaris:~#
等待正在运行的作业完成。
可以使用命令 samcmd
r
检查驱动器的状态。当所有驱动器都处于 notrdy
和 empty
时,已准备好继续。
[server1]root@solaris:~#samcmd
r
Removable media samcmd 5.4 18:37:09 Feb 17 2014 samcmd on samqfs1host ty eq status act use state vsn li 801 ---------p 0 0% notrdy empty li 802 ---------p 0 0% notrdy empty li 803 ---------p 0 0% notrdy empty li 804 ---------p 0 0% notrdy empty [server1]root@solaris:~#
当归档程序和回写程序进程处于空闲状态,并且磁带机都处于 notrdy
时,停止磁带库控制守护进程。使用命令 samd
stop
。
[server1]root@solaris:~#samd
stop
[server1]root@solaris:~#
继续进行文件系统维护。
当维护完成时,重新启动归档和回写进程。
重新启动介质操作之后,未完成的回写操作将被重新执行,而归档操作也将随之恢复。
在此处停止。
当准备就绪时,恢复正常的自动化操作,按下述方法继续操作:
以 root
用户身份登录到文件系统主机。
在示例中,登录到主机 server1
:
[server1]root@solaris:~#
重新启动 Oracle HSM 磁带库控制守护进程。使用命令 samd
start
。
[server1]root@solaris:~#samd
start
[server1]root@solaris:~#
在此处停止。
重命名文件系统是一个两步骤过程。首先,通过编辑 /etc/opt/SUNWsamfs/mcf
文件更改文件系统的系列集名称。然后,使用 samfsck
-R
-F
命令读取新名称并更新对应磁盘设备上的超级块。要重命名文件系统,请使用以下过程:
以 root
用户身份登录到文件系统服务器。
在示例中,登录到主机 server1
:
[server1]root@solaris:~#
如果要修复归档文件系统,请在继续操作前执行使归档和回写进程闲置过程。
卸载需要重命名的文件系统。
在示例中,卸载文件系统 samqfs1
:
[server1]root@solaris:~#umount
samqfs1
在文本编辑器中打开 /etc/opt/SUNWsamfs/mcf
文件并找到需要重命名的文件系统。
在示例中,使用 vi
编辑器。此处需要更改 samqfs1
文件系统的名称:
[server1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #----------------- --------- --------- ------------ ------ ---------- samqfs1 100 ms samqfs1 on /dev/dsk/c1t3d0s3 101 md samqfs1 on /dev/dsk/c1t4d0s5 102 md samqfs1 on
在文件的第四列中,将该文件系统的系列集名称更改为新值。您还可以更改第一列中的文件系统设备标识符,但不要更改其他任何值。保存文件并关闭编辑器。
在示例中,将文件系统的设备标识符和系列集名称同时从 samqfs1
更改为 samqfs-hpcc
:
[server1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #----------------- --------- --------- ------------ ------ ----------samqfs-hpcc
100 mssamqfs-hpcc
on /dev/dsk/c1t3d0s3 101 mdsamqfs-hpcc
on /dev/dsk/c1t4d0s5 102 mdsamqfs-hpcc
on:wq
root@solaris:~#
重写文件系统超级块以反映新系列集名称。使用命令 samfsck
-R
-F
family-set-name
,其中 family-set-name
是刚刚在 /etc/opt/SUNWsamfs/mcf
文件中指定的系列集名称。
当使用 -R
和 -F
选项发出 samfsck
命令时,将从 /etc/opt/SUNWsamfs/mcf
文件中读取新系列集名称和对应的磁盘存储设备标识符。然后,使用新的系列集名称在指定的磁盘设备上重写超级块。在示例中,使用新的 samqfs-hpcc
系列集名称运行该命令:
[server1]root@solaris:~#samfsck
-R
-F
samqfs-hpcc
在文本编辑器中打开 /etc/vfstab
文件并找到您要重命名的文件系统的条目。
在示例中,在 vi
文本编辑器中打开文件。此处需要更改 samqfs1
文件系统条目以使用新名称:
[server1]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #------------ ------- --------------- ------ ---- ------- ------------ /devices - /devices devfs - no - /proc - /proc proc - no - ... samqfs1 - /samqfs1 samfs - no -
在已重命名的文件系统的 /etc/vfstab
条目中,更改第一列中的文件系统名称和第三列中的挂载点目录名称(如果需要),然后保存该文件。
在示例中,将 samqfs1
文件系统的名称更改为 samqfs-hpcc
并相应地更改挂载点:
[server1]root@solaris:~# vi /etc/vfstab #File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #------------ ------- --------------- ------ ---- ------- ------------ /devices - /devices devfs - no - /proc - /proc proc - no - ...samqfs-hpcc
- /samqfs-hpcc
samfs - no -:wq
[server1]root@solaris:~#
如果需要,将为新文件系统创建新的挂载点目录,并为挂载点设置访问权限。
用户必须具有执行 (x
) 权限才能转到挂载点目录并访问挂载的文件系统中的文件。在示例中,创建 /samqfs-hpcc
挂载点目录并将权限设置为 755
(-rwxr-xr-x
):
[server1]root@solaris:~#mkdir
/
samqfs-hpcc
[server1]root@solaris:~#chmod
755
/
samqfs-hpcc
[server1]root@solaris:~#
运行 sam-fsd
命令检查 mcf
文件中是否有错误并纠正检测到的任何错误。
sam-fsd
是一个读取 Oracle HSM 配置文件的初始化命令。该命令会在遇到以下错误时停止:
[server1]root@solaris:~# sam-fsd
指示 Oracle HSM 软件重新读取 mcf
文件并相应地重新配置自身。使用命令 samd
config
。
[server1]root@solaris:~#samd
config
如果 samd config
报告了错误,请更正错误直至没有错误,然后重新发出该命令。
挂载文件系统。
在示例中,使用新的挂载点目录:
[server1]root@solaris:~#mount
/samqfs-hpcc
在此处停止。
当文件系统通过 samu
、Oracle HSM Manager 或 /var/adm/sam-log
文件报告了错误时,请遵循以下过程:
以 root
用户身份登录到文件系统服务器。
在示例中,登录到主机 server1
:
[server1]root@solaris:~#
如果要修复归档文件系统,请在继续操作前执行使归档和回写进程闲置过程。
卸载受影响的文件系统。
如果在等待归档停止,则可能需要尝试多次。在示例中,卸载文件系统 samqfs1
:
[server1]root@solaris:~# umount samqfs1 samfs umount: /samqfs1: is busy [server1]root@solaris:~#umount
samqfs1
[server1]root@solaris:~#
修复文件系统。使用命令 samfsck
-F
-V
family-set-name
,其中 family-set-name
是 /etc/opt/SUNWsamfs/mcf
文件中为文件系统指定的系列集名称。
通常,将修复结果保存到带日期戳的文件中是个很好的主意,必要时可供以后参考和诊断。因此在本示例中,我们将 samfsck
输出通过管道传输到命令 tee
/var/tmp/
samfsck-FV.
family-set-name
.`
date
'+%Y%m%d.%H%M%S'
`
中,从而保存结果(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[server1]root@solaris:~#samfsck
-F
-V
samqfs1
|
tee
\/var/tmp/
samfsck-FV.
samqfs1.
`
date
'+%Y%m%d.%H%M%S'
`
name: /samqfs1 version: 2A First pass Second pass Third pass NOTICE: ino 2.2, Repaired link count from 8 to 14 Inodes processed: 123392 total data kilobytes = 1965952 total data kilobytes free = 1047680 total meta kilobytes = 131040 total meta kilobytes free = 65568 INFO: FS samma1 repaired: start: May 19, 2014 10:57:13 AM MDT finish: May 19, 2014 10:57:37 AM MDT NOTICE: Reclaimed 70057984 bytes NOTICE: Reclaimed 9519104 meta bytes [server1]root@solaris:~#
重新挂载文件系统。
[server1]root@solaris:~#mount
/samqfs1
[server1]root@solaris:~#
在此处停止。
在向现有文件系统添加设备之前,应当考虑您的需求和备选方案。确保对现有文件系统进行扩展是满足不断增长的容量需求的最佳方式。如果您需要更多的物理存储空间来容纳新项目或用户团体,则创建一个或多个新的 Oracle HSM 文件系统可能是一个较好的选择。多个较小的文件系统通常可以提供比一个较大的文件系统更好的性能,并且较小的文件可能更容易创建和维护。
在决定需要扩展文件系统后,请采取以下方法之一:
向已挂载的文件系统添加设备(建议使用)
执行如下操作:
以 root
用户身份登录到文件系统服务器。
在示例中,登录到主机 server1
:
[server1]root@solaris:~#
在文本编辑器中打开 /etc/opt/SUNWsamfs/mcf
文件并找到需要扩展的文件系统。
在示例中,使用 vi
编辑器。我们需要扩展两个文件系统,通用的 samqfsms
文件系统和高性能的 samqfs2ma
文件系统:
[server1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #----------------- --------- --------- --------- ------ --------------- samqfsms 100 ms samqfsms on /dev/dsk/c1t3d0s3 101 md samqfsms on /dev/dsk/c1t4d0s5 102 md samqfsms on samqfs2ma 200 ma samqfs2ma on /dev/dsk/c1t3d0s3 201 mm samqfs2ma on /dev/dsk/c1t3d0s5 202 md samqfs2ma on /dev/dsk/c1t4d0s5 203 md samqfs2ma on
如果要向通用的 ms
文件系统添加设备,请在 mcf
文件中向文件系统定义的末尾添加额外的数据/元数据设备。然后保存文件并关闭编辑器。
最多可以添加 252 个逻辑设备。在示例中,将两个设备(103
和 104
)添加到 samqfsms
文件系统:
[server1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #----------------- --------- --------- --------- ------ --------------- samqfsms 100 ms samqfsms on /dev/dsk/c1t3d0s3 101 md samqfsms on /dev/dsk/c1t4d0s5 102 md samqfsms on/dev/dsk/c1t3d0s7
103
md
samqfsms
on
/dev/dsk/c1t4d0s7
104
md
samqfsms
on
:wq
[server1]root@solaris:~#
如果要向高性能 ma
文件系统添加设备,请在 mcf
文件中向文件系统定义的末尾添加数据设备以及一个或多个 mm
磁盘设备。然后保存文件并关闭编辑器。
请始终将新设备添加在现有设备列表的末尾。最多可以添加 252 个设备,在添加数据设备时按比例添加元数据设备。在示例中,将一个 mm
元数据设备 (204
) 和两个 md
数据设备(205
和 206
)添加到 samqfs2ma
文件系统:
[server1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #----------------- --------- --------- --------- ------ --------------- ... samqfs2ma 200 ma samqfs2ma on /dev/dsk/c1t3d0s3 201 mm samqfs2ma on /dev/dsk/c1t3d0s5 202 md samqfs2ma on /dev/dsk/c1t4d0s5 203 md samqfs2ma on/dev/dsk/c1t5d0s6
204
mm
samqfs2ma
on
/dev/dsk/c1t3d0s7
205
md
samqfs2ma
on
/dev/dsk/c1t4d0s7
206
md
samqfs2ma
on
:wq
[server1]root@solaris:~#
运行 sam-fsd
命令检查 mcf
文件中是否有错误并纠正检测到的任何错误。
sam-fsd
是一个读取 Oracle HSM 配置文件的初始化命令。该命令会在遇到以下错误时停止:
[server1]root@solaris:~# sam-fsd
如果 sam-fsd
命令在 mcf
文件中找到错误,请编辑该文件以更正错误,并按照前一步骤中的描述重新检查。
在下面的示例中,sam-fsd
报告设备中出现的未指定问题:
[server1]root@solaris:~# sam-fsd Problem in mcf file /etc/opt/SUNWsamfs/mcf for filesystem samqfsms sam-fsd: Problem with file system devices.
通常,这样的错误是不经意的键入错误导致的。此处,在编辑器中打开 mcf
文件后,发现在设备 104
(第二个新的 md
设备)的设备名称中键入了一个字符 o
而非 0:
samqfsms 100 ms samqfsms on
/dev/dsk/c1t3d0s3 101 md samqfsms on
/dev/dsk/c1t4d0s5 102 md samqfsms on
/dev/dsk/c1t3d0s7 103 md samqfsms on
/dev/dsk/c1t4do
s7 104 md samqfsms on
ˆ
如果 sam-fsd
命令运行时未出错,则表明 mcf
文件正确。继续执行下一步。
以下示例是无误输出的部分列表:
[server1]root@solaris:~# sam-fsd
Trace file controls:
sam-amld /var/opt/SUNWsamfs/trace/sam-amld
cust err fatal ipc misc proc date
...
Would start sam-archiverd()
Would start sam-stagealld()
Would start sam-stagerd()
Would start sam-amld()
[server1]root@solaris:~#
指示 Oracle HSM 软件重新读取 mcf
文件并相应地重新配置自身。使用命令 samd
config
。
[server1]root@solaris:~#samd
config
Configuring SAM-FS [server1]root@solaris:~#
确保 samd
config
已更新了 Oracle HSM 文件系统配置以包括新设备。使用命令 samcmd
f
。
设备应当处于 off
状态。在示例中,samcmd
f
显示了新设备 103
和 104
,这两个设备都处于 off
状态:
[server1]root@solaris:~#samcmd
f
File systems samcmd 5.4 16:57:35 Feb 27 2014 samcmd on server1 ty eq state device_name status high low mountpoint server ms 100 on samqfsms m----2----- 80% 70% /samqfsms md 101 on /dev/dsk/c1t3d0s3 md 102 on /dev/dsk/c1t4d0s5 md 103 off /dev/dsk/c1t3d0s7 md 104 off /dev/dsk/c1t4d0s7 [server1]root@solaris:~#
启用新添加的设备。针对每个设备,使用命令 samcmd
add
equipment-number
,其中 equipment-number
是在 /etc/opt/SUNWsamfs/mcf
文件中分配给设备的设备序号。
在示例中,启用新设备 103
和 104
:
[server1]root@solaris:~#samcmd
add
103
[server1]root@solaris:~#samcmd
add
104
如果要向共享文件系统添加设备,请转到完成对添加到共享文件系统的新设备的配置。
如果要向非共享的独立文件系统添加设备,请确保设备已添加并且已准备就绪可供文件系统使用。使用命令 samcmd
m
,然后检查结果。
当设备处于 on
状态时,说明它已成功添加并准备就绪可供使用。在示例中,成功添加了设备 103
和 104
:
[server1]root@solaris:~#samcmd
f
Mass storage status samcmd 5.4 17:17:08 Feb 27 2014 samcmd on server1 ty eq status use state ord capacity free ra part high low ms 100 m----2----- 13% on 3.840G 3.588G 1M 16 80% 70% md 101 31% on 0 959.938M 834.250M md 102 13% on 1 959.938M 834.250M md 103 0% on 2 959.938M 959.938M md 104 0% on 3 959.938M 959.938M [server1]root@solaris:~#
在此处停止。
当向共享文件系统添加设备时,在所有文件系统主机上配置设备之前,必须执行几个额外的步骤。执行如下操作:
以 root
用户身份登录到文件系统元数据主机。
在示例中,元数据服务器主机名为 metadata-server
:
[metadata-server]root@solaris:~#
确保新设备已添加到元数据服务器。使用命令 samcmd
m
。
当设备处于 unavail
状态时,说明它已成功添加但尚未准备就绪可供使用。在示例中,成功添加了设备 103
和 104
:
[metadata-server]root@solaris:~#samcmd
f
Mass storage status samcmd 5.4 17:17:08 Feb 27 2014 samcmd on metadata-server ty eq status use state ord capacity free ra part high low ms 100 m----2----- 13% on 3.840G 3.588G 1M 16 80% 70% md 101 31% on 0 959.938M 834.250M md 102 13% on 1 959.938M 834.250M md 103 0% unavail 2 959.938M 959.938M md 104 0% unavail 3 959.938M 959.938M [metadata-server]root@solaris:~#
以 root
用户身份登录到每个文件系统客户机主机。
注意要包括潜在的元数据服务器,因为它们也是客户机。在示例中,需要登录到名为 potential-metadata-server
的潜在元数据服务器和两个分别名为 client1
和 client2Linux
的客户机。因此,打开三个终端窗口并使用安全 shell (ssh
):
[metadata-server]root@solaris:~#ssh
root@potential-metadata-server
Password: [potential-metadata-server]root@solaris:~# [metadata-server]root@solaris:~#ssh
root@client1
Password: [client1]root@solaris:~# [metadata-server]root@solaris:~#ssh
root@client2Linux
Password: [client2Linux]:[root@linux ~]#
如果客户机是 Linux 客户机,请卸载共享文件系统。
[client2Linux]:[root@linux ~]#umount
/samqfsms
在每台客户机上,在文本编辑器中打开 /etc/opt/SUNWsamfs/mcf
文件,并在文件系统定义的末尾添加新设备,正如在服务器上所做的一样。
在示例中,将设备 103
和 104
添加到 client1
上的 mcf
文件中:
[client1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #----------------- --------- --------- --------- ------ ---------- samqfsms 100 ms samqfsms on shared /dev/dsk/c1t3d0s3 101 md samqfsms on /dev/dsk/c1t4d0s5 102 md samqfsms on/dev/dsk/c1t3d0s7
103
md
samqfsms
on/dev/dsk/c1t4d0s7
104
md
samqfsms
on:wq
[metadata-server]root@solaris:~#
在每台客户机上,运行 sam-fsd
命令检查 mcf
文件中是否有错误并纠正检测到的任何错误。
[metadata-server]root@solaris:~# sam-fsd
在每台客户机上,指示 Oracle HSM 软件重新读取 mcf
文件并相应地配置自身:
[metadata-server]root@solaris:~#samd
config
如果客户机是 Linux 客户机,请挂载共享文件系统。
[client2Linux]:[root@linux ~]#mount
/samqfsms
在配置所有客户机后,返回到元数据服务器,并在新设备上启用存储分配。针对每个设备,使用命令 samcmd
alloc
equipment-number
,其中 equipment-number
是在 /etc/opt/SUNWsamfs/mcf
文件中分配给设备的设备序号。
在示例中,在设备 103
和 104
上启用存储分配:
[metadata-server]root@solaris:~#samcmd
alloc
103
[metadata-server]root@solaris:~#samcmd
alloc
104
最后,确保设备已准备就绪可供文件系统使用。使用命令 samcmd
m
,然后检查结果。
当设备处于 on
状态时,说明它已成功添加并准备就绪可供使用。在示例中,成功添加了设备 103
和 104
:
[metadata-server]root@solaris:~#samcmd
f
Mass storage status samcmd 5.4 17:17:08 Feb 27 2014 samcmd on metadata-server ty eq status use state ord capacity free ra part high low ms 100 m----2----- 13% on 3.840G 3.588G 1M 16 80% 70% md 101 31% on 0 959.938M 834.250M md 102 13% on 1 959.938M 834.250M md103
0%on
2 959.938M 959.938M md104
0%on
3 959.938M 959.938M [metadata-server]root@solaris:~#
在此处停止。
执行如下操作:
以 root
用户身份登录到文件系统服务器主机。
在示例中,元数据服务器主机名为 server1
:
[server1]root@solaris:~#
在卸载归档文件系统之前,必须执行使归档和回写进程闲置过程。
卸载文件系统。
卸载文件系统之前,不要继续操作。在示例中,卸载文件系统 samqfs1
:
[server1]root@solaris:~#umount
samqfs1
在文本编辑器中打开 /etc/opt/SUNWsamfs/mcf
文件并找到需要扩展的文件系统。
在示例中,使用 vi
编辑器。此处需要扩展 samqfs1
文件系统:
[server1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- --------- ------ --------- samqfs1 100 ms samqfs1 on /dev/dsk/c1t3d0s3 101 md samqfs1 on /dev/dsk/c1t4d0s5 102 md samqfs1 on
如果要向高性能 ma
文件系统添加设备,必须随数据存储一起添加元数据存储。添加足够的附加 mm
磁盘设备,以便存储您添加的数据设备的元数据。然后保存文件并关闭编辑器。
最多可以添加 252 个逻辑设备。在示例中,将一个 mm
元数据设备添加到 samqfs2ma
文件系统,将两个数据设备添加到 samqfs2ma
文件系统:
[server1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- --------- ------ --------- samqfs2ma 200 ma samqfs2ma on /dev/dsk/c1t3d0s3 201 mm samqfs2ma on/dev/dsk/c1t5d0s6
204
mm
samqfs2ma
on /dev/dsk/c1t3d0s5 202 md samqfs2ma on /dev/dsk/c1t4d0s5 203 md samqfs2ma on/dev/dsk/c1t3d0s7 205 md samqfs2ma on
/dev/dsk/c1t4dos7 206 md samqfs2ma on
:wq
[server1]root@solaris:~#
如果要向通用的 ms
文件系统添加设备,请在 mcf
文件中向文件系统定义添加额外的数据/元数据设备。然后保存文件并关闭编辑器。
最多可以添加 252 个逻辑设备。在示例中,将两个设备添加到 samqfs1
文件系统中:
[server1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- --------- ------ --------- samqfs1 100 ms samqfs1 on /dev/dsk/c1t3d0s3 101 md samqfs1 on /dev/dsk/c1t4d0s5 102 md samqfs1 on/dev/dsk/c1t3d0s7 103 md samqfs1 on
/dev/dsk/c1t4dos7 104 md samqfs1 on
:wq
[server1]root@solaris:~#
运行 sam-fsd
命令检查 mcf
文件中是否有错误并纠正检测到的任何错误。
sam-fsd
是一个读取 Oracle HSM 配置文件的初始化命令。该命令会在遇到以下错误时停止:
[server1]root@solaris:~# sam-fsd
指示 Oracle HSM 软件重新读取 mcf
文件并相应地重新配置自身:
root@solaris:~#samd
config
将新设备纳入文件系统中。使用命令 samgrowfs
family-set-name
,其中 family-set-name
是 /etc/opt/SUNWsamfs/mcf
文件中为文件系统指定的系列集名称。
在示例中,增大 samqfs1
文件系统:
[server1]root@solaris:~#samgrowfs
samqfs1
重新挂载文件系统。
[server1]root@solaris:~#mount
/samqfs1
如果您向归档文件系统添加了设备,请重新启动 Oracle HSM 磁带库管理守护进程。使用命令 samd
start
。
[server1]root@solaris:~#samd
start
如果您在进行更改之前忘了选择卸载文件系统并因此无法挂载文件系统,请通过删除对所添加设备的引用来恢复原始 mcf
文件。然后运行 samd
config
来恢复配置,卸载文件系统并从头开始。
在此处停止。
需要时,可以从挂载的 Oracle HSM 文件系统中删除数据设备。通常,当需要更换发生故障的单元或需要释放未充分利用的设备以另作它用时,这很有必要。不过,这存在一些限制。
您只能删除数据设备。无法删除用来存储元数据的任何设备,因为元数据定义了文件系统自身的组织。这意味着您只能从高性能 ma
文件系统中删除 md
、mr
和分散读写组设备。无法从 ma
文件系统中删除 mm
元数据设备。由于 md
设备既存储数据也存储元数据,因此您也无法从通用的 ms
文件系统中移除这些设备。
要删除设备,还必须有地方来移动位于目标设备上的任何有效的数据文件。这意味着您无法删除所有设备。文件系统中必须有一个设备始终保持可用,并且该设备必须有足够的空闲容量来存储位于所删除设备上的所有文件。因此,如果您需要删除一个分散读写组,则必须具有配置了相同数目的成员设备的另一个分散读写组。
要删除设备,请执行如下操作:
执行以下任务:
samexplorer
以 root
用户身份登录到文件系统服务器主机。
在示例中,元数据服务器主机名为 server1
:
[server1]root@solaris:~#
创建一个 samexplorer
报告。使用命令 samexplorer
path/
hostname
.
YYYY
MM
DD
.
hh
mm
z
.tar.gz
,其中:
path
是指向选定目录的路径。
hostname
是 Oracle HSM 文件系统主机的名称。
YYYY
MM
DD
.
hh
mm
z
是日期和时间戳。
默认情况下,该文件名为 /tmp/SAMreport.
hostname
.
YYYY
MM
DD
.
hh
mm
z
.tar.gz
。在示例中,使用目录 /zfs1/tmp/
,其中 /zfs1
是与 Oracle HSM 文件系统没有共用组件的文件系统(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[server1]root@solaris:~#samexplorer
\/zfs1/sam_config/explorer/samhost1.20140130.1659MST.tar.gz
Report name: /zfs1/sam_config/explorer/samhost1.20140130.1659MST.tar.gz Lines per file: 1000 Output format: tar.gz (default) Use -u for unarchived/uncompressed. Please wait............................................. Please wait............................................. Please wait...................................... The following files should now be ftp'ed to your support provider as ftp type binary. /zfs1/sam_config/explorer/samhost1.20140130.1659MST.tar.gz
以 root
用户身份登录到文件系统服务器主机。
在示例中,元数据服务器主机名为 server1
:
[server1]root@solaris:~#
选择将用来存储恢复点文件的位置。所选择的位置不得与您要备份的文件系统共享任何设备,并且必须有空间来存储非常大的文件。
打算删除的设备可能包含尚未归档的文件。因为这样的文件只作为单个副本存在,所以必须创建一个至少存储某些数据和元数据的恢复点文件。这会大大增加恢复点文件的大小。
在示例中,在与 Oracle HSM 文件系统没有共用组件的文件系统 /zfs1
中创建一个子目录 tmp/
:
[server1]root@solaris:~#mkdir
/zfs1/
tmp/
[server1]root@solaris:~#
转到文件系统的根目录。
在示例中,转到挂载点目录 /samqfs1
:
[server1]root@solaris:~#cd
/samqfs1
[server1]root@solaris:~#
备份文件系统元数据和任何未归档的数据。使用命令 samfsdump
-f
-u
recovery-point
,其中 recovery-point
是已完成的恢复点文件的路径和文件名。
请注意,-u
选项将未归档文件的数据部分添加到恢复点。这会大大增加该文件的大小。
在示例中,为目录 /zfs1/tmp/
中名为 samqfs1-20140313.025215
的 samqfs1
文件系统创建了恢复点文件。我们使用命令 ls
-l
检查结果(请注意,下面的第二条命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[server1]root@solaris:~#cd /samqfs1
[server1]root@solaris:~#samfsdump -f
\/zfs1/
tmp/samqfs1-`date '+%Y%m%d.%H%M%S'`
-T
/samqfs1
samfsdump statistics: Files: 10010 Directories: 2 Symbolic links: 0 Resource files: 0 Files as members of hard links : 0 Files as first hard link : 0 File segments: 0 File archives: 10010 Damaged files: 0 Files with data: 0 File warnings: 0 Errors: 0 Unprocessed dirs: 0 File data bytes: 0 [server1]root@solaris:~#ls
-l
/zfs1/tmp/
samqfs1
* -rw-r--r-- 1 root other 5376517 Mar 13 02:52 /zfs1/tmp/samqfs1-20140313.025215 [server1]root@solaris:~#
一次只能删除一个设备。针对每个设备,执行如下操作:
以 root
用户身份登录到文件系统服务器主机。
在示例中,元数据服务器主机名为 server1
:
[server1]root@solaris:~#
打开 /etc/opt/SUNWsamfs/mcf
文件,并记录需要移除的设备的设备序号。
在示例中,使用 vi
编辑器。此处需要从 samqfs1
文件系统的设备列表中删除设备 /dev/dsk/c1t4d0s7
。设备序号为 104
:
[server1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #----------------- --------- --------- --------- ------ -------------- samqfs1 100 ms samqfs1 on /dev/dsk/c1t3d0s3 101 md samqfs1 on /dev/dsk/c1t4d0s5 102 md samqfs1 on /dev/dsk/c1t3d0s7 103 md samqfs1 on/dev/dsk/c1t4d0s7
104
md samqfs1 on:q
[server1]root@solaris:~#
在尝试删除某个设备之前,请确保文件系统中的剩余设备可以接受必须从您要删除的设备中移走的文件。
确保剩余设备具有足够的容量。
如果设备是一个分散读写组,请确保文件系统包含具有等效配置的另一个分散读写组。
例如,如果您打算删除的分散读写组具有四个设备成员,则您必须具有处于 ON 状态并且有四个设备成员的另一个分散读写组。
确保您打算修改的文件系统具有一个 2A 版超级块。使用命令 samfsinfo
filesystem-name
,其中 filesystem-name
是文件系统的名称。
在示例中,文件系统 samqfs1
使用一个 2A
版超级块:
[server1]root@solaris:~# /opt/SUNWsamfs/sbin/samfsinfo samqfs1 samfsinfo: filesystem samqfs1 is mounted. name:samqfs1
version:
2A
time: Tuesday, June 28, 2011 6:07:36 AM MDT feature: Aligned Maps count: 4 ... [server1]root@solaris:~#
如果文件系统没有 2A 版超级块,请在此处停止。当此文件系统处于已挂载状态时,无法删除设备。
如果要从 Oracle HSM 归档文件系统中删除设备,请从要删除的磁盘设备中释放所有已归档的文件。使用命令 samcmd
release
equipment-number
,其中 equipment-number
是 /etc/opt/SUNWsamfs/mcf
文件中标识该设备的设备序号。
如果设备是一个分散读写组,请提供该组中任何设备的设备编号。
Oracle HSM 软件将指定设备的状态更改为 noalloc
(不分配),以便不在其上存储新文件,并开始释放以前归档的文件。在设备不包含未归档的文件之后,软件将从文件系统配置中删除设备并将其状态更改为 off
。
在示例中,释放归档文件系统 samqfs1
中设备 104
中的文件:
[server1]root@solaris:~#samcmd
release
104
如果要从 Oracle HSM 非归档文件系统中删除设备,请将所有剩余的有效文件从您要删除的磁盘设备中移走。使用命令 samcmd
remove
equipment-number
,其中 equipment-number
是 /etc/opt/SUNWsamfs/mcf
文件中标识该设备的设备序号。
Oracle HSM 软件将指定设备的状态更改为 noalloc
(不分配),以便不在其上存储新文件,并开始将包含有效数据的文件移到文件系统中的剩余设备。在移走所有文件后,软件将从文件系统配置中删除设备并将其状态更改为 off
。
在示例中,将文件从设备 104
移走:
[server1]root@solaris:~#samcmd
remove
104
监视选定的进程 samcmd
remove
或 samcmd
release
的进度。使用命令 samcmd
m
并/或查看日志文件和 /var/opt/SUNWsamfs/trace/sam-shrink
文件。
如果所有文件都已归档,则 release
进程可以相当快地完成,因为它只是释放与已复制到归档介质的文件相关的空间。根据数据量和文件数目,remove
进程可能会花费相当长的时间,因为它必须在磁盘设备之间移动文件。
[server1]root@solaris:~#samcmd
m
ty eq status use state ord capacity free ra part high low ms 100 m----2----- 27% on 3.691G 2.628G 1M 16 80% 70% md 101 27% on 0 959.938M 703.188M md 102 28% on 1 899.938M 646.625M md 103 13% on 2 959.938M 834.250M md 104 0% noalloc 3 959.938M 959.938M [server1]root@solaris:~#
如果您使用 samcmd
release
并且目标设备没有进入 off
状态,则表明设备上有未归档的文件。请等待归档程序运行并完成归档。然后再次使用命令 samcmd
release
。可以使用命令 samcmd
a
检查归档操作的进度。
在未归档的文件归档之前,release
进程无法释放磁盘空间。
[server1]root@solaris:~#samcmd
a
Archiver status samcmd 5.4 14:12:14 Mar 1 2014 samcmd on server1 sam-archiverd: Waiting for resources sam-arfind: samqfs1 mounted at /samqfs1 Files waiting to start 4 schedule 2 archiving 2 [server1]root@solaris:~#
如果 samcmd
release
因为一个或多个未归档的文件无法归档而失败,请将未归档的文件移到另一设备。使用命令 samcmd
remove
equipment-number
,正如从非归档独立文件系统删除设备时一样。
在示例中,将文件从设备 104
移走:
[server1]root@solaris:~#samcmd
remove
104
在设备状态变为 off
之后,在文本编辑器中打开 /etc/opt/SUNWsamfs/mcf
文件,找到该文件系统,并更新设备列表以反映更改。保存文件并关闭编辑器。
在本示例中,samcmd
m
显示 104
处于 off
状态。因此,使用 vi
编辑器打开 mcf
文件。随后从 samqfs1
文件系统的设备列表中删除设备 104
的条目并保存更改:
[server1]root@solaris:~#samcmd
m
ty eq status use state ord capacity free ra part high low ms 100 m----2----- 27% on 3.691G 2.628G 1M 16 80% 70% md 101 27% on 0 959.938M 703.188M md 102 28% on 1 899.938M 646.625M md 103 13% on 2 959.938M 834.250M md 104 0% off 3 959.938M 959.938M [server1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #----------------- --------- --------- --------- ------ --------- samqfs1 100 ms samqfs1 on /dev/dsk/c1t3d0s3 101 md samqfs1 on /dev/dsk/c1t4d0s5 102 md samqfs1 on /dev/dsk/c1t3d0s7 103 md samqfs1 on:wq
[server1]root@solaris:~#
运行 sam-fsd
命令检查修改后的 mcf
文件中是否有错误并纠正检测到的任何错误。
如果遇到错误,sam-fsd
命令将停止:
[server1]root@solaris:~# sam-fsd
指示 Oracle HSM 软件重新读取 mcf
文件并相应地重新配置自身:
[server1]root@solaris:~#samd
config
在此处停止。
本节概述以下任务:
当您挂载或卸载共享文件系统时,元数据服务器和客户机的安装或卸载顺序非常重要。
为了便于故障转移,元数据服务器和所有潜在元数据服务器上的挂载选项应相同。例如,您可以创建包含挂载选项的 samfs.cmd
文件,并将该文件复制到所有主机。
有关挂载共享文件系统的更多信息,请参见 mount_samfs
手册页。
以 root
用户身份登录到 Oracle HSM 元数据服务器和客户机主机。
在示例中,登录到 sharefs
文件系统的元数据服务器主机 sharefs-mds
。然后我们针对每个客户机(sharefs-client1
和 sharefs-client2
)打开一个终端窗口。我们使用 ssh
(Secure Shell,安全 Shell)进行登录:
[sharefs-mds]root@solaris:~#ssh
root@sharefs-client1
Password: [sharefs-client1]root@solaris:~# [sharefs-mds]root@solaris:~#ssh
root@sharefs-client2
Password: [sharefs-client2]root@solaris:~#
如果文件系统在 Solaris /etc/vfstab
文件中有一个条目,请使用命令 mount
mountpoint
在元数据服务器主机上挂载共享文件系统,其中 mountpoint
是主机的根文件系统上的挂载点目录。
请始终先在元数据服务器主机上挂载文件系统,然后再在客户机上挂载文件系统。
在示例中,sharefs
文件系统在 /etc/vfstab
文件中具有以下条目:
sharefs - /sharefs samfs - no shared
因此,可以通过仅提供挂载点参数来挂载文件系统:
[sharefs-mds]root@solaris:~#mount
/sharefs
[sharefs-mds]root@solaris:~#
如果文件系统在 Solaris /etc/vfstab
文件中没有条目,请使用命令 mount
-F
samfs
-o
shared
mountpoint
在元数据服务器主机上挂载共享文件系统,其中 mountpoint
是主机的根文件系统上的挂载点目录。
请始终先在元数据服务器主机上挂载文件系统,然后再在客户机上挂载文件系统。
在示例中,sharefs
文件系统在 /etc/vfstab
文件中没有条目:
[sharefs-mds]root@solaris:~#mount
-F
samfs
-o
shared
/sharefs
[sharefs-mds]root@solaris:~#
如果文件系统在 Solaris /etc/vfstab
文件中有一个条目,请使用命令 mount
mountpoint
在每台客户机主机上挂载共享文件系统,其中 mountpoint
是主机的根文件系统上的挂载点目录。
您可以按照任意顺序在不同客户机主机上挂载文件系统。
[sharefs-client1]root@solaris:~#mount
/sharefs
[sharefs-client1]root@solaris:~# [sharefs-client2]root@solaris:~#mount
/sharefs
[sharefs-client2]root@solaris:~#
如果文件系统在 Solaris /etc/vfstab
文件中没有条目,请使用命令 mount
-F
samfs
-o
shared
mountpoint
在每个客户机主机上挂载共享文件系统,其中 mountpoint
是主机的根文件系统上的挂载点目录。
您可以按照任意顺序在不同客户机主机上挂载文件系统。
[sharefs-client1]root@solaris:~#mount
-F
samfs
-o
shared
/sharefs
[sharefs-client1]root@solaris:~# [sharefs-client2]root@solaris:~#mount
-F
samfs
-o
shared
/sharefs
[sharefs-client2]root@solaris:~#
在此处停止。
以 root
用户身份登录到 Oracle HSM 元数据服务器和客户机主机。
在示例中,登录到 sharefs
文件系统的元数据服务器主机 sharefs-mds
。然后打开每台客户机(sharefs-client1
和 sharefs-client2
)的终端窗口,并使用 ssh
(安全 Shell)登录:
[sharefs-mds]root@solaris:~#ssh
root@sharefs-client1
Password: [sharefs-client1]root@solaris:~# [sharefs-mds]root@solaris:~#ssh root@sharefs-client2
Password: [sharefs-client2]root@solaris:~#
如果通过 NFS 或 SAMBA 共享文件系统,请先取消文件系统共享,然后再卸载文件系统。在元数据服务器上,使用命令 unshare
mount-point
,其中 mount-point
是 Oracle HSM 文件系统的挂载点目录。
[sharefs-mds]root@solaris:~#unshare
/sharefs
[sharefs-mds]root@solaris:~#
从每台客户机卸载 Oracle HSM 共享文件系统。使用命令 umount
mount-point
,其中 mount-point
是 Oracle HSM 文件系统的挂载点目录。
有关进一步的详细信息,请参见 umount_samfs
手册页。在示例中,从两台客户机(sharefs-client1
和 sharefs-client2
)中卸载 /sharedqfs1
:
[sharefs-client1]root@solaris:~#umount
/sharefs
[sharefs-client1]root@solaris:~#exit
[sharefs-mds]root@solaris:~# [sharefs-client2]root@solaris:~#umount
/sharefs
[sharefs-client1]root@solaris:~#exit
[sharefs-mds]root@solaris:~#
从元数据服务器中卸载 Oracle HSM 共享文件系统。使用命令 umount
-o
await_clients=
interval
mount-point
,其中 mount-point
是 Oracle HSM 文件系统的挂载点目录,interval
是 -o
await_clients
选项延迟执行的秒数。
在 Oracle HSM 共享文件系统的元数据服务器上发出 umount
命令时,-o
await_clients
选项使 umount
等待指定的秒数,以便客户机有时间卸载共享资源。如果您卸载非共享文件系统或者在 Oracle HSM 客户机上发出该命令,则该选项不起作用。有关进一步的详细信息,请参见 umount_samfs
手册页。
在示例中,从服务器卸载 /sharefs
文件系统,从而允许客户机在 60
秒内卸载:
[sharefs-mds]root@solaris:~#umount
-o
await_clients=
60
/sharefs
[sharefs-mds]root@solaris:~#
在此处停止。
本节提供有关将额外的主机配置为共享文件系统的客户机和有关取消配置现有客户机的说明。其中包括以下几节:
向共享文件系统添加客户机主机的过程包括三个部分:
首先,在共享文件系统配置中添加主机信息。
然后,使用特定于主机操作系统的过程在主机上配置共享文件系统:在 Solaris 客户机上配置共享文件系统或在 Linux 客户机主机上配置共享文件系统。
最后,使用特定于主机操作系统的过程在主机上挂载共享文件系统:在 Solaris 主机上挂载共享文件系统或在 Linux 客户机主机上挂载共享文件系统。
以 root
用户身份登录到 Oracle HSM 元数据服务器。
在示例中,Oracle HSM 共享文件系统是 sharefs
,元数据服务器主机是 sharefs-mds
:
[sharefs-mds]root@solaris:~#
备份文件 /etc/opt/SUNWsamfs/hosts.
filesystem
,其中 filesystem
是要在其中添加客户机主机的文件系统的名称。
请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义:
[sharefs-mds]root@solaris:~#cp
/etc/opt/SUNWsamfs/hosts.sharefs
\/etc/opt/SUNWsamfs/hosts.sharefs.bak
如果共享文件系统已挂载,请从活动元数据服务器运行命令 samsharefs
filesystem
,并将输出重定向到文件 /etc/opt/SUNWsamfs/hosts.
filesystem
,其中 filesystem
是您要向其添加客户机主机的文件系统的名称。
samsharefs
命令显示 Oracle HSM 共享文件系统的主机配置。将输出重定向到文件会创建一个新的 hosts 文件(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sharefs-mds]root@solaris:~# samsharefssharedqfs1
>
\/etc/opt/SUNWsamfs/hosts.
sharedqfs1
如果共享文件系统未挂载,请从活动或潜在的元数据服务器运行命令 samsharefs
-R
filesystem
,并将输出重定向到文件 /etc/opt/SUNWsamfs/hosts.
filesystem
,其中 filesystem
是您要向其添加客户机主机的文件系统的名称。
只能从活动元数据服务器或潜在元数据服务器上运行 samsharefs
-R
命令(有关更多详细信息,请参见 samsharefs
手册页)。samsharefs
命令显示 Oracle HSM 共享文件系统的主机配置。将输出重定向到文件会创建一个新的 hosts 文件。在本示例中,我们从元数据服务器 sharefs-mds
运行命令(请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义):
[sharefs-mds]root@solaris:~#samsharefs
-R
sharedqfs1
\>
/etc/opt/SUNWsamfs/hosts.sharedqfs1
在文本编辑器中打开新创建的 hosts 文件。
在示例中,使用 vi
编辑器。主机配置包括活动元数据服务器 sharefs-mds
、一台同时也是潜在元数据服务器的客户机 sharefs-mds_alt
以及其他两个客户机 sharefs-client1
和 sharefs-client2
:
[sharefs-mds]root@solaris:~#vi
/etc/opt/SUNWsamfs/hosts.sharefs
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------------ ---------------------- ------- --- ---------- sharefs-mds 10.79.213.117 1 0 server sharefs-mds_alt 10.79.213.217 2 0 sharefs-client1 10.79.213.133 0 0 sharefs-client2 10.79.213.47 0 0
在 hosts 文件中,为新的客户机主机添加一行,保存文件,然后关闭编辑器。
在示例中,为主机 sharefs-client3
添加一个条目:
[sharefs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/hosts.sharefs # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------------ ---------------------- ------- --- ---------- sharefs-mds 10.79.213.117 1 0 server sharefs-mds_alt 10.79.213.217 2 0 sharefs-client1 10.79.213.133 0 0 sharefs-client2 10.79.213.47 0 0sharefs-client3
10.79.213.49
0
0
:wq
[sharefs-mds]root@solaris:~#
如果已挂载文件系统,请从活动元数据服务器更新文件系统。使用命令 samsharefs
-u
filesystem
,其中 filesystem
是要在其中添加客户机主机的文件系统的名称。
samsharefs
命令将重新读取修改后的 hosts 文件并更新配置:
[sharefs-mds]root@solaris:~#samsharefs
-u
sharefs1
如果未挂载文件系统,请从活动或潜在元数据服务器更新文件系统。使用命令 samsharefs
-R
-u
filesystem
,其中 filesystem
是要在其中添加客户机主机的文件系统的名称。
samsharefs
命令将重新读取修改后的 hosts 文件并更新配置:
[sharefs-mds]root@solaris:~#samsharefs
-R
-u
sharefs1
如果要将 Solaris 主机添加为客户机,请转到在 Solaris 客户机上配置共享文件系统。
如果要将 Linux 主机添加为客户机,请转到在 Linux 客户机主机上配置共享文件系统。
在共享文件系统客户机上,以 root
用户身份登录。
在示例中,Oracle HSM 共享文件系统是 sharefs
,客户机主机是 sharefs-client1
:
[sharefs-client1]root@solaris:~#
在终端窗口中,检索共享文件系统的配置信息。使用命令 samfsconfig
device-path
,其中 device-path
是命令应当从其开始搜索文件系统磁盘设备的位置(例如 /dev/dsk/*
或 /dev/zvol/dsk/rpool/*
)。
[sharefs-client1]root@solaris:~#samfsconfig
/dev/dsk/*
如果主机对文件系统的元数据设备具有访问权限并因此适合用作潜在的元数据服务器,则 samfsconfig
输出非常类似于您在文件系统元数据服务器上创建的 mcf
文件。
在我们的示例中,主机 sharefs-client1
对元数据设备(设备类型为 mm
)具有访问权限,因此,命令输出将显示服务器 sharefs-mds
上的 mcf
文件中列出的相同设备。只有主机分配的设备控制器编号不同:
[sharefs-client1]root@solaris:~#samfsconfig
/dev/dsk/*
# Family Set 'sharefs' Created Thu Feb 21 07:17:00 2013 # Generation 0 Eq count 4 Eq meta count 1 sharefs 300 ma sharefs - /dev/dsk/c1t0d0s0 301 mm sharefs - /dev/dsk/c1t3d0s0 302 mr sharefs - /dev/dsk/c1t3d0s1 303 mr sharefs -
如果主机对文件系统的元数据设备没有访问权限,则 samfsconfig
命令无法找到元数据设备,因此无法将它发现的 Oracle HSM 设备纳入文件系统配置中。命令输出在 Missing
Slices
下列出了 Ordinal
0
(元数据设备),未包括标识文件系统系列集的行,并且注释掉了数据设备的列表。
在示例中,主机 sharefs-client2
仅对数据设备具有访问权限。因此,samfsconfig
输出类似于以下内容:
[sharefs-client2]root@solaris:~#samfsconfig
/dev/dsk/*
# Family Set 'sharefs' Created Thu Feb 21 07:17:00 2013 # Missing slices # Ordinal 0 # /dev/dsk/c4t3d0s0 302 mr sharefs - # /dev/dsk/c4t3d0s1 303 mr sharefs -
从 samfsconfig
输出复制共享文件系统的条目。然后,在另一个窗口中,在文本编辑器中打开 /etc/opt/SUNWsamfs/mcf
文件,并将复制的条目粘贴到文件中。
在第一个示例中,主机 sharefs-client1
对文件系统的元数据设备具有访问权限,因此,mcf
文件起初类似于以下内容:
[sharefs-client1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #---------------- --------- --------- --------- ------ --------------- sharefs 300 ma sharefs - /dev/dsk/c1t0d0s0 301 mm sharefs - /dev/dsk/c1t3d0s0 302 mr sharefs - /dev/dsk/c1t3d0s1 303 mr sharefs -
在第二个示例中,主机 sharefs-client2
对文件系统的元数据设备没有访问权限,因此,mcf
文件起初类似于以下内容:
[sharefs-client2]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #---------------- --------- --------- --------- ------ --------------- # /dev/dsk/c4t3d0s0 302 mr sharefs - # /dev/dsk/c4t3d0s1 303 mr sharefs -
如果主机对文件系统的元数据设备具有访问权限,请将 shared
参数添加到共享文件系统条目的 Additional Parameters
字段中。
在第一个示例中,主机 sharefs-client1
对元数据具有访问权限:
[sharefs-client1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #---------------- --------- --------- --------- ------ --------------- sharefs 300 ma sharefs -shared
/dev/dsk/c1t0d0s0 301 mm sharefs - /dev/dsk/c1t3d0s0 302 mr sharefs - /dev/dsk/c1t3d0s1 303 mr sharefs -
如果主机对文件系统的元数据设备没有访问权限,请为共享文件系统添加一行并包括 shared
参数
[sharefs-client2]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #---------------- --------- --------- --------- ------ ---------------sharefs
300
ma
sharefs
-
shared
# /dev/dsk/c4t3d0s0 302 mr sharefs - # /dev/dsk/c4t3d0s1 303 mr sharefs -
如果主机对文件系统的元数据设备没有访问权限,请为元数据设备添加一行。将 Equipment
Identifier
字段设置为 nodev
(无设备),将其余字段设置为它们在元数据服务器上的同一值:
[sharefs-client2]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #---------------- --------- --------- --------- ------ --------------- sharefs 300 ma sharefs on sharednodev
301
mm
sharefs
on
# /dev/dsk/c4t3d0s0 302 mr sharefs - # /dev/dsk/c4t3d0s1 303 mr sharefs -
如果主机对文件系统的元数据设备没有访问权限,请取消注释数据设备的条目。
[sharefs-client2]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #---------------- --------- --------- --------- ------ --------------- sharefs 300 ma sharefs on shared nodev 301 mm sharefs on/dev/dsk/c4t3d0s0
302
mr
sharefs
-
/dev/dsk/c4t3d0s1
303
mr
sharefs
-
确保所有设备的 Device State
字段设置为 on
,保存 mcf
文件并关闭编辑器。
在第一个示例中,主机 sharefs-client1
对文件系统的元数据设备具有访问权限,因此,mcf
文件最终类似于以下内容:
[sharefs-client1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #---------------- --------- --------- --------- ------ --------------- sharefs 300 ma sharefs on shared /dev/dsk/c1t0d0s0 301 mm sharefs on /dev/dsk/c1t3d0s0 302 mr sharefson
/dev/dsk/c1t3d0s1 303 mr sharefson
:wq
[sharefs-client1]root@solaris:~#
在第二个示例中,主机 sharefs-client2
对文件系统的元数据设备没有访问权限,因此,mcf
文件最终类似于以下内容:
[sharefs-client2]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #---------------- --------- --------- --------- ------ --------------- sharefs 300 ma sharefs on shared nodev 301 mm sharefs on /dev/dsk/c4t3d0s0 302 mr sharefson
/dev/dsk/c4t3d0s1 303 mr sharefson
:wq
[sharefs-client2]root@solaris:~#
运行 sam-fsd
命令检查 mcf
文件中是否有错误并更正发现的任何错误。
sam-fsd
是一个读取 Oracle HSM 配置文件的初始化命令。如果遇到错误,该命令将停止。在示例中,检查 sharefs-client1
上的 mcf
文件:
[sharefs-client1]root@solaris:~# sam-fsd
在共享文件系统主机上,以 root
用户身份登录。
在示例中,Oracle HSM 共享文件系统是 sharefs
,主机是名为 sharefs-client1
的客户机:
[sharefs-client1]root@solaris:~#
备份操作系统的 /etc/vfstab
文件。
[sharefs-client1]root@solaris:~#cp
/etc/vfstab /etc/vfstab.backup
在文本编辑器中打开 /etc/vfstab
文件,并为共享文件系统添加一行。
在示例中,在 vi
文本编辑器中打开文件并为 sharefs
系列集设备添加一行:
[sharefs-client1]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- -------- ------ ---- ------- ------------------------ /devices - /devices devfs - no - /proc - /proc proc - no - ...sharefs
-
/sharefs
samfs
-
no
要将文件系统作为共享文件系统挂载到客户机上,请在共享文件系统 vfstab
条目的 Mount Options
列中输入 shared
选项。
如果希望当前客户机将共享文件系统 sharefs
挂载为只读的,则按下例中所示编辑 vfstab
条目:
#File
#Device Device Mount System fsck Mount Mount
#to Mount to fsck Point Type Pass at Boot Options
#-------- ------- -------- ------ ---- ------- ------------------------
/devices - /devices devfs - no -
/proc - /proc proc - no -
...
sharefs - /sharefs samfs - no shared
使用逗号作为分隔符添加所需的任何其他挂载选项,并对 /etc/vfstab
文件进行所需的任何其他更改。然后,保存 /etc/vfstab
文件。
在示例中,未添加任何额外的挂载选项:
#File
#Device Device Mount System fsck Mount Mount
#to Mount to fsck Point Type Pass at Boot Options
#-------- ------- -------- ------ ---- ------- -------------------------
/devices - /devices devfs - no -
/proc - /proc proc - no -
...
sharefs - /sharefs samfs - no shared
:wq
[sharefs-client1]root@solaris:~#
创建在 /etc/vfstab
文件中指定的挂载点,并为挂载点设置访问权限。
挂载点权限必须与元数据服务器上的权限相同,并与所有其他客户机保持一致。用户必须具有执行 (x
) 权限才能转到挂载点目录并访问挂载的文件系统中的文件。在示例中,创建 /sharefs
挂载点目录并将权限设置为 755
(-rwxr-xr-x
):
[sharefs-client1]root@solaris:~#mkdir
/sharefs
[sharefs-client1]root@solaris:~#chmod
755
/sharefs
[sharefs-client1]root@solaris:~#
挂载共享文件系统:
[sharefs-client1]root@solaris:~#mount
/sharefs
[sharefs-client1]root@solaris:~#
如果要将潜在的元数据服务器主机添加为分布式磁带 I/O 数据移动器,请转到为分布式磁带 I/O 配置数据移动器客户机。
在此处停止。
在 Linux 客户机上,以 root
用户身份登录。
在示例中,Oracle HSM 共享文件系统是 sharefs
,主机是名为 sharefs-clientL
的 Linux 客户机:
[sharefs-clientL][root@linux ~]#
在终端窗口中,使用 samfsconfig
device-path
命令检索共享文件系统的配置信息,其中 device-path
是命令应当从其开始搜索文件系统磁盘设备的位置(例如 /dev/*
)。
因为 Linux 主机对文件系统的元数据设备没有访问权限,samfsconfig
命令无法找到元数据设备,因此无法将其发现的 Oracle HSM 设备纳入文件系统配置中。命令输出在 Missing
Slices
下列出了 Ordinal
0
(元数据设备),未包括标识文件系统系列集的行,并且注释掉了数据设备的列表。
在示例中,Linux 主机 sharefs-clientL
的 samfsconfig
输出类似于以下内容:
[sharefs-clientL][root@linux ~]#samfsconfig
/dev/*
# Family Set 'sharefs' Created Thu Feb 21 07:17:00 2013 # # Missing slices # Ordinal 0 # /dev/sda4 302 mr sharefs - # /dev/sda5 303 mr sharefs -
从 samfsconfig
输出复制共享文件系统的条目。然后,在另一个窗口中,在文本编辑器中打开 /etc/opt/SUNWsamfs/mcf
文件,并将复制的条目粘贴到文件中。
在示例中,Linux 主机 sharefs-clientL
上的 mcf
文件起初类似于以下内容:
[sharefs-clientL][root@linux ~]#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- --------- ------ ------------- # /dev/sda4 302 mr sharefs - # /dev/sda5 303 mr sharefs -
在 mcf
文件中,为共享文件系统插入一行并包括 shared
参数。
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- --------- ------ -------------sharefs
300
ma
sharefs
-
shared
# /dev/sda4 302 mr sharefs - # /dev/sda5 303 mr sharefs -
在 mcf
文件中,为文件系统的元数据设备插入行。因为 Linux 主机对元数据设备没有访问权限,因此将 Equipment
Identifier
字段设置为 nodev
(无设备),将其余字段设置为它们在元数据服务器上的同一值:
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- --------- ------ ------------- sharefs 300 ma sharefs on sharednodev
301
mm
sharefs
on
# /dev/sda4 302 mr sharefs - # /dev/sda5 303 mr sharefs -
在 mcf
文件中,取消注释 Linux 数据设备的条目。
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- --------- ------ ------------- sharefs 300 ma sharefs on shared nodev 301 mm sharefs on/dev/sda4
302
mr
sharefs
-
/dev/sda5
303
mr
sharefs
-
确保所有设备的 Device State
字段设置为 on
,保存 mcf
文件。
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- --------- ------ ------------- sharefs 300 ma sharefson
shared nodev 301 mm sharefson
/dev/sda4 302 mr sharefson
/dev/sda5 303 mr sharefson
:wq
[sharefs-clientL][root@linux ~]#
运行 sam-fsd
命令检查 mcf
文件中是否有错误并更正发现的任何错误。
sam-fsd
是一个读取 Oracle HSM 配置文件的初始化命令。如果遇到错误,该命令将停止。在示例中,检查 Linux 客户机 sharefs-clientL
上的 mcf
文件:
[sharefs-clientL][root@linux ~]# sam-fsd
在 Linux 客户机上,以 root
用户身份登录。
在示例中,Oracle HSM 共享文件系统是 sharefs
,主机是名为 sharefs-clientL
的 Linux 客户机:
[sharefs-clientL][root@linux ~]#
备份操作系统的 /etc/fstab
文件。
[sharefs-clientL][root@linux ~]#cp
/etc/fstab
/etc/fstab.backup
在文本编辑器中打开 /etc/fstab
文件,并为共享文件系统添加一行。
在示例中,使用 vi
文本编辑器为 sharefs
系列集设备添加一行:
[sharefs-clientL][root@linux ~]#vi
/etc/fstab
#File #Device Mount System Mount Dump Pass #to Mount Point Type Options Frequency Number #-------- ------- -------- ------------------------- --------- ------ ... /proc /proc proc defaultssharefs
/sharefs
samfs
在文件的第四列中,添加必需的 shared
挂载选项。
[sharefs-clientL][root@linux ~]# vi /etc/fstab
#File
#Device Mount System Mount Dump Pass
#to Mount Point Type Options Frequency Number
#-------- ------- -------- ------------------------- --------- ------
...
/proc /proc proc defaults
sharefs /sharefs samfs shared
在文件的第四列中,使用逗号作为分隔符添加所需的任何其他挂载选项。
Linux 客户机支持以下其他挂载选项:
rw
、ro
retry
meta_timeo
rdlease
、wrlease
、aplease
minallocsz
、maxallocsz
noauto
、auto
在示例中,添加选项 noauto
:
#File #Device Mount System Mount Dump Pass #to Mount Point Type Options Frequency Number #-------- ------- -------- ------------------------- --------- ------ ... /proc /proc proc defaultssharefs
/sharefs
samfs
shared,noauto
在文件的其余两列中输入零 (0
)。然后,保存 /etc/fstab
文件。
#File #Device Mount System Mount Dump Pass #to Mount Point Type Options Frequency Number #-------- ------- -------- ------------------------- --------- ------ ... /proc /proc proc defaults sharefs /sharefs samfs shared,noauto0
0
:wq
[sharefs-clientL][root@linux ~]#
创建 /etc/fstab
文件中指定的挂载点,并为挂载点设置访问权限。
挂载点权限必须与元数据服务器上的权限相同,并与所有其他客户机保持一致。用户必须具有执行 (x
) 权限才能转到挂载点目录并访问挂载的文件系统中的文件。在示例中,创建 /sharefs
挂载点目录并将权限设置为 755
(-rwxr-xr-x
):
[sharefs-clientL][root@linux ~]#mkdir
/sharefs
[sharefs-clientL][root@linux ~]#chmod
755
/sharefs
挂载共享文件系统。使用命令 mount
mountpoint
,其中 mountpoint
是在 /etc/fstab
文件中指定的挂载点目录。
如示例所示,mount
命令生成一个警告。这是正常的并且可以忽略:
[sharefs-clientL][root@linux ~]#mount
/sharefs
Warning: loading SUNWqfs will taint the kernel: SMI license See http://www.tux.org/lkml/#export-tainted for information about tainted modules. Module SUNWqfs loaded with warnings
在此处停止。
要从共享文件系统中删除主机,只需要将其从服务器配置中删除,如下文所述(要完全取消配置主机,请卸载软件和配置文件):
以 root
用户身份登录到 Oracle HSM 元数据服务器。
在示例中,Oracle HSM 共享文件系统是 sharefs
,元数据服务器主机是 sharefs-mds
:
[sharefs-mds]root@solaris:~#
以 root
用户身份登录到每台客户机,并卸载共享文件系统。
请注意,潜在的元数据服务器本身也是客户机。在示例中,有三台客户机:sharefs-client1
、sharefs-client2
和潜在元数据服务器 sharefs-mds_alt
。对于每台客户机,使用 ssh
登录,卸载文件系统 sharefs
,然后关闭 ssh
会话:
[sharefs-mds]root@solaris:~#ssh
root@sharefs-client1
Password: [sharefs-client1]root@solaris:~#umount sharefs
[sharefs-client1]root@solaris:~#exit
[sharefs-mds]root@solaris:~#ssh
root@sharefs-client2
Password: [sharefs-client2]root@solaris:~#umount sharefs
[sharefs-client2]root@solaris:~#exit
[sharefs-mds]root@solaris:~#ssh
root@sharefs-mds_alt
Password: [sharefs-mds_alt]root@solaris:~#umount sharefs
root@solaris:~#exit
[sharefs-mds]root@solaris:~#
在元数据服务器上,卸载共享文件系统。
[sharefs-mds]root@solaris:~# umount sharefs
在元数据服务器上,将文件 /etc/opt/SUNWsamfs/hosts.
filesystem
重命名为 /etc/opt/SUNWsamfs/hosts.
filesystem
.bak
,其中 filesystem
是您要从中删除客户机主机的文件系统的名称。
请注意,下面的命令是作为单行输入的-使用反斜杠字符对换行符进行转义:
[sharefs-mds]root@solaris:~#mv
/etc/opt/SUNWsamfs/hosts.sharefs
\/etc/opt/SUNWsamfs/hosts.sharefs.bak
将当前的共享文件系统主机配置捕获到一个文件。在元数据服务器上,运行命令 samsharefs -R
filesystem
,将输出重定向到文件 /etc/opt/SUNWsamfs/hosts.
filesystem
,其中 filesystem
是您要向其添加客户机主机的文件系统的名称。
samsharefs
命令显示指定的 Oracle HSM 共享文件系统的主机配置。将输出重定向到文件会创建一个新的 hosts 文件。在示例中,从元数据服务器 sharefs-mds
运行命令:
[sharefs-mds]root@solaris:~#samsharefs
-R
sharedqfs1
>
//etc/opt/SUNWsamfs/hosts.sharedqfs1
在文本编辑器中打开新创建的 hosts 文件。
在示例中,使用 vi
编辑器。此处需要删除客户机 sharefs-client3
:
[sharefs-mds]root@solaris:~#vi
/etc/opt/SUNWsamfs/hosts.sharefs
# Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------------ ---------------------- ------- --- ---------- sharefs-mds 10.79.213.117 1 0 server sharefs-mds_alt 10.79.213.217 2 0 sharefs-client1 10.79.213.133 0 0 sharefs-client2 10.79.213.47 0 0 sharefs-client3 10.79.213.49 0 0
在 hosts 文件中,删除与您需要删除的客户机主机对应的行。然后保存文件并关闭编辑器。
在示例中,删除主机 sharefs-client3
的条目:
[sharefs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/hosts.sharefs
# Server On/ Additional
#Host Name Network Interface Ordinal Off Parameters
#------------------ ---------------------- ------- --- ----------
sharefs-mds 10.79.213.117 1 0 server
sharefs-mds_alt 10.79.213.217 2 0
sharefs-client1 10.79.213.133 0 0
sharefs-client2 10.79.213.47 0 0
:wq
[sharefs-mds]root@solaris:~#
使用修改后的 hosts 文件更新文件系统。在元数据服务器中,使用命令 samsharefs
-R
-u
filesystem
,其中 filesystem
是要从其中移除客户机主机的文件系统的名称。
[sharefs-mds]root@solaris:~#samsharefs
-u
sharefs
在元数据服务器主机上,挂载共享文件系统。
在示例中,/etc/vfstab
文件包含 sharefs
文件系统的条目,因此使用简单的挂载语法(有关完整信息,请参见 mount_samfs
手册页):
[sharefs-mds]root@solaris:~#mount
sharefs
在每台客户机主机上,挂载共享文件系统。
请注意,潜在的元数据服务器本身也是客户机。在示例中,有三台客户机:sharefs-client1
、sharefs-client2
和潜在元数据服务器 sharefs-mds_alt
。对于每台客户机,使用 ssh
登录,卸载文件系统 sharefs
,然后关闭 ssh
会话:
[sharefs-mds]root@solaris:~#ssh
root@sharefs-mds_alt
Password: [sharefs-mds_alt]root@solaris:~#mount
sharefs
sharefs-mds_alt]root@solaris:~#exit
[sharefs-mds]root@solaris:~#ssh
root@sharefs-client1
Password: [sharefs-client1]root@solaris:~#mount
sharefs
sharefs-client1]root@solaris:~#exit
[sharefs-mds]root@solaris:~#ssh
root@sharefs-client2
Password: [sharefs-client2]root@solaris:~#mount
sharefs
sharefs-client2]root@solaris:~#exit
[sharefs-mds]root@solaris:~#
在此处停止。
从 Oracle HSM 发行版 6.0 开始,在 Solaris 11 或更高版本上运行的共享归档文件系统的任何客户机都可以连接磁带机并代表文件系统执行磁带 I/O。将磁带 I/O 分布在这些数据移动器主机上可以大大降低服务器开销,提高文件系统性能,并且在扩展 Oracle HSM 实施时可以更灵活。当归档需求增加时,现在可以选择用更强大的系统替换 Oracle HSM 元数据服务器(垂直扩展)或者将负载分布在更多的客户机上(水平扩展)。
要为客户机配置分布式磁带 I/O,请执行如下操作:
将要用于分布式 I/O 的所有设备连接到客户机。
如果您尚未使用永久绑定连接磁带机,请执行该过程。然后返回此处。
以 root
用户身份登录到共享的归档文件系统的元数据服务器。
在示例中,主机名是 samsharefs-mds
:
[samsharefs-mds]root@solaris:~#
确保元数据服务器运行的是 Oracle HSM Solaris 11 或更高版本。
[samsharefs-mds]root@solaris:~#uname
-r
5.11 [samsharefs-mds]root@solaris:~#
确保用作数据移动器的所有客户机运行的是 Oracle HSM Solaris 11 或更高版本。
在示例中,打开每台客户机主机 samsharefs-client1
和 samsharefs-client2
的终端窗口,然后使用 ssh
远程登录。登录标题将显示 Solaris 版本:
[samsharefs-mds]root@solaris:~#ssh
root@samsharefs-client1
... Oracle Corporation SunOS 5.11 11.1 September 2013 [samsharefs-client1]root@solaris:~# [samsharefs-mds]root@solaris:~#ssh
root@samsharefs-client2
... Oracle Corporation SunOS 5.11 11.1 September 2013 [samsharefs-client2]root@solaris:~#
在元数据服务器上,在文本编辑器中打开文件 /etc/opt/SUNWsamfs/defaults.conf
,通过取消注释行 distio =
并将值设置为 on
来启用分布式 I/O。
默认情况下,distio
处于 off
(禁用)状态。
在示例中,在 vi
编辑器中打开文件并添加行:
[samsharefs-mds]root@solaris:~#vi
/etc/opt/SUNWsamfs/defaults.conf
# These are the defaults. To change the default behavior, uncomment the # appropriate line (remove the '#' character from the beginning of the line) # and change the value. ...distio
=
on
接下来,标识应当参与分布式 I/O 的设备类型。要将设备类型 dev
用于分布式 I/O,请将 dev
_distio
=
on
行添加到 defaults.conf
文件。要将设备类型 dev
从分布式 I/O 中排除,请添加 dev
_distio
=
off
行。保存文件并关闭编辑器。
默认情况下,允许 Oracle HSM T10000 磁带机和 LTO 磁带机参与分布式 I/O(ti_distio
=
on
且 li_distio
=
on
),并排除所有其他类型。在示例中,排除 LTO 驱动器:
[samsharefs-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/defaults.conf # These are the defaults. To change the default behavior, uncomment the # appropriate line (remove the '#' character from the beginning of the line) # and change the value. ... distio = onli_distio
=
off
:wq
[samsharefs-mds]root@solaris:~#
在用作数据移动器的每台客户机上,编辑 defaults.conf
文件,使其与服务器上的该文件匹配。
在示例中,使用 vi
编辑客户机 samsharefs-client1
上的 defaults.conf
文件,保存该文件,然后关闭编辑器:
[samsharefs-mds]root@solaris:~#ssh
root@samsharefs-client1
Password: [samsharefs-client1]root@solaris:~#vi
/etc/opt/SUNWsamfs/defaults.conf
# These are the defaults. To change the default behavior, uncomment the # appropriate line (remove the '#' character from the beginning of the line) # and change the value. ...distio
=
on
li_distio
=
off
:wq
[samsharefs-client1]root@solaris:~# [samsharefs-mds]root@solaris:~#
在用作数据移动器的每台客户机上,在文本编辑器中打开 /etc/opt/SUNWsamfs/mcf
文件。添加元数据服务器用于分布式磁带 I/O 的所有磁带设备。确保设备顺序和设备编号与其在元数据服务器上的 mcf
文件中的对应项完全相同。
在示例中,使用 vi
编辑客户机 samsharefs-client1
上的 mcf
文件:
[samsharefs-client1]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #----------------------- --------- --------- ---------- ------ ------------- samsharefs 800 ms samsharefs on ... # Archival storage for copies:/dev/rmt/60cbn
901
ti
on
/dev/rmt/61cbn
902
ti
on
/dev/rmt/62cbn
903
ti
on
/dev/rmt/63cbn
904
ti
on
如果在用作数据移动器的客户机上配置了元数据服务器上的 /etc/opt/SUNWsamfs/mcf
文件中列出的磁带库,请将磁带库系列集指定为用于分布式磁带 I/O 的磁带设备的系列集名称。保存文件。
在示例中,在主机上配置了磁带库,因此为磁带设备使用系列集名称 library1
:
[samsharefs-client1]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #----------------------- --------- --------- ---------- ------ ------------- samsharefs 800 ms samsharefs on ... # Archival storage for copies:/dev/scsi/changer/c1t0d5 900
rb
library1
on
/dev/rmt/60cbn 901 tilibrary1
on /dev/rmt/61cbn 902 tilibrary1
on /dev/rmt/62cbn 903 tilibrary1
on /dev/rmt/63cbn 904 tilibrary1
on:wq
[samsharefs-client1]root@solaris:~#
如果在用作数据移动器的客户机上未配置元数据服务器上的 /etc/opt/SUNWsamfs/mcf
文件中列出的磁带库,请使用连字符 (-
) 作为用于分布式磁带 I/O 的磁带设备的系列集名称。
在示例中,未在主机上配置磁带库:
[samsharefs-client2]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #----------------------- --------- --------- ---------- ------ ------------- samsharefs 800 ms samsharefs on ... # Archival storage for copies: /dev/rmt/60cbn 901 ti-
on /dev/rmt/61cbn 902 ti-
on /dev/rmt/62cbn 903 ti-
on /dev/rmt/63cbn 904 ti-
on:wq
[samsharefs-client2]root@solaris:~#
如果您需要为特定的归档集副本启用或禁用分布式磁带 I/O,请在文本编辑器中打开服务器的 /etc/opt/SUNWsamfs/archiver.cmd
文件并向 copy 指令添加 -distio
参数。设置 -distio
on
以启用或设置 -distio off
以禁用分布式 I/O。保存文件并关闭编辑器。
在示例中,使用 vi 编辑器为副本 1
关闭
分布式 I/O,为副本 2
打开
分布式 I/O:
[samsharefs-mds]root@solaris:~#vi
/etc/opt/SUNWsamfs/archiver.cmd
# archiver.cmd # Generated by config api Mon Nov 22 14:31:39 2013 ... # # Copy Parameters Directives params allsets -sort path -offline_copy stageahead allsets.1 -startage 10m -startsize 500M -startcount 500000-distio
off
allsets.2 -startage 24h -startsize 20G -startcount 500000-distio
on
:wq
[samsharefs-mds]root@solaris:~#
在各主机上,运行 sam-fsd
命令检查 mcf
文件中是否有错误并纠正发现的任何错误。
sam-fsd
是一个读取 Oracle HSM 配置文件的初始化命令。如果遇到错误,该命令将停止。在示例中,检查 Linux 客户机 sharefs-clientL
上的 mcf
文件:
[sharefs-clientL][root@linux ~]# sam-fsd
在服务器上,指示 Oracle HSM 软件读取修改后的配置文件,并相应地配置自身。使用命令 samd config
并纠正发现的任何错误。
在示例中,在服务器 sharefs-mds
上运行 samd config
命令:
[samsharefs-mds]root@solaris:~#samd
config
在此处停止。
如果添加的主机要用作潜在元数据服务器或分布式 I/O 数据移动器客户机,您必须使用永久绑定配置可移除介质设备。Solaris 操作系统按照启动时发现设备的顺序将驱动器连接到系统设备。该顺序可能会也可能不会反映其他文件系统主机发现设备的顺序或设备在磁带库中的物理安装顺序。因此,您需要使用与将设备绑定到其他主机相同的方式将其绑定到新主机,顺序与其在可移除介质库中的安装顺序相同。
下面的过程概述了必需的步骤(有关完整信息,请参见 devfsadm
和 devlinks
手册页以及适用于您的 Solaris 操作系统版本的管理文档):
如果您在磁带库中移动、添加或删除了驱动器,或者更换或重新配置了与归档 Oracle HSM 共享文件系统关联的磁带库,请更新永久绑定以反映对硬件配置的更改。
如果要将新的元数据服务器或数据移动器客户机添加到归档 Oracle HSM 共享文件系统,请 将新的文件系统主机永久绑定到可移除介质设备
以 root
用户身份登录到活动元数据服务器主机。
[sharefs-mds]root@solaris:~#
按确定驱动器在库中的安装顺序中所述创建一个新的驱动器映射文件。
在示例中,device-mappings.txt
文件类似于以下内容:
[sharefs-mds]root@solaris:~#vi
/root/device-mappings.txt
LIBRARY SOLARIS SOLARIS DEVICE LOGICAL PHYSICAL NUMBER DEVICE DEVICE ------- ------------- ----------------------------------------------------- 2 /dev/rmt/0cbn -> ../../devices/pci@8.../st@w500104f00093c438,0:cbn 1 /dev/rmt/1cbn -> ../../devices/pci@8.../st@w500104f0008120fe,0:cbn 3 /dev/rmt/2cbn -> ../../devices/pci@8.../st@w500104f000c086e1,0:cbn 4 /dev/rmt/3cbn -> ../../devices/pci@8.../st@w500104f000b6d98d,0:cbn
在文本编辑器中打开 /etc/devlink.tab
文件。
在示例中,使用 vi
编辑器:
[sharefs-mds]root@solaris:~#vi
/etc/devlink.tab
# Copyright (c) 1993, 2011, Oracle and/or its affiliates. All rights reserved. # This is the table used by devlinks # Each entry should have 2 fields; but may have 3. Fields are separated # by single tab ('\t') characters. ...
使用 device-mappings.txt
文件作为指南,向 /etc/devlink.tab
文件中添加一行,以将 Solaris 磁带设备树中的起始节点 rmt/
node-number
重新映射到磁带库中的第一个设备。该行的格式应当为 type=ddi_byte:tape;
addr=
device_address
,0;
rmt/
node-number
\M0
,其中 device_address
是设备的物理地址,node-number
是设备在 Solaris 设备树中的位置。选择一个足够大的节点编号以避免与 Solaris 自动配置的任何设备冲突(Solaris 从节点 0
开始)。
在示例中,记下磁带库中的第一个设备 1
的设备地址 w500104f0008120fe
,可以看到该设备当前连接到位于 rmt/1
的主机:
[sharefs-mds] vi /root/device-mappings.txt LIBRARY SOLARIS SOLARIS DEVICE LOGICAL PHYSICAL NUMBER DEVICE DEVICE ------- ------------- ----------------------------------------------------- 2 /dev/rmt/0cbn -> ../../devices/pci@8.../st@w500104f00093c438,0:cbn1
/dev/rmt/1
cbn -> ../../devices/pci@8.../st@w500104f0008120fe
,0:cbn 3 /dev/rmt/2cbn -> ../../devices/pci@8.../st@w500104f000c086e1,0:cbn 4 /dev/rmt/3cbn -> ../../devices/pci@8.../st@w500104f000b6d98d,0:cbn
因此,在 /etc/devlink.tab
中创建一行来将 rmt/60
重新映射到磁带库中编号为 1
的驱动器 w500104f0008120fe
:
[sharefs-mds]root@solaris:~#vi
/etc/devlink.tab
# Copyright (c) 1993, 2011, Oracle and/or its affiliates. All rights reserved. ... type=ddi_byte:tape;addr=w500104f0008120fe
,0;rmt/60
\M0:w
继续在 /etc/devlink.tab
文件中为分配用于 Oracle HSM 归档的每个磁带设备添加行,使元数据服务器上的设备树中的驱动器顺序与磁带库中的安装顺序匹配。保存文件并关闭编辑器。
在示例中,记下剩余的三个设备(位于 w500104f00093c438
的磁带库驱动器 2
、位于 w500104f000c086e1
的磁带库驱动器 3
和位于 w500104f000c086e1
的磁带库驱动器 4
)的顺序和地址:
[sharefs-mds]root@solaris:~#vi
/root/
device-mappings.txt
...2
/dev/rmt/0cbn -> ../../devices/pci@8\.../st@w500104f00093c438
,0:cbn 1 /dev/rmt/1cbn -> ../../devices/pci@8\.../st@w500104f0008120fe,0:cbn3
/dev/rmt/2cbn -> ../../devices/pci@8\.../st@w500104f000c086e1
,0:cbn4
/dev/rmt/3cbn -> ../../devices/pci@8\.../st@w500104f000b6d98d
,0:cbn
然后,将设备地址映射到接下来的三个 Solaris 设备节点,保持与磁带库中相同的顺序:
[sharefs-mds]root@solaris:~#vi
/etc/devlink.tab
... type=ddi_byte:tape;addr=w500104f0008120fe,0; rmt/60\M0 type=ddi_byte:tape;addr=w500104f00093c438
,0;rmt/61
\M0 type=ddi_byte:tape;addr=w500104f000c086e1
,0;rmt/62
\M0 type=ddi_byte:tape;addr=w500104f000b6d98d
,0;rmt/63
\M0:wq
[sharefs-mds]root@solaris:~#
删除 /dev/rmt
中指向磁带设备的所有现有链接。
[sharefs-mds]root@solaris:~# rm /dev/rmt/*
根据 /etc/devlink.tab
文件中的条目创建新的永久磁带设备链接。使用命令 devfsadm -c tape
。
devfsadm
命令每次运行时,都会使用 /etc/devlink.tab
文件指定的配置为该文件中指定的设备创建新的磁带设备链接。-c tape
选项将命令限制为仅为磁带类设备创建新链接:
[sharefs-mds]root@solaris:~# devfsadm -c tape
对共享文件系统配置中的每个潜在元数据服务器和数据移动器重复该操作。在每种情况下,将相同的行添加到 /etc/devlink.tab
文件中,删除 /dev/rmt
中的链接,然后运行 devfsadm -c tape
。
在示例中,使用 ssh
依次登录到每个主机,然后配置相同的四个逻辑设备 rmt/60\M0
、rmt/61\M0
、rmt/62\M0
和 rmt/63\M0
:
[sharefs-mds]root@solaris:~#ssh
root@sharefs-mds_alt
Password: [sharefs-mds_alt]root@solaris:~#vi /etc/devlink.tab
... type=ddi_byte:tape;addr=w500104f0008120fe,0; rmt/60\M0 type=ddi_byte:tape;addr=w500104f00093c438,0; rmt/61\M0 type=ddi_byte:tape;addr=w500104f000c086e1,0; rmt/62\M0 type=ddi_byte:tape;addr=w500104f000b6d98d,0; rmt/63\M0:wq
[sharefs-mds_alt]root@solaris:~#rm /dev/rmt/*
[sharefs-mds_alt]root@solaris:~#devfsadm -c tape
[sharefs-mds_alt]root@solaris:~#exit
sharefs-mds]root@solaris:~#ssh
root@sharefs-client1
Password: [sharefs-client1]root@solaris:~#vi /etc/devlink.tab
... type=ddi_byte:tape;addr=w500104f0008120fe,0; rmt/60\M0 type=ddi_byte:tape;addr=w500104f00093c438,0; rmt/61\M0 type=ddi_byte:tape;addr=w500104f000c086e1,0; rmt/62\M0 type=ddi_byte:tape;addr=w500104f000b6d98d,0; rmt/63\M0:wq
[sharefs-client1]root@solaris:~#rm /dev/rmt/*
[sharefs-client1]root@solaris:~#devfsadm -c tape
[sharefs-client1]root@solaris:~#exit
[sharefs-mds]root@solaris:~#
以 root
用户身份登录主机。
[sharefs-mds]root@solaris:~#
如果介质库中驱动器的物理顺序在配置现有的文件系统主机后发生了更改,请按确定驱动器在库中的安装顺序中所述创建新的映射文件。
在示例中,device-mappings.txt
文件类似于以下内容:
[sharefs-mds]root@solaris:~#vi
/root/device-mappings.txt
LIBRARY SOLARIS SOLARIS DEVICE LOGICAL PHYSICAL NUMBER DEVICE DEVICE ------- ------------- ----------------------------------------------------- 2 /dev/rmt/0cbn -> ../../devices/pci@8.../st@w500104f00093c438,0:cbn 1 /dev/rmt/1cbn -> ../../devices/pci@8.../st@w500104f0008120fe,0:cbn 3 /dev/rmt/2cbn -> ../../devices/pci@8.../st@w500104f000c086e1,0:cbn 4 /dev/rmt/3cbn -> ../../devices/pci@8.../st@w500104f000b6d98d,0:cbn
在文本编辑器中打开 /etc/devlink.tab
文件。
在示例中,使用 vi
编辑器:
[sharefs-mds]root@solaris:~#vi
/etc/devlink.tab
# Copyright (c) 1993, 2011, Oracle and/or its affiliates. All rights reserved. # This is the table used by devlinks # Each entry should have 2 fields; but may have 3. Fields are separated # by single tab ('\t') characters. ...
使用 device-mappings.txt
文件作为指南,将 Solaris 磁带设备树中的起始节点 rmt/
node-number
重新映射到磁带库中的第一个驱动器。向 /etc/devlink.tab
文件添加一行,格式为 type=ddi_byte:tape;
addr=
device_address
,0;
rmt/
node-number
\M0
,其中:device_address
是设备的物理地址,node-number
是设备在 Solaris 设备树中的位置。选择一个足够大的节点编号以避免与 Solaris 自动配置的任何设备冲突(Solaris 从节点 0
开始)。
在示例中,记下磁带库中的第一个设备 1
的设备地址 w500104f0008120fe
,可以看到该设备当前连接到位于 rmt/1
的主机:
[sharefs-mds] vi /root/device-mappings.txt LIBRARY SOLARIS SOLARIS DEVICE LOGICAL PHYSICAL NUMBER DEVICE DEVICE ------- ------------- ----------------------------------------------------- 2 /dev/rmt/0cbn -> ../../devices/pci@8.../st@w500104f00093c438,0:cbn1
/dev/rmt/1
cbn -> ../../devices/pci@8.../st@w500104f0008120fe
,0:cbn 3 /dev/rmt/2cbn -> ../../devices/pci@8.../st@w500104f000c086e1,0:cbn 4 /dev/rmt/3cbn -> ../../devices/pci@8.../st@w500104f000b6d98d,0:cbn
因此,在 /etc/devlink.tab
中创建一行来将 rmt/60
重新映射到磁带库中编号为 1
的驱动器 w500104f0008120fe
:
[sharefs-mds]root@solaris:~#vi
/etc/devlink.tab
# Copyright (c) 1993, 2011, Oracle and/or its affiliates. All rights reserved. ... type=ddi_byte:tape;addr=w500104f0008120fe
,0;rmt/60
\M0:w
继续在 /etc/devlink.tab
文件中为分配用于 Oracle HSM 归档的每个磁带设备添加行,使元数据服务器上的设备树中的驱动器顺序与磁带库中的安装顺序匹配。保存文件。
在示例中,记下剩余的三个设备(位于 w500104f00093c438
的磁带库驱动器 2
、位于 w500104f000c086e1
的磁带库驱动器 3
和位于 w500104f000c086e1
的磁带库驱动器 4
)的顺序和地址:
[sharefs-mds]root@solaris:~#vi
/root/
device-mappings.txt
...2
/dev/rmt/0cbn -> ../../devices/pci@8.../st@w500104f00093c438
,0:cbn 1 /dev/rmt/1cbn -> ../../devices/pci@8.../st@w500104f0008120fe,0:cbn3
/dev/rmt/2cbn -> ../../devices/pci@8.../st@w500104f000c086e1
,0:cbn4
/dev/rmt/3cbn -> ../../devices/pci@8.../st@w500104f000b6d98d
,0:cbn
然后,将设备地址映射到接下来的三个 Solaris 设备节点,保持与磁带库中相同的顺序:
[sharefs-mds]root@solaris:~#vi
/etc/devlink.tab
... type=ddi_byte:tape;addr=w500104f0008120fe,0; rmt/60\M0 type=ddi_byte:tape;addr=w500104f00093c438
,0;rmt/61
\M0 type=ddi_byte:tape;addr=w500104f000c086e1
,0;rmt/62
\M0 type=ddi_byte:tape;addr=w500104f000b6d98d
,0;rmt/63
\M0:wq
[sharefs-mds]root@solaris:~#
删除 /dev/rmt
中指向磁带设备的所有现有链接。
[sharefs-mds]root@solaris:~# rm /dev/rmt/*
根据 /etc/devlink.tab
文件中的条目创建新的永久磁带设备链接。使用命令 devfsadm -c tape
。
devfsadm
命令每次运行时,都会使用 /etc/devlink.tab
文件指定的配置为该文件中指定的设备创建新的磁带设备链接。-c tape
选项将命令限制为仅为磁带类设备创建新链接:
[sharefs-mds]root@solaris:~# devfsadm -c tape
在共享文件系统配置中的每台潜在元数据服务器和数据移动器上,向 /etc/devlink.tab
文件中添加相同的行,删除 /dev/rmt
中的链接,然后运行 devfsadm -c tape
。
在示例中,使用 ssh
登录到潜在元数据服务器主机 sharefs-mds_alt
和客户机主机 sharefs-client1
。然后配置相同的四个逻辑设备 rmt/60\M0
、rmt/61\M0
、rmt/62\M0
和 rmt/63\M0
,在每台客户机上:
[sharefs-mds]root@solaris:~#ssh
root@sharefs-mds_alt
Password: [sharefs-mds_alt]root@solaris:~#vi
/etc/devlink.tab
...type=ddi_byte:tape;addr=
w500104f0008120fe
,0;
rmt/60
\M0
type=ddi_byte:tape;addr=
w500104f00093c438
,0;
rmt/61
\M0
type=ddi_byte:tape;addr=
w500104f000c086e1
,0;
rmt/62
\M0
type=ddi_byte:tape;addr=
w500104f000b6d98d
,0;
rmt/63
\M0
:wq
[sharefs-mds_alt]root@solaris:~#rm
/dev/rmt/*
[sharefs-mds_alt]root@solaris:~#devfsadm
-c
tape
[sharefs-mds_alt]root@solaris:~#exit
[sharefs-mds]root@solaris:~#ssh
root@sharefs-client1
Password: [sharefs-client1]root@solaris:~#vi
/etc/devlink.tab
...type=ddi_byte:tape;addr=
w500104f0008120fe
,0;
rmt/60
\M0
type=ddi_byte:tape;addr=
w500104f00093c438
,0;
rmt/61
\M0
type=ddi_byte:tape;addr=
w500104f000c086e1
,0;
rmt/62
\M0
type=ddi_byte:tape;addr=
w500104f000b6d98d
,0;
rmt/63
\M0
:wq
[sharefs-client1]root@solaris:~#rm
/dev/rmt/*
[sharefs-client1]root@solaris:~#devfsadm
-c
tape
[sharefs-client1]root@solaris:~#exit
[sharefs-mds]root@solaris:~#
本节中的过程将文件系统的元数据服务从当前主机(活动元数据服务器)移动到备用主机(潜在元数据服务器)。使用哪个过程取决于您要替换的服务器主机的运行状况:
此过程允许您将元数据服务从已停止工作的活动元数据服务器主机移走。并激活潜在元数据服务器,即使文件系统仍处于已挂载状态。执行如下操作:
注意: 在已停止、已禁用有故障的元数据服务器或已断开其连接之前,不要激活潜在元数据服务器!要在文件系统处于已挂载状态且活动元数据服务器停机时激活潜在服务器,需要调用带 |
如果活动元数据服务器有故障,请确保在您执行任何其他操作之前它无法访问元数据设备。关闭受影响主机的电源,或者将有故障的主机断开与元数据设备的连接。
至少等到最大租约到期,以便所有客户机的读取、写入和附加租约都到期。
以 root
用户身份登录到潜在元数据服务器。
在示例中,登录到潜在元数据服务器 sharefs-mds_alt
:
[sharefs-mds_alt]root@solaris:~#
激活潜在元数据服务器。从潜在元数据服务器上发出命令 samsharefs -R
-s
server
file-system
,其中 server
是潜在元数据服务器的主机名,file-system
是 Oracle HSM 共享文件系统的名称。
在示例中,潜在元数据服务器是 sharefs-mds_alt
,文件系统名称是 sharefs
:
[sharefs-mds_alt]root@solaris:~#samsharefs
-R
-s
sharefs-mds_alt
sharefs
如果需要检查文件系统的完整性并修复可能的问题,现在请使用卸载共享文件系统过程卸载文件系统。
如果已卸载了文件系统,请执行文件系统检查。使用命令 samfsck -F
file-system
,其中 -F
指定修复错误,file-system
是文件系统的名称。
在示例中,检查并修复名为 sharefs
的文件系统:
[sharefs-mds_alt]root@solaris:~#samfsck
-F
sharefs
在此处停止。
必要时,您可以将元数据服务从运行正常的活动元数据服务器主机移走,并将其移到新激活的潜在元数据服务器上。例如,在升级或更换原始服务器主机或其某些组件时,您可以将元数据服务转移到备用主机以使文件系统保持可用。执行如下操作:
以 root
用户身份登录到活动元数据服务器和潜在元数据服务器。
在示例中,登录到活动元数据服务器 sharefs-mds
。然后,在另一个终端窗口中,使用安全 shell (secure shell, ssh
) 登录到潜在元数据服务器 sharefs-mds_alt
:
[sharefs-mds]root@solaris:~#
[sharefs-mds]root@solaris:~# ssh root@sharefs-mds_alt
Password:
[sharefs-mds-alt]root@solaris:~#
如果活动元数据服务器挂载了 Oracle HSM 归档文件系统,请完成处于活动状态的归档和回写作业并停止任何新活动,然后再继续操作。请参见使归档和回写进程闲置。
如果活动元数据服务器挂载了 Oracle HSM 归档文件系统,请使可移除介质驱动器闲置并停止磁带库控制守护进程。请参见停止归档和回写进程。
如果您使用 crontab
条目来运行回收程序进程,请删除该条目并确保回收程序当前未在运行。
激活潜在元数据服务器。从潜在元数据服务器上发出命令 samsharefs
-s
server
file-system
,其中 server
是潜在元数据服务器的主机名,file-system
是 Oracle HSM 共享文件系统的名称。
在示例中,潜在元数据服务器是 sharefs-mds_alt
,文件系统名称是 sharefs
:
[sharefs-mds_alt]root@solaris:~#samsharefs
-s
sharefs-mds_alt
sharefs
在潜在元数据服务器上加载配置文件并启动 Oracle HSM 进程。使用命令 samd config
。
对于归档共享文件系统,samd config
命令会重新启动归档进程和磁带库控制守护进程。但是,对于正在等待文件从磁带回写到主磁盘高速缓存的共享文件系统客户机,必须重新发出回写请求。
如果您仍然需要使用 crontab
条目来运行回收程序进程,请恢复该条目。
在此处停止。
要将非共享文件系统转换为共享文件系统,请执行以下任务:
在每台元数据服务器上,您必须创建一个 hosts 文件,在其中列出共享文件系统的服务器和客户机的网络地址信息。hosts 文件与 mcf
文件一起存储在 /etc/opt/SUNWsamfs/
目录中。在共享文件系统的初始创建过程中,sammkfs -S
命令使用该文件中存储的设置配置共享。因此,现在请使用下面的过程创建该文件。
收集将作为客户机共享文件系统的主机的网络主机名和 IP 地址。
在下面的示例中,客户机 samqfs1-mds_alt
(潜在元数据服务器)、samqfs1-client1
和 samqfs1-client2
将共享 samqfs1
文件系统。
以 root
用户身份登录到元数据服务器。
在示例中,登录到主机 samqfs1-mds
:
[samqfs1-mds]root@solaris:~#
使用文本编辑器在元数据服务器上创建文件 /etc/opt/SUNWsamfs/hosts.
family-set-name
,将 family-set-name
替换为您打算共享的文件系统的系列集名称。
在示例中,使用 vi
文本编辑器创建文件 hosts.samqfs1
。此处添加了一些可选的标题,使每个行以井号 (#
) 开头,表示是注释:
[samqfs1-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/hosts.samqfs1
# /etc/opt/SUNWsamfs/hosts.samqfs1
# Server On/ Additional
#Host Name Network Interface Ordinal Off Parameters
#------------------ ---------------------- ------- --- ----------
在第一列中输入元数据服务器的主机名,在第二列中输入相应的 IP 地址或域名。用空格字符分隔各列。
在示例中,输入元数据服务器的主机名和 IP 地址,分别为 samqfs1-mds
和 10.79.213.117
:
[samqfs1-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/hosts.samqfs1 # /etc/opt/SUNWsamfs/hosts.samqfs1 # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------------ ---------------------- ------- --- ----------samqfs1-mds
10.79.213.117
添加第三列,用空格字符将其与网络地址隔开。在此列中,输入服务器的序号(1
表示活动元数据服务器、2
表示第一台潜在元数据服务器,依此类推)。
在此示例中,只有一台元数据服务器,因此输入 1
:
[samqfs1-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/hosts.samqfs1
# /etc/opt/SUNWsamfs/hosts.samqfs1
# Server On/ Additional
#Host Name Network Interface Ordinal Off Parameters
#------------------ ---------------------- ------- --- ----------
samqfs1-mds 10.79.213.117 1
添加第四列,用空格字符将其与服务器序号隔开。在此列中,输入 0
(零)。
第四列中的值为 0
、-
(连字符)或空表示该主机处于 on
状态-配置为对共享文件系统有访问权限。1
(数字一)表示该主机处于 off
状态-配置为对文件系统没有访问权限(有关在管理共享文件系统时使用这些值的信息,请参见 samsamqfs1
手册页)。
[samqfs1-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/hosts.samqfs1
# /etc/opt/SUNWsamfs/hosts.samqfs1
# Server On/ Additional
#Host Name Network Interface Ordinal Off Parameters
#------------------ ---------------------- ------- --- ----------
samqfs1-mds 10.79.213.117 1 0
添加第五列,用空格字符将其与开启/关闭状态列隔开。在此列中,输入关键字 server
以指示该主机是当前处于活动状态的元数据服务器:
[samqfs1-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/hosts.samqfs1
# /etc/opt/SUNWsamfs/hosts.samqfs1
# Server On/ Additional
#Host Name Network Interface Ordinal Off Parameters
#------------------ ---------------------- ------- --- ----------
samqfs1-mds 10.79.213.117 1 0 server
如果您计划包括一台或多台主机作为潜在元数据服务器,请为每台主机创建一个条目。每次递增服务器序号。但不要包括 server
关键字(每个文件系统上只能有一个活动元数据服务器)。
在示例中,主机 samqfs1-mds_alt
是服务器序号为 2
的一台潜在元数据服务器。除非将其激活为元数据服务器,否则它将作为客户机:
[samqfs1-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/hosts.samqfs1
# /etc/opt/SUNWsamfs/hosts.samqfs1
# Server On/ Additional
#Host Name Network Interface Ordinal Off Parameters
#------------------ ---------------------- ------- --- ----------
samqfs1-mds 10.79.213.117 1 0 server
samqfs1-mds_alt 10.79.213.217 2
0
为每台客户机主机添加一行,每行中的服务器序号值都为 0
。
服务器序号为 0
表示该主机是一台客户机。在示例中,添加两台客户机 samqfs1-client1
和 samqfs1-client2
。
[samqfs1-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/hosts.samqfs1 # /etc/opt/SUNWsamfs/hosts.samqfs1 # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------------ ---------------------- ------- --- ---------- samqfs1-mds 10.79.213.17 1 0 server samqfs1-mds_alt 10.79.213.7 2 0samqfs1-client1
10.79.213.33
0
0
samqfs1-client2
10.79.213.47
0
0
保存 /etc/opt/SUNWsamfs/hosts.
family-set-name
文件并退出编辑器。
在示例中,保存对 /etc/opt/SUNWsamfs/hosts.samqfs1
的更改并退出 vi
编辑器:
[samqfs1-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/hosts.samqfs1
# /etc/opt/SUNWsamfs/hosts.samqfs1
# Server On/ Additional
#Host Name Network Interface Ordinal Off Parameters
#------------------ ---------------------- ------- --- ----------
samqfs1-mds 10.79.213.117 1 0 server
samqfs1-mds 10.79.213.117 1 0 server
samqfs1-mds_alt 10.79.213.217 2 0
samqfs1-client1 10.79.213.133 0 0
samqfs1-client2 10.79.213.147 0 0
:wq
[samqfs1-mds]root@solaris:~#
在共享文件系统配置中包括的所有潜在元数据服务器上放置 /etc/opt/SUNWsamfs/hosts.
family-set-name
新文件的一个副本。
在示例中,在主机 samqfs1-mds_alt
上放置一个副本:
[samqfs1-mds]root@solaris:~#sftp
root@samqfs1-mds_alt
Password: sftp>cd /etc/opt/SUNWsamfs/
sftp>put /etc/opt/SUNWsamfs/hosts.samqfs1
sftp>bye
[samqfs1-mds]root@solaris:~#
现在,共享非共享的文件系统并配置客户机。
以 root
用户身份登录到元数据服务器。
在示例中,登录到主机 samqfs1-mds
:
[samqfs1-mds]root@solaris:~#
如果您没有系统文件和配置文件的当前备份副本,现在请创建副本。请参见备份 Oracle HSM 配置。
如果您没有当前的文件系统恢复点文件和归档日志的最新副本,现在请创建它们。请参见备份文件系统。
如果您在初始配置过程中为文件系统设置了自动化备份流程,可能不需要额外的备份。
如果您在转换归档文件系统,请完成处于活动状态的归档和回写作业并停止任何新活动,然后再继续操作。请参见使归档和回写进程闲置 和停止归档和回写进程。
卸载文件系统。使用命令 umount
family-set-name
,其中 family-set-name
是您打算共享的文件系统的系列集名称。
有关挂载和卸载 Oracle HSM 文件系统的更多信息,请参见 mount_samfs
手册页。在示例中,卸载 samqfs1
文件系统:
[samqfs1-mds]root@solaris:~#umount
samqfs1
[samqfs1-mds]root@solaris:~#
将文件系统转换为 Oracle HSM 共享文件系统。使用命令 samfsck
-
S
-
F
file-system-name
,其中 file-system-name
是文件系统的系列集名称。
在示例中,转换名为 samqfs1
的文件系统:
[samqfs1-mds]root@solaris:~#samfsck
-S
-F
samqfs1
在文本编辑器中打开 /etc/opt/SUNWsamfs/mcf
文件,并找到该文件系统对应的行。
在示例中,使用 vi
编辑器:
[samqfs1-mds]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- ------- ------ -----------------samqfs1
200
ma
samqfs1
on
/dev/dsk/c0t0d0s0 201 mm samqfs1 on /dev/dsk/c0t3d0s0 202 md samqfs1 on /dev/dsk/c0t3d0s1 203 md samqfs1 on
在 mcf
文件中,向文件系统条目的最后一列中的 "Additional Parameters" 字段中添加 shared
参数。然后保存文件并关闭编辑器。
[samqfs1-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- ------- ------ -----------------samqfs1
200
ma
samqfs1
on
shared
/dev/dsk/c0t0d0s0 201 mm samqfs1 on /dev/dsk/c0t3d0s0 202 md samqfs1 on /dev/dsk/c0t3d0s1 203 md samqfs1 on:wq
[samqfs1-mds]root@solaris:~#
在文本编辑器中打开 /etc/vfstab
文件,并找到该文件系统对应的行。
在示例中,使用 vi
编辑器:
[samqfs1-mds]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- -------- ------ ---- ------- ------------------------- /devices - /devices devfs - no - /proc - /proc proc - no - ...samqfs1
-
/samqfs1
samfs
-
yes
在 /etc/vfstab
文件中,向文件系统条目的最后一列中的 "Mount Options" 字段中添加 shared
挂载参数。然后保存文件并关闭编辑器。
[samqfs1-mds]root@solaris:~# vi /etc/vfstab #File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- -------- ------ ---- ------- ------------------------- /devices - /devices devfs - no - /proc - /proc proc - no - ...samqfs1
-
/samqfs1
samfs
-
yes
shared
:wq
[samqfs1-mds]root@solaris:~#
初始化共享文件系统和主机配置。使用命令 samsharefs -u -R
family-set-name
,其中 family-set-name
是文件系统的系列集名称。
[samqfs1-mds]root@solaris:~# samsharefs -u -R samqfs1
指示 Oracle HSM 软件重新读取 mcf
文件并相应地重新配置自身:
[samqfs1-mds]root@solaris:~# samd config
在元数据服务器上挂载共享文件系统。
[samqfs1-mds]root@solaris:~# mount /samqfs1
如果您的主机配置了多个网络接口,请参见使用本地 Hosts 文件来路由网络通信。
使用配置额外的文件系统客户机中概述的过程向刚刚共享的文件系统添加必需的客户机。
单个主机不需要本地 hosts 文件。元数据服务器上文件系统的全局文件标识了所有文件系统主机的活动元数据服务器以及活动元数据服务器和潜在元数据服务器的网络接口(请参见在活动元数据服务器和潜在元数据服务器上创建 Hosts 文件)。但是,当您需要对具有多个网络接口的文件系统主机之间的网络通信路由进行选择时,本地 hosts 文件会很有用。
每个文件系统主机都会识别其他主机的网络接口,方法是先检查元数据服务器上的 /etc/opt/SUNWsamfs/hosts.
family-set-name
文件,其中 family-set-name
是 /etc/opt/SUNWsamfs/mcf
文件中指定的文件系统系列的名称。然后,主机检查自己的特定 /etc/opt/SUNWsamfs/hosts.
family-set-name
.local
文件。如果没有本地 hosts 文件,则主机将按照全局 hosts 文件中指定的顺序使用该全局文件中指定的接口地址。但是,如果存在本地 hosts 文件,则主机会将其与全局文件进行比较并按照本地文件中指定的顺序仅使用两个文件中同时列出的那些接口。通过在每个文件中使用不同的地址,您可以控制不同主机使用的接口。
要配置本地 hosts 文件,请使用下面概述的过程:
在元数据服务器主机和每台潜在元数据服务器主机上,创建全局 hosts 文件 /etc/opt/SUNWsamfs/hosts.
family-set-name
的一个副本,如在活动元数据服务器和潜在元数据服务器上创建 Hosts 文件中所述。
对于本节中的示例,共享文件系统 sharefs2
包括一台活动元数据服务器 sharefs2-mds
和一台潜在元数据服务器 sharefs2-mds_alt
,每台都具有两个网络接口。还有两台客户机 sharefs2-client1
和 sharefs2-client2
。
此处需要活动元数据服务器和潜在元数据服务器彼此之间通过专用网络地址进行通信,与客户机的通信通过域名服务 (Domain Name Service, DNS) 可以解析为公共局域网 (local area network, LAN) 地址的主机名进行。因此,文件系统的全局 hosts 文件 /etc/opt/SUNWsamfs/hosts.sharefs2
在活动服务器和潜在服务器条目的 Network Interface
字段中指定了一个专用网络地址,并为每台客户机的接口地址指定了一个主机名:该文件如下所示:
# /etc/opt/SUNWsamfs/hosts.sharefs2 # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------------ ---------------------- ------- --- ---------- sharefs2-mds 172.16.0.129 1 0 server sharefs2-mds_alt 172.16.0.130 2 0 sharefs2-client1 sharefs2-client1 0 0 sharefs2-client2 sharefs2-client2 0 0
使用路径和文件名 /etc/opt/SUNWsamfs/hosts.
family-set-name
.local
在每台活动元数据服务器和潜在元数据服务器上创建一个本地 hosts 文件,其中 family-set-name
是为 /etc/opt/SUNWsamfs/mcf
文件中的共享文件系统指定的名称。请仅包括您希望活动服务器和潜在服务器使用的网络的接口。
在示例中,需要活动元数据服务器和潜在元数据服务器彼此之间通过专用网络进行通信,因此,每台服务器的本地 hosts 文件 hosts.sharefs2.local
针对活动服务器和潜在服务器仅列出了专用地址:
[sharefs2-mds]root@solaris:~#vi
/etc/opt/SUNWsamfs/hosts.sharefs2.local
# /etc/opt/SUNWsamfs/hosts.sharefs2 # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------------ ---------------------- ------- --- ----------sharefs2-mds
172.16.0.129
1
0
server
sharefs2-mds_alt
172.16.0.130
2
0
:wq
[sharefs2-mds]root@solaris:~#ssh
root@sharefs2-mds_alt
Password:
[sharefs2-mds_alt]root@solaris:~#vi
/etc/opt/SUNWsamfs/
hosts.sharefs2.local
# /etc/opt/SUNWsamfs/hosts.sharefs2 # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------------ ---------------------- ------- --- ----------sharefs2-mds
172.16.0.129
1
0
server
sharefs2-mds_alt
172.16.0.130
2
0
:wq
[sharefs2-mds_alt]root@solaris:~#exit
[sharefs2-mds]root@solaris:~#
使用路径和文件名 /etc/opt/SUNWsamfs/hosts.
family-set-name
.local
在每个客户机上创建一个本地 hosts 文件,其中 family-set-name
是为 /etc/opt/SUNWsamfs/mcf
文件中的共享文件系统指定的名称。请仅包括您希望客户机使用的网络的接口。
在示例中,需要客户机仅通过公共网络与服务器进行通信。因此,该文件仅包括活动元数据服务器和潜在元数据服务器的主机名:
[sharefs2-mds]root@solaris:~#ssh
root@sharefs2-client1
Password: [sharefs2-client1]root@solaris:~#vi
/etc/opt/SUNWsamfs/hosts.sharefs2.local
# /etc/opt/SUNWsamfs/hosts.sharefs2 # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------------ ---------------------- ------- --- ----------sharefs2-mds
sharefs2-mds
1
0
server
sharefs2-mds_alt
sharefs2-mds_alt
2
0
:wq
[sharefs2-client1]root@solaris:~#exit
[sharefs2-mds]root@solaris:~#ssh
root@sharefs2-client2
Password:
[sharefs2-client2]root@solaris:~#vi /etc/opt/SUNWsamfs/hosts.sharefs2.local
# /etc/opt/SUNWsamfs/hosts.sharefs2 # Server On/ Additional #Host Name Network Interface Ordinal Off Parameters #------------------ ---------------------- ------- --- ----------sharefs2-mds
sharefs2-mds
1
0
server
sharefs2-mds_alt
sharefs2-mds_alt
2
0
:wq
[sharefs2-client2]root@solaris:~#exit
[sharefs2-mds]root@solaris:~#
如果您在完成服务器配置的同时启动了此过程,请添加客户机。转至配置额外的文件系统客户机。
当需要取消文件系统共享时,请执行如下操作:
以 root
用户身份登录到元数据服务器。
在示例中,登录到主机 samqfs1-mds
:
[samqfs1-mds]root@solaris:~#
使用从文件系统 Hosts 文件中删除主机过程从元数据服务器配置中删除客户机。
如果您没有系统文件和配置文件的当前备份副本,现在请创建副本。请参见备份 Oracle HSM 配置。
如果您没有当前的文件系统恢复点文件和归档日志的最新副本,现在请创建它们。请参见备份文件系统。
如果您在初始配置过程中为文件系统设置了自动化备份流程,可能不需要额外的备份。
如果您在转换归档文件系统,请完成处于活动状态的归档和回写作业并停止任何新活动,然后再继续操作。请参见使归档和回写进程闲置 和停止归档和回写进程。
卸载文件系统。使用命令 umount
family-set-name
,其中 family-set-name
是 /etc/opt/SUNWsamfs/mcf
文件中共享文件系统的系列集名称。
有关挂载和卸载 Oracle HSM 文件系统的更多信息,请参见 mount_samfs
手册页。在示例中,卸载 samqfs1
文件系统:
[samqfs1-mds]root@solaris:~# umount samqfs1
将 Oracle HSM 共享文件系统转换为非共享文件系统。使用命令 samfsck -F -U
file-system-name
,其中 file-system-name
是为 /etc/opt/SUNWsamfs/mcf
文件中共享文件系统指定的名称。
在示例中,转换名为 samqfs1
的文件系统:
[samqfs1-mds]root@solaris:~# samfsck -F -U samqfs1
在文本编辑器中打开 /etc/opt/SUNWsamfs/mcf
文件,并找到该文件系统对应的行。
在示例中,使用 vi
编辑器:
[samqfs1-mds]root@solaris:~#vi
/etc/opt/SUNWsamfs/mcf
# Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- ------- ------ -----------------samqfs1
200
ma
samqfs1
on
shared
/dev/dsk/c0t0d0s0 201 mm samqfs1 on /dev/dsk/c0t3d0s0 202 md samqfs1 on /dev/dsk/c0t3d0s1 203 md samqfs1 on
在 mcf
文件中,从文件系统条目的最后一列的 "Additional Parameters" 字段中删除 shared
参数。然后保存文件并关闭编辑器。
[samqfs1-mds]root@solaris:~# vi /etc/opt/SUNWsamfs/mcf # Equipment Equipment Equipment Family Device Additional # Identifier Ordinal Type Set State Parameters #------------------ --------- --------- ------- ------ -----------------samqfs1
200
ma
samqfs1
on
/dev/dsk/c0t0d0s0 201 mm samqfs1 on /dev/dsk/c0t3d0s0 202 md samqfs1 on /dev/dsk/c0t3d0s1 203 md samqfs1 on:wq
[samqfs1-mds]root@solaris:~#
在文本编辑器中打开 /etc/vfstab
文件,并找到该文件系统对应的行。
在示例中,使用 vi
编辑器:
[samqfs1-mds]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- -------- ------ ---- ------- ------------------------- /devices - /devices devfs - no - /proc - /proc proc - no - ...samqfs1
-
/samqfs1
samfs
-
yes
shared
在 /etc/vfstab
文件中,从文件系统条目的最后一列中的 "Mount Options" 字段中删除 shared
挂载选项。然后保存文件并关闭编辑器。
在示例中,使用 vi
编辑器:
[samqfs1-mds]root@solaris:~#vi
/etc/vfstab
#File #Device Device Mount System fsck Mount Mount #to Mount to fsck Point Type Pass at Boot Options #-------- ------- -------- ------ ---- ------- ------------------------- /devices - /devices devfs - no - /proc - /proc proc - no - ...samqfs1 - /samqfs1 samfs - yes
:wq
[samqfs1-mds]root@solaris:~#
删除文件 /etc/opt/SUNWsamfs/hosts.
file-system-name
。
指示 Oracle HSM 软件重新读取 mcf
文件并相应地重新配置自身:
[samqfs1-mds]root@solaris:~# samd config
挂载文件系统。
[samqfs1]root@solaris:~# mount /samqfs1
在此处停止。