ボリュームのブロック型特殊ファイル /dev/sfdsk/クラス名/dsk/ボリューム名 は、ボリューム作成時に作成され、ノードを再起動するたびに再作成されます。
ボリュームのブロック型特殊ファイルのアクセス権は、以下のように設定されます。
所有者:root
グループ:root
モード:0600
アクセス権を変更する場合は、以下のように設定してください。
RHEL6以前の場合
変更するコマンドを記述した起動スクリプトを作成し、GDS のすべての起動スクリプト /etc/*.d/*sfdsk* よりも後に実行されるように設定します。
参照
GDS の起動スクリプトについては、「F.2 起動スクリプト一覧」を参照してください。
RHEL7以降の場合
変更するコマンドを記述した起動スクリプトと、そのスクリプトを実行するユニットファイルを作成し、GDS のすべてのサービス(fjsvsdx*.service)よりも後に実行されるように設定します。
参照
GDS のサービスについては、「G.2 systemd サービス一覧」を参照してください。
アクセス権を変更する起動スクリプトの記述内容
以下に、例を示します。
#!/bin/bash # chkconfig: 2345 54 61 ・・・(1) # description: chgperm - change GDS volume permission ・・・(2) . /etc/init.d/functions start() { /bin/chown gdsusr:gdsgrp /dev/sfdsk/Class1/dsk/Volume1 ・・・(3) /bin/chmod 0644 /dev/sfdsk/Class1/dsk/Volume1 ・・・(3) return } stop() { return } case "$1" in start) start ;; stop) stop ;; restart) stop start ;; *) echo "Usage: /etc/init.d/chgperm {start|stop|restart}" ・・・(4) ;; esac exit 0 |
RHEL5 以降の場合、GDS をインストールすると、この起動スクリプトのサンプルが /etc/opt/FJSVsdx/etc/chgperm.sample にインストールされます。このサンプルは、コピーを作成し、環境に合わせて編集してから使用してください。
記述内容の説明:
RHEL6以前の場合に必要な行です。
"# chkconfig:" の右側には、この起動スクリプトが起動されるランレベル、起動優先度、停止優先度を記述します。
GDS の起動スクリプトよりも後に実行する必要があるため、起動優先度は 54 以上にしてください。
RHEL7以降の場合、この行は記述しないでください。
"description:" の右側には、この起動スクリプトの説明文を記述します。
ノード起動時に実行するコマンドを記述します。
この例では、クラス Class1 のボリューム Volume1 のブロック型特殊ファイルの、所有者を gdsusr、グループを gdsgrp、モードを 0644 に変更する場合のコマンドを記述しています。
この起動スクリプトの使用方法を表示する処理を記述します。
ここでは、起動スクリプト名が chgperm である場合の例を記述しています。
参照
(1) (2) の記述内容の詳細は、chkconfig(8) を参照してください。
ファイルのアクセス権を変更するコマンドの詳細は、chown(1) および chmod(1) を参照してください。
ユニットファイルの記述内容(RHEL7以降)
以下に、例を示します。
[Unit] Description=change GDS volume permission ・・・(1) After=fjsvsdxmon.service ・・・(2) [Service] ExecStart=/bin/bash -c '/home/bin/chgperm start' ・・・(3) Type=oneshot [Install] WantedBy=multi-user.target |
記述内容の説明:
Description= の右側には、このユニットファイルの説明文を記述します。
GDSのサービス"fjsvsdxmon.service"よりも後に起動するように記述します。
アクセス権を変更する起動スクリプト(この例では/home/bin/chgperm)を記述します。
アクセス権を変更する起動スクリプトの設定方法
(a) RHEL6以前の場合
以下の手順で設定します。
起動スクリプトを、/etc/rc.d/init.d/スクリプト名 というパスに配置します。
以下のコマンドを実行して、起動スクリプトを登録します。
# chkconfig --add スクリプト名 |
参考
2. のコマンドを実行すると、以下のシンボリックリンクファイルが作成されます。
/etc/rc.d/rcランレベル.d/S起動優先度 スクリプト名
/etc/rc.d/rcランレベル.d/K停止優先度 スクリプト名
参照
起動スクリプトの設定方法の詳細は、chkconfig(8) を参照してください。
(b) RHEL7以降の場合
以下の手順で設定します。
ユニットファイルを、/usr/lib/systemd/system/ユニットファイル名 というパスに配置します。
以下のコマンドを実行して、サービスを有効にします。
# /usr/bin/systemctl enable ユニットファイル名 |
参考
2. のコマンドを実行すると、以下のシンボリックリンクファイルが作成されます。
/etc/systemd/system/multi-user.target.wants/ユニットファイル名