付録L 実行ユーザの変更

Scheduler ServerおよびFacilities Managerは,デフォルトではrootで実行しますが,以下の手順を実行することにより,実行ユーザの変更ができます。この作業をすることにより,プログラムファイルおよび管理データ,スケジュールデータのファイルおよびディレクトリの所有者を変更します。なお,Address Serverと連動している場合は,Address Serverのシステム管理者と同一ユーザを指定してください。また,Scheduler ServerとFacilities Managerについても同一ユーザでのみ実行できます。

  1. rootでログインします。
  2. サーバおよび管理ツールサーバが起動している場合は,サーバおよび管理ツールサーバを停止します。
  3. スケジュールデータ・管理データのバックアップをとります。
  4. 以下の表に示すディレクトリ/ファイルに対して次の操作を行ってください。
    (1)chgrpコマンドを用いて,グループを変更したい実行ユーザと同じグループに変更する。
    (2)chownコマンドを用いて,所有者を変更したい実行ユーザに変更する。
    所有者変更ディレクトリ/ファイル一覧

    [図データ]

    <スケジュール格納ディレクトリ>:[3.1.1(1)または3.1.2(1)コンフィギュレーションの設定]の[1.スケジュール格納ディレクトリの設定]で設定したスケジュール格納ディレクトリを指定してください。デフォルトは,/usr/ikiです。各ファイルの内容については,「付録A データファイルの説明」を参照してください
    • 上記4.の操作を一度に実行するシェルスクリプトのサンプルを/usr/GroupAppo/bin/usrchgに用意してあります。
    スクリプトの変数USERNAMEとGRPNAMEを変更する実行ユーザにあわせて設定したのち,以下のように実行してください。
       /usr/GroupAppo/bin/usrchg
    必要なディレクトリ/ファイルの所有者をすべて変更することができます。なお,各コマンドのパスは,OSに依存しますので必要に応じてスクリプトusrchgを修正してください。
  5. 自動起動の設定をする場合は,/etc/localrcの最後に次の内容を書き加えてください。
    以下に注意があります。
    • HP-UX,AIXの場合は /etc/localrcではなく,スタートアップ・スクリプトに追加してください。
    また,すでに[3.2.1(2)また3.2.2(2) 自動起動の設定]で自動起動の設定を行っている場合も以下のように修正してください。ここでは,実行ユーザとして「suzuki」を指定した場合の例を以下に示します。
    Scheduler Serverの自動起動

    [図データ]

    Facilities Managerの自動起動

    [図データ]

  6. 変更したユーザで再ログインしてください。
  7. 直ちにサーバおよび管理ツールサーバを起動したい場合は,手動で実行してください。手動で実行する場合は,以下の手順で行ってください。
    [Scheduler Serverの起動]
    (1)aconsoleを起動します。
    コマンド: /usr/bin/aconsole
    (2)サーバ(SV)を起動します。
    「2.サーバの起動」を選択してください。コマンド: /usr/bin/SVが実行されます。
    (3)管理ツールサーバ(AppoMan)を起動します。
    「4.管理ツールサーバの起動」を選択してください。コマンド:/usr/bin/AppoManが実行されます。

[Facilities Managerの起動]

(1)roomconsoleを起動します。

コマンド: /usr/bin/roomconsole

(2)サーバ(RMSV)を起動します。

「2.サーバの起動」を選択してください。コマンド: /usr/bin/RMSVが実行されます。

(3)管理ツールサーバ(RoomMan)を起動します。

「4.管理ツールサーバの起動」を選択してください。コマンド:/usr/bin/RoomManが実行されます。

注意

サンプルスクリプトusrchg

#!/bin/sh
#Licensed Material of Hitachi,Ltd.
#All Rights Reserved,Copyright(C) 1999,Hitachi,Ltd.
#*********************************************************
#Please set up following variables(USERNAME,GRPNAME) in
#case of need.
#Ex. USERNAME="suzuki", GRPNAME="kaihatu1"
USERNAME="UserName is here"
GRPNAME="GroupName is here"
#*********************************************************
if /bin/grep "^$USERNAME:" /etc/passwd > /dev/null
then
:
else
/bin/echo "$USERNAME is not a valid Username"
exit 1
fi
if /bin/grep "^$GRPNAME:" /etc/group > /dev/null
then
:
else
/bin/echo "$GRPNAME is not a valid Groupname"
exit 1
fi
BINPATH="/usr/bin"
APPOPATH="/usr/GroupAppo"
GMAXPATH="/groupmax/bin"
ININAME="/usr/bin/AppoMan.ini"
SCHEPATH=`/bin/grep SchedulePath $ININAME | /usr/bin/cut -c14-`
if test -f "$BINPATH/AppoMan"
then
/bin/chgrp $GRPNAME $BINPATH/AppoMan
/bin/chown $USERNAME $BINPATH/AppoMan
fi

if test -f "$BINPATH/RoomMan"
then
/bin/chgrp $GRPNAME $BINPATH/RoomMan
/bin/chown $USERNAME $BINPATH/RoomMan
fi
if test -f "$BINPATH/SV"
then
/bin/chgrp $GRPNAME $BINPATH/SV
/bin/chown $USERNAME $BINPATH/SV
fi
if test -f "$BINPATH/RMSV"
then
/bin/chgrp $GRPNAME $BINPATH/RMSV
/bin/chown $USERNAME $BINPATH/RMSV
fi
if test -f "$BINPATH/aconsole"
then
/bin/chgrp $GRPNAME $BINPATH/aconsole
/bin/chown $USERNAME $BINPATH/aconsole
fi
if test -f "$BINPATH/roomconsole"
then
/bin/chgrp $GRPNAME $BINPATH/roomconsole
/bin/chown $USERNAME $BINPATH/roomconsole
fi
if test -f "$BINPATH/brc.appo"
then
/bin/chgrp $GRPNAME $BINPATH/brc.appo
/bin/chown $USERNAME $BINPATH/brc.appo
fi
if test -f "$BINPATH/brc.Appoarea"
then
/bin/chgrp $GRPNAME $BINPATH/brc.Appoarea
/bin/chown $USERNAME $BINPATH/brc.Appoarea
fi
if test -f "$BINPATH/AppoMan.ini"
then
/bin/chgrp $GRPNAME $BINPATH/AppoMan.ini
/bin/chown $USERNAME $BINPATH/AppoMan.ini
fi
if test -f "$GMAXPATH/SCHpreBK"
then
/bin/chgrp $GRPNAME $GMAXPATH/SCHpreBK
/bin/chown $USERNAME $GMAXPATH/SCHpreBK
fi
if test -f "$GMAXPATH/SCHstpBK"
then
/bin/chgrp $GRPNAME $GMAXPATH/SCHstpBK
/bin/chown $USERNAME $GMAXPATH/SCHstpBK
fi
if test -f "$GMAXPATH/SCHstrBK"
then
/bin/chgrp $GRPNAME $GMAXPATH/SCHstrBK
/bin/chown $USERNAME $GMAXPATH/SCHstrBK
fi
if test -d $APPOPATH
then
/bin/find $APPOPATH -print | /usr/bin/xargs /bin/chgrp $GRPNAME
/bin/find $APPOPATH -print | /usr/bin/xargs /bin/chown $USERNAME
fi
if test -d $SCHEPATH
then
/bin/find $SCHEPATH -print | /usr/bin/xargs /bin/chgrp $GRPNAME
/bin/find $SCHEPATH -print | /usr/bin/xargs /bin/chown $USERNAME
fi
exit 0