|
≫ |
|
|
|
この章では,OpenVMS システム上のシステム時刻を制御する方法について説明し,システム時刻がどのように UTC (協定世界時) と関連するかを説明します。
また,夏時間で,ローカル時刻が変更されたときに,ローカルのシステム時刻を正しく保つ方法についても説明します。
サポートされており,VMS サービスが参照するタイム・ゾーンの一覧は,『OpenVMS システム管理者マニュアル (下巻)』の付録 C を参照してください。 この章の内容
この章では次の作業について説明します。
OpenVMS バージョン 7.0 以降において,
時刻計測の国際的な標準であるUTC (協定世界時) のモデルを使用した HP C バージョン 5.2 以降でコンパイルされたプログラムに対して,HP C RTL は省略時の日付/時刻サポートをしています。
6.1.1 DTSS (Distributed Time Synchronization Services) | |
システムが,DTSS (Distributed Time Synchronization Services) を使用している場合があります。
DTSS システムは,DECnet-Plus と分散コンピューティング環境 (DCE) で,
オプションとして提供されています。
DTSS を使用しているときは,この章で説明する手順ではなく,
DTSS が提供する手順によって,タイム・ゾーン情報を設定する必要があります。
6.1.2 時刻設定について | |
システム時刻の概念について理解しておくことは,正しいタイム・ゾーンを設定するうえで有益です。
UTC は多くの点でグリニッジ標準時刻 (GMT) に類似しています。
UTC では,午前 0 時は GMT の深夜になります。
時刻が前に進んだり戻ったりする夏時間のようなローカル時刻と異なり,
UTC は常に前に進みます。
ローカル時刻は GMT に対して最大 12 時間遅れるか,あるいは最大 13 時間前に進むことがあります。
UTC はタイム・ゾーンには依存しないので世界中で使用できます。
たとえば,2:00 UTC はパリでも東京でも同じ瞬間を示します。
UTC 値で時刻印字されたデータは,パリでも東京でもローカル・タイム・ゾーンへの複雑な変換作業をせずに使用できます。
同じローカル時刻を共有する地理的な地域は,季節ごとの標準時間と夏時間の切り替えについても同じルールで運用します。
通常,ユーザはローカル・システム時の季節調整 (たとえば,夏時間と標準時間の切り替えなど) を行う必要があります。
通常は,ローカルの時刻を 1 時間早めたり遅めたりします。
システムに正しい時刻を設定するには,まず,ユーザのシステムのタイム・ゾーンにおける時差係数 (TDF) を決めて設定しておく必要があります。
TDF によって,ユーザのローカル・タイム・ゾーンは UTC と関連づけられます。
時差係数 (TDF) は,ユーザのシステムのシステム時と UTC との時差です。
標準時間と夏時間の切り替えで,ローカル時刻の変化を反映してシステム時刻が変わったときは,TDF を補正する必要があります。
TDF はローカル時刻と同じ方向に調整します。
つまり,ローカル時間を 1 時間早めれば TDF も 1 時間早めます。
ただし,UTC は変化しません。
TDF の値は正負記号 (+ または -) 付きの hh:mm の形で表されます。
アメリカでは UTC から負の時差を持ち,
ヨーロッパ,アフリカ,アジア,オーストラリアでは,UTC から正の時差を持ちます。
OpenVMS のプロシージャは,対象のタイム・ゾーンの標準時間と夏時間について TDF を計算します。
これらは,TDF 設定の省略時の値として提供されます。
できるだけこの値を使用してください。
またユーザは,図 6-1 「時差係数 (TDF) 地図」 の地図によって,
ユーザのシステムの正しいタイム・ゾーンを決定することもできます。
『OpenVMS システム管理者マニュアル』の付録 B で世界中のタイム・ゾーンとその標準時間と夏時間での TDF を調べることができます。
地図を使用して TDF を決定するためには,次の手順を行います。
-
ユーザの地図上の位置を確認する。
その地点がどのタイムゾーンに属するかを確認する。
-
そのタイム・ゾーンを上にたどり,地図の上部に表記されている数値を読む。
たとえば,カリフォルニアの場合は -8:00,イタリアの場合は +1:00 である。
TDF に時間の端数があるタイム・ゾーンも存在するが,
このようなタイム・ゾーンの場合は,地図上でその値を探す。
たとえば,オーストラリアのアデレードの TDF は +9:30 である。
ユーザのタイム・ゾーンが夏時間であれば,
通常,TDF は標準時間よりも +1:00 進む。
たとえば,標準時間の TDF が +2:00 であれば,夏時間の TDF は +3:00 である。
標準時間の TDF が -7:00 であれば,夏時間の TDF は -6:00 である。
タイム・ゾーン規則は,タイム・ゾーン,夏時間,および標準時間 TDF の (通常 3 文字の) 省略形を定義するために,また夏時間と標準時間を切り替える時期を決定する規則を定義するために使用します。
タイム・ゾーン規則の形式は,『HP C ランタイム・ライブラリ・リファレンス・マニュアル』
で定義されています。
システムでタイム・ゾーン情報を設定する方法は,
次の要素に応じて異なります。
-
-
-
アーキテクチャ (VAX,Alpha,または I64)
DTSS を使用していない場合は,次の表に従ってタイム・ゾーン情報の設定方法を決定します。
この節では,OpenVMS Alpha バージョン 7.3 以降および I64 マシンにおけるタイム・ゾーン情報の設定方法について説明します。
OpenVMS バージョン 7.2 以前または OpenVMS VAX におけるタイム・ゾーン情報の設定方法については,
6.3 項 「OpenVMS VAX システムでのタイム・ゾーン情報の設定」を参照してください。
プロシージャ,SYS$MANAGER:UTC$TIME_SETUP.COM を使用して,
タイム・ゾーン情報を設定します。
SYS$MANAGER:UTC$TIME_SETUP.COM を使用するには,OPER,LOG_IO,SYSPRV,
SYSNAM および CMEXEC の特権を有効にする必要があります。
これらの特権を有効にするには,次のコマンドを実行します。
$ SET PROCESS/PRIVILEGES=(OPER,LOG_IO,SYSPRV,SYSNAM,CMEXEC)
|
これらの特権が有効でなければ,エラーか誤った結果が生じます。
SYS$MANAGER:UTC$TIME_SETUP.COM によって,現在のタイム・ゾーンの表示,
およびタイム・ゾーン情報の設定が可能です。
6.2.1 タイム・ゾーン情報の表示 | |
必要な特権が有効であることを確認したら (6.2 項 「OpenVMS Alpha バージョン 7.3 以降および OpenVMS I64 システムにおけるタイム・ゾーン情報の設定」参照),
次のコマンドを実行します。
$ @SYS$MANAGER:UTC$TIME_SETUP SHOW
|
これにより,次の (またはこれに近い) 情報が表示されます。
AUTO_DLIGHT_SAV is set to "1".
OpenVMS will automatically change to/from Daylight Saving Time.
(in timezones that use Daylight Saving Time)
LOCAL TIME ZONE = EASTERN / US -- STANDARD TIME
LOCAL SYSTEM TIME = 20-MAR-2003 13:23:22.21 (EST)
TIME DIFFERENTIAL FACTOR = -5:00
TIME ZONE RULE = EST5EDT4,M4.1.0/02,M10.4.0/02
Change EST to EDT on the First Sunday of April (6-Apr-2003) at 02:00
Change EDT to EST on the Fourth Sunday of October (26-Oct-2003) at 02:00
|
夏時間を使用しないタイム・ゾーンでは,変更文の代わりに,夏時間を使用しないことを示す文が表示されます。 AUTO_DLIGHT_SAVE システム・パラメータが 0 に設定されている場合は,
次のように表示されます。
AUTO_DLIGHT_SAV is set to "0" and DTSS is not in use.
You will have to manually change to/from Daylight Saving Time.
You can do this by executing SYS$MANAGER:UTC$TIME_SETUP.COM,
or you can use SYS$EXAMPLES:DAYLIGHT_SAVING.COM.
LOCAL TIME ZONE = ROC -- STANDARD TIME
LOCAL SYSTEM TIME = 19-MAR-2003 13:02:03.91 (CST)
TIME DIFFERENTIAL FACTOR = 8:00
TIME ZONE RULE = CST-8
This time zone does not use Daylight Saving Time.
|
タイム・ゾーン・パラメータの設定の一部が,
誤って設定されているというメッセージが表示されることがあります。
この場合,タイム・ゾーン情報を訂正して,
プロシージャを再度実行します。
6.2.2 タイム・ゾーン情報の設定 | |
ローカル・タイム・ゾーン・サポートが正しく動作するためには,省略時のタイム・ゾーンとする位置を正確に示すタイム・ゾーンを設定しなければなりません。
通常,このタイム・ゾーンはシステムが動作している場所のタイム・ゾーンです。
さらに,正しい OpenVMS 時差係数 (TDF) を使用するように,システムが正しく構成されていなければなりません。 必要な特権が有効であることを確認したら (6.2 項 「OpenVMS Alpha バージョン 7.3 以降および OpenVMS I64 システムにおけるタイム・ゾーン情報の設定」参照),
次のコマンドを実行します。
$ @SYS$MANAGER:UTC$TIME_SETUP
|
このコマンドには,パラメータを指定してはなりません。
タイム・ゾーン設定のメイン・メニューが表示されたとき,タイム・ゾーンを 2 種類の方法で選択できます。
1 つ目は,タイム・ゾーン設定のメイン・メニューで希望するタイム・ゾーンに最も近い番号を選択する方法です (複数のタイム・ゾーンが存在する選択肢の場合は,別のメニューから正確なタイム・ゾーンを選択しなければなりません)。
2 つ目は,タイム・ゾーン・メニューを省略し,名前で検索する検索オプションを使用する方法です。 タイム・ゾーン・メニューでいずれかの番号を選択すると,対応するタイム・ゾーンが選択されます。
番号の横のアスタリスク (*) は,その選択肢の中に複数のタイム・ゾーンが存在することを示しています。
このような番号を選択すると,適切なタイム・ゾーンを選択するための選択肢とともに追加メニューが表示されます。
たとえば,アメリカ合衆国 (US) のタイム・ゾーンをメイン・メニューで選択すると,アメリカ合衆国内の個々のタイム・ゾーンを示す 2 番目のメニューが表示されます。
そこで,希望するタイム・ゾーンに最も近いメニュー項目を選択します。 次の例に,メニュー番号を使用してアメリカ合衆国の東部時間を選択する方法を示します。
|
Configuring the Local Time Zone
TIME ZONE SPECIFICATION -- MAIN Time Zone Menu "*" indicates a menu
0* GMT
1* AFRICA 12) EET 23) JAPAN 34) ROK
2* AMERICA 13) EGYPT 24) LIBYA 35) SINGAPORE
3* ANTARCTICA 14) FACTORY 25) MET 36* SYSTEMV
4* ASIA 15) GB-EIRE 26* MEXICO 37) TURKEY
5* ATLANTIC 16) GREENWICH 27) NAVAJO 38) UCT
6* AUSTRALIA 17) HONGKONG 28) NZ-CHAT 39) UNIVERSAL
7* BRAZIL 18) ICELAND 29) NZ 40* US
8* CANADA 19* INDIAN 30* PACIFIC 41) UTC
9) CET 20) IRAN 31) POLAND 42) W-SU
10* CHILE 21) ISRAEL 32) PRC 43) WET
11) CUBA 22) JAMAICA 33) ROC 44) ZULU
Press "Return" to redisplay, enter "=" to search or "?" for help, or
Select the number above that best represents the desired time zone: 40
US Time Zone Menu "*" indicates a menu
0* RETURN TO MAIN TIME ZONE MENU
1) ALASKA 4) CENTRAL 7) HAWAII 10) MOUNTAIN
2) ALEUTIAN 5) EAST-INDIANA 8) INDIANA-STARKE 11) PACIFIC
3) ARIZONA 6) EASTERN 9) MICHIGAN 12) SAMOA
Press "Return" to redisplay, enter "=" to search or "?" for help, or
Select the number above that best represents the desired time zone: 6
You selected EASTERN / US as your time zone.
Is this correct? (Yes/No) [YES]:
|
|
Main Time Zone Menu で表示される省略形の意味を 表 6-1 「タイム・ゾーンの省略形」 に示します。
表 6-1 タイム・ゾーンの省略形 省略語 | 説明 |
---|
CET | 中央ヨーロッパ時間 |
EET | 東部ヨーロッパ時間 |
FACTORY | タイム・ゾーン設定なし |
GB-EIRE | グレート・ブリテン/アイルランド |
GMT | グリニッジ標準時刻 |
MET | 中央ヨーロッパ時間 |
NZ | ニュージーランド |
NZ-CHAT | ニュージーランド,チャタム島 |
PRC | 中華人民共和国 |
ROC | 中華民国 |
ROK | 大韓民国 |
SYSTEMV | System V オペレーティング・システム固有の設定 |
UCT | 協定世界時 |
US | アメリカ合衆国 |
UTC | 協定世界時間 |
UNIVERSAL | 協定世界時 |
W-SU | 中央ヨーロッパ時間 |
WET | 西部ヨーロッパ時間 |
メニュー番号の代わりに検索オプションを使用してタイム・ゾーンを選択するには,番号の代わりに等号 (=) をメニュー・プロンプトで入力します。
すると,選択したいタイム・ゾーンの名前または名前の一部の入力を求めるプロンプトが表示されます。
この情報を入力すると,一致するタイム・ゾーンがすべて表示されますので,適切なものを選択します。 次の例は,検索オプションを使用してアメリカ合衆国の東部時間を選択する方法を示しています。
|
Configuring the Local Time Zone
TIME ZONE SPECIFICATION -- MAIN Time Zone Menu "*" indicates a menu
0* GMT
1* AFRICA 12) EET 23) JAPAN 34) ROK
2* AMERICA 13) EGYPT 24) LIBYA 35) SINGAPORE
3* ANTARCTICA 14) FACTORY 25) MET 36* SYSTEMV
4* ASIA 15) GB-EIRE 26* MEXICO 37) TURKEY
5* ATLANTIC 16) GREENWICH 27) NAVAJO 38) UCT
6* AUSTRALIA 17) HONGKONG 28) NZ-CHAT 39) UNIVERSAL
7* BRAZIL 18) ICELAND 29) NZ 40* US
8* CANADA 19* INDIAN 30* PACIFIC 41) UTC
9) CET 20) IRAN 31) POLAND 42) W-SU
10* CHILE 21) ISRAEL 32) PRC 43) WET
11) CUBA 22) JAMAICA 33) ROC 44) ZULU
Press "Return" to redisplay, enter "=" to search or "?" for help, or
Select the number above that best represents the desired time zone: =EAST
Search for Time Zone by Full or Partial Name
"*" indicates a menu
1) EAST / BRAZIL
2) EAST-SASKATCHEWAN / CANADA
3) EASTERN / CANADA
4) EASTERISLAND / CHILE
5) EASTER / PACIFIC
6) EAST-INDIANA / US
7) EASTERN / US
Press "Return" to redisplay this menu,
enter "=" to search for a new zone,
enter "0" to return to the Main Time Zone Menu,
enter "?" for help, or
Select the number above that best represents the desired time zone: 7
You selected EASTERN / US as your time zone.
Is this correct? (Yes/No) [YES]
|
|
No と入力すると,Main Time Zone Menu に戻ります。
Yes と応えて Return を押すと,省略時の値を使って,
タイム・ゾーン情報が設定されます。
これには,次の情報が含まれます。
-
以下のシステム論理名。
これらは,タイム・ゾーン情報とともに設定される。
-
-
-
SYS$TIMEZONE_DAYLIGHT_SAVING
-
-
-
以下のファイル。
これらは,システムの再起動時に,タイム・ゾーン情報がリセットされます。
-
[VMS$COMMON.SYSEXE]SYS$TIMEZONE_SRC.DAT
-
[VMS$COMMON.SYS$STARTUP]TDF$UTC_STARTUP.COM
TDF は,システムの時刻と UTC (協定世界時) の差です。
UTC は,時刻の測定に関する国際標準です (グリニッジ標準時刻に似ています)。
システムは,次に,選択したタイム・ゾーンに対応する標準時間と夏時間の TDF とともに,TDF についての説明を表示します。
Default Time Differential Factor for standard time is -5:00.
Default Time Differential Factor for daylight saving time is -4:00.
The Time Differential Factor (TDF) is the difference between your
system time and Coordinated Universal Time (UTC). UTC is similar
in most repects to Greenwich Mean Time (GMT).
The TDF is expressed as hours and minutes, and should be entered
in the hh:mm format. TDFs for the Americas will be negative
(-3:00, -4:00, etc.); TDFs for Europe, Africa, Asia and Australia
will be positive (1:00, 2:00, etc.).
|
夏時間を採用しているタイム・ゾーンを選んだ場合のみ,
夏時間に関するメッセージが表示されます。
選択したタイム・ゾーンが夏時間を使用している場合は,
夏時間が現在使用中かどうかを指定する必要があります。
プロンプトで Y (使用中) または N (使用中ではない) と応えます。
次に例を示します。
Is Daylight Savings time in effect? Y
|
次に,TDF を入力するように求めるプロンプトが表示され,
該当するタイム・ゾーンと夏時間に応じた省略時の設定が表示されます。
次の例では,省略時の設定は -4:00 です。
できるだけ,省略時の設定をそのまま使用してください。
Enter the Time Differential Factor [-4:00]:
|
これにより,次の (またはこれに近い) 情報が表示されます。
If this is a seasonal time change, it may also be necessary to
modify the system time. Generally, seasonal time changes result
in adding 1:00 hour, or adding -1:00 hour to the system time.
|
次の質問に Yes または No と応答します。
Do you wish to modify the local system time [N]: Yes
|
Yes と応えた場合は,次の情報が表示されます。
Enter the time adjustment value you would like to add to
the local time. You can enter hours only (hh) or hours and
minutes (hh:mm) The value can be positive (hh:mm or +hh:mm)
or negative (-hh:mm).
|
次に調整する時間を入力します。
通常は,-1:00 か +1:00 です。
Enter the time adjustment value: -1:00
|
最後に,TDF と調整時間 (指定した場合) が表示されるので,
それらが正しいか確認します。
NEW SYSTEM TIME DIFFERENTIAL FACTOR = -4:00
ADDING -1:00 TO THE LOCAL TIME.
|
Yes と応えると,TDF が設定され,論理名
SYS$TIMEZONE_DIFFERENTIAL が定義されます。
No と応えると,TDF の情報の画面に戻り,
TDF と 時間の調整をはじめから選択できるようになります。
この節では,OpenVMS VAX および OpenVMS Alpha バージョン 7.2 以前でのタイム・ゾーン情報の設定方法について説明します。
OpenVMS Alpha バージョン 7.3 以降および OpenVMS I64 でのタイム・ゾーンの設定方法については,6.2 項 「OpenVMS Alpha バージョン 7.3 以降および OpenVMS I64 システムにおけるタイム・ゾーン情報の設定」を参照してください。
コマンド・プロシージャ,SYS$MANAGER:UTC$TIME_SETUP.COM を使用すれば,
次のように,タイム・ゾーン情報を設定できます。
-
ユーザのシステムのタイム・ゾーン,あるいは TDF, またはその両方の設定
-
夏時間または標準時刻を調整するための,ユーザ・システムのローカル時刻の変更
-
クラスタ上のあるノードのタイム・ゾーンや TDF を変更した場合,変更した設定がクラスタ上の他のメンバに有効となるのは,これらのノードが再起動した時点です。
ユーザが使用しやすいように,コマンド・プロシージャを操作するセクションは 2
つに分かれています。
プロシージャの開始
コマンド・プロシージャ SYS$MANAGER:UTC$TIME_SETUP.COM を使用するには,
次の手順に従ってください。
-
SYSTEM アカウントにログインする。
または,次のコマンドを実行して,LOG_IO と OPER 特権を利用可能にする。
$ SET PROCESS/PRIVILEGES=(LOG_IO,OPER)
|
-
次のコマンドを入力して,UTC$TIME_SETUP.COM プロシージャを呼び出す。
$ @SYS$MANAGER:UTC$TIME_SETUP.COM
|
%UTC-I-UPDTIME, updating Time Zone information in SYS$COMMON:[SYSEXE]
|
-
省略時の設定 (BOTH) を有効にするために Return キーを押す。
あるいは,かっこ内のいずれか 1 つを入力する。
Configure which time parameter (TIMEZONE/TDF/BOTH/NONE)? [BOTH]
|
コマンド・プロシージャに対して BOTH,あるいは TIMEZONE を入力した場合は,
次の節に進んでください。
TDF を入力した場合,6.3.2 項 「ユーザのシステムの時差係数 (TDF) の設定」 に進んでください。
6.3.1 ユーザのシステムでのタイム・ゾーンの設定 | |
ローカル・タイム・ゾーンは,
ユーザが省略時のタイム・ゾーンとして設定したいタイム・ゾーンです。
通常このローカル・タイム・ゾーンは,
ユーザのシステムの設置されている地点のローカル・タイム・ゾーンと一致させます。
ローカル・タイム・ゾーンは,コマンド・プロシージャで選択を行って設定します。
システムは,まず次のような情報を表示します。
Configuring the Local Time Zone
TIME ZONE SPECIFICATION -- Main Time Zone Menu
1) Australia 11) GMT 21) Mexico 31) Turkey
2) Brazil 12) Greenwich 22) NZ 32) UCT
3) CET 13) Hong Kong 23) NZ-CHAT 33) US
4) Canada 14) Iceland 24) Navajo 34) UTC
5) Chile 15) Iran 25) PRC 35) Universal
6) Cuba 16) Israel 26) Poland 36) W-SU
7) EET 17) Jamaica 27) ROC 37) WET
8) Egypt 18) Japan 28) ROK 38) Zulu
9) Factory 19) Libya 29) Singapore
10) GB-Eire 20) MET 30) SystemV
0) None of the above
|
Main Time Zone Menu で表示される省略形の意味を 表 6-1 「タイム・ゾーンの省略形」 に示します。
タイム・ゾーンを選択するには,次の手順に従ってください。
-
次の質問に番号で応答する。
たとえば,アメリカ合衆国の場合は 33 を入力する。
Select the number above that best describes your location: 33
|
0 を入力すると,省略時の設定である GMT に設定される。
-
複数のタイム・ゾーンがある国の場合は,
入力を確認する次のメッセージが表示される。
タイム・ゾーンが 1 つしかない国の場合は,手順 4 に進む。
You selected US as your time zone.
Is this correct? (Yes/No) [YES]:
|
-
複数のタイム・ゾーンを持つ国の場合は,
次のメッセージが表示されるので,該当する地域を番号で選択する。
この例では 6 を入力している。
US Time Zone Menu
1) Alaska 4) Central 7) Hawaii 10) Mountain
2) Aleutian 5) East-Indiana 8) Indiana-Starke 11) Pacific
3) Arizona 6) Eastern 9) Michigan 12) Samoa
0) None of the above
|
Select the number above that best describes your location: 6
|
-
表示された情報を確認する。
情報が誤っている場合は,No と入力した後で別の番号を入力する。
この例では,表示された情報が正しいので YES と入力している。
You selected US/Eastern as your time zone.
Is this correct? (Yes/No) [YES]:
|
最後の 1 行の確認が終わると,システムは次の論理名を再定義する。
HP C RTL は,
ユーザのアプリケーションのタイム・ゾーン規則を算出するために,
これらの論理名を使用する。
この情報は SYS$TIMEZONE.DAT にも書き込まれる。
システムの再起動時に,これら 2 つの論理名は書き替えられる。
システムは,ユーザが入力したタイム・ゾーンの標準時刻と夏時間との TDF を表示する。
Default Time Differential Factor for standard time is -5:00.
*Default Time Differential Factor for daylight saving time is -4:00.
|
夏時間を採用しているタイム・ゾーンを選んだ場合のみ,
夏時間に関するメッセージが表示される。
6.3.2 ユーザのシステムの時差係数 (TDF) の設定 | |
コマンド・プロシージャの冒頭の質問に,TDF あるいは BOTH と入力した場合には,
TDF を入力するようプロンプトが表示されます。
TDF を決定するには,次の手順に従ってください。
-
システムがユーザのシステム用に算出した TDF を表示させるため,
2 を入力する。
Configuring the Time Differential Factor (TDF)
Enter ? anytime for help
[0] Exit
[1] Set the Time Differential Factor
[2] Display the Time Differential Factor
Please pick an option number [2]: 2
|
次の情報が表示される。
SYSTEM TIME DIFFERENTIAL FACTOR = -4:00 (-14400 seconds).
LOCAL SYSTEM TIME = 22-JAN-2001 10:49:45.20.
|
-
表示された TDF を確認する。
または新しく入力する場合は,1 を入力する。
Configuring the Time Differential Factor (TDF)
Enter ? anytime for help
[0] Exit
[1] Set the Time Differential Factor
[2] Display the Time Differential Factor
|
Please pick an option number [2]: 1
|
システムは次の情報を表示する。
The Time Differential Factor (TDF) is the difference between your
system time and Coordinated Universal Time (UTC). UTC is similar
in most respects to Greenwich Mean Time (GMT).
The TDF is expressed as hours and minutes, and should be entered
in the hh:mm format. TDFs for the Americas will be negative
(-3:00, -4:00, etc.); TDFs for Europe, Africa, Asia and Australia
will be positive (1:00, 2:00, etc.).
|
タイム・ゾーンも指定した場合,システムは次の質問を表示する。
だたし,夏時間を持たないタイム・ゾーンの場合は,この質問は表示されない。
-
次の質問に Yes または No と応答する。
Is Daylight Saving time in effect? (Yes/No):
|
-
次のプロンプトが表示された後で Return キーを押すと,
表示された省略時の値が有効になる。
省略時の値を使用しない場合は,使用したい値を入力する (タイム・ゾーンを設定していない場合,システムは省略時のタイム・ゾーンを表示する)。
Enter the Time Differential Factor [-4:00]:
|
システムは,システム時刻と季節時刻を変更する必要があることを表示する。
If this is a seasonal time change, it may also be necessary to
modify the system time. Generally, seasonal time changes result
in adding 1:00 hour, or adding -1:00 hour to the system time.
|
-
ローカル・システム時刻を変更する必要がある場合は,
次の質問に対して Yes と入力します。
そうでない場合は No と入力する。
Do you wish to modify the local system time [N]:
|
Yes と応えた場合は,
6.5.3 項 「OpenVMS バージョン 7.2 での夏時間の調整」のような手順で処理が進む。
No と応えると,システムは次に新しい TDF を表示する。
NEW SYSTEM TIME DIFFERENTIAL FACTOR = -4:00.
|
-
表示された TDF が正しいと確認できたら Yes と入力する。
正しくなければ No と入力する。
No と応えると,システムはこの節の手順 1 に戻る。
Yes と応えると,システムは TDF とローカル・システム時刻を表示する。
SYSTEM TIME DIFFERENTIAL FACTOR = -4:00 (-14400 seconds).
LOCAL SYSTEM TIME = 22-JAN-2001 10:52:37.36.
|
OpenVMS Cluster 環境の全ノードでは,ローカル時刻,TDF,およびタイム・ゾーンは同じである必要があります。
システム管理ユーティリティ (SYSMAN) の DO コマンドを使用して,
クラスタ内の 1 つのノードでコマンド・プロシージャ SYS$MANAGER:UTC$TIME_SETUP.COM を起動すると,
クラスタ内の 1 つ以上のノードに対して次の項目を実行できます。
SYS$MANAGER:UTC$TIME_SETUP.COM は,OpenVMS Alpha システムおよび I64 システムと OpenVMS VAX システムでは異なるので,
混在アーキテクチャ・クラスタでは注意が必要です。
すべての Alpha または I64 ノードや,すべての VAX ノードで操作を行えるよう,次の SYSMAN コマンドを使用して,SYSMAN 環境を設定します。
SYSMAN> SET ENVIRONMENT /NODE=(<node_list>)
|
1 つのアーキテクチャ用に UTC$TIME_SETUP.COM を実行した後,
環境をもう 1 つのアーキテクチャに再設定し,
そのアーキテクチャ用に UTC$TIME_SETUP.COM を実行します。
夏時間を使用しているタイム・ゾーンでは,
年に 2 回,システム時刻を調整する必要があります。
調整方法は,次の要素によって異なります。
-
-
-
アーキテクチャ (VAX,Alpha,または I64)
-
システム・パラメータ,AUTO_DLIGHT_SAV (OpenVMS Alpha バージョン 7.3 のみ)
DTSS を使用していない場合は,次の表に従ってタイム・ゾーン情報の設定方法を決定します。
6.5.1 夏時間の自動調整 (OpenVMS Alpha バージョン 7.3 以降および OpenVMS I64) | |
OpenVMS Alpha バージョン 7.3 以降および OpenVMS I64 には,
AUTO_DLIGHT_SAV というシステム・パラメータが用意されており,
標準時間と夏時間を自動的に切り替えます。
AUTO_DLIGHT_SAV を 1 に設定すると,ローカル時刻が夏時間と標準時間の間で切り替わったときに,OpenVMS Alpha バージョン 7.3 (以降) または I64 システムが,
自動的に時刻を前後に変更します。
AUTO_DLIGHT_SAV が 0 に設定されている場合 (省略時の設定),
OpenVMS は,夏時間と標準時間の切り替えを自動的に行ないません。
AUTO_DLIGHT_SAV パラメータおよび夏時間と標準時間の切り替えは,
OpenVMS Alpha バージョン 7.3 以降のシステムおよび I64 システムでのみ実現されています。
これが正しく機能するには,対象のタイム・ゾーンの タイム・ゾーン規則を設定する必要があります。
OpenVMS Alpha バージョン 7.3 以降のシステムおよび I64 システムでタイム・ゾーン規則を設定する方法については,6.2 項 「OpenVMS Alpha バージョン 7.3 以降および OpenVMS I64 システムにおけるタイム・ゾーン情報の設定」を参照してください。
標準時間と夏時間の自動切り替えを有効または無効にするには,
AUTO_DLIGHT_SAV を変更する必要があります。
この変更を有効にするには,システムを再起動する必要があります。
システム・パラメータの変更については,
『OpenVMS システム管理者マニュアル (下巻)』を参照してください。
OpenVMS バージョン 7.3 システムで,夏時間の手動調整を行う方法については,
次の節を参照してください。
6.5.2 夏時間の手動調整 (OpenVMS バージョン 7.3 以降のシステムおよび I64 システム) | |
この節では,DTSS を使用していない OpenVMS バージョン 7.3 以降のシステムで,
システム時間の標準時間と夏時間を手動で切り替える方法について説明します。
次の手順は,OpenVMS VAX バージョン 7.3 と,OpenVMS Alpha バージョン 7.3 以降のシステムおよび I64 システムで,
自動夏時間切り替え機能が無効な場合 (AUTO_DLIGHT_SAV が 0 に設定されている場合) に使用します。
ローカル・タイムを夏時間や標準時間に調整するには,
SYS$EXAMPLES:DAYLIGHT_SAVINGS.COM を実行します。
このコマンド・プロシージャは以下のことを実行できます。
DAYLIGHT_SAVINGS.COM は次の両方の操作を行うことができます。
-
-
バッチ・ジョブを発行して将来の時点で実行させる (これは典型的なコマンド・プロシージャの使用法である)。
DAYLIGHT_SAVINGS.COM は,現在のディレクトリに,
DST$CHANGE.COM というコマンド・プロシージャを作成します。
DST$CHANGE.COM は,現在のノードでのみ実行できます。
DAYLIGHT_SAVINGS.COM はまた,
OpenVMS Cluster の全部のノードで時間の設定を変えるために,
DST$SYSMAN.COM というコマンド・プロシージャを作成します。
このコマンド・プロシージャは,SYSMAN の DO コマンドを実行することにより,DST$CHANGE.COM を実行します。
全部のノードを変更するには,OpenVMS Alpha バージョン 7.3 以降または OpenVMS I64 がインストールされているノードで,DAYLIGHT_SAVINGS.COM を実行します。
DAYLIGHT_SAVINGS.COM は,会話的に実行し,入力を求めるプロンプトに応答することも,パラメータを指定してコマンド・プロシージャを実行することもできます。
パラメータを指定して DAYLIGHT_SAVINGS.COM を実行するには,
次のコマンドを入力します。
$ @SYS$EXAMPLES:DAYLIGHT_SAVINGS P1 P2 P3 P4
|
次の表で,パラメータを説明します。
パラメータ P1,P2,および P3 は,最初の文字だけを入力して指定することができます。
DAYLIGHT_SAVINGS.COM を会話的に実行するには,次のコマンドを入力します。
$ @SYS$EXAMPLES:DAYLIGHT_SAVINGS
|
DAYLIGHT_SAVINGS.COM は,上に示したパラメータの入力を求めます。
DAYLIGHT_SAVINGS.COM を実行して,OpenVMS Cluster の全部のノードの時刻を後で変更するときは,パラメータ P3 で SAVE を指定する方法もあります。
これにより,DAYLIGHT_SAVINGS.COM が,
DST$SYSMAN.COM と DST$CHANGE.COM の 2 つのコマンド・プロシージャを保存します。
その後,DST$SYSMAN.COM を正しいキューに登録します。
6.5.3 OpenVMS バージョン 7.2 での夏時間の調整 | |
この節では,OpenVMS バージョン 7.2 以前での夏時間の調整方法について説明します。
ローカル・タイムを夏時間や標準時間に調整するには,
SYS$EXAMPLES:DAYLIGHT_SAVINGS.COM を実行します。
このコマンド・プロシージャは次のことを実行できます。
DAYLIGHT_SAVINGS.COM は次の両方の操作を行うことができます。
次の例 DAYLIGHT_SAVINGS.COM では,
コマンド・プロシージャにバッチ・ジョブ DST_CHANGE を発行させる応答例を示しています。
このバッチ・ジョブ (DST_CHANGE) は標準時間から夏時間に切り替わった時に発行されます。
6.3.2 項 「ユーザのシステムの時差係数 (TDF) の設定」 に多くの質問が説明されています。
例の中では,当初の TDF の値は -5:00 です。
ローカル日付けとローカル時刻は,
標準時刻の変更が行われた 2000 年の任意の時点から,
夏時間の変更が行われる 2001 年 4 月 23 日の 02:00 までの間に設定できます。
|
$ SYS$EXAMPLES:DAYLIGHT_SAVINGS
This procedure queues a batch job that changes the system time
and system time differential around a daylight saving time
change. Press the question mark (?) key at any time for help;
hit Control-C to exit.
The Time Differential Factor (TDF) is the difference
between your system time and Coordinated Universal Time (UTC).
The difference is expressed in hh:mm format. The Americas
have negative offsets from UTC, while Europe, Africa, Asia
and Australia have positive offsets from UTC.
* Enter the Time Differential Factor: -4:00
If this is a seasonal time change, it may also be
necessary to modify the system time. Generally,
seasonal time changes result in adding 1:00 hour,
or adding -1:00 hour to the local time.
* Do you wish to modify the local system time [N]: Y
Enter the time value you would like to add to
the local time. The value can be a positive or
a negative (-hh:mm) value.
* Enter the time value: +1:00
The process to modify your time zone offset and local
time (if supplied) can occur now or in the future.
Press Return to run the job now.
* Enter the run time in the DD-MMM-YYYY:HH:MM:SS format:
01-apr-2001:02:00
NEW SYSTEM TIME DIFFERENTIAL FACTOR = -4:00
ADDING 1:00 TO THE LOCAL TIME.
JOB RUN TIME : 1-APR-2001:02:00
* Continue? [Y]: Y
Job DST_CHANGE (queue SYS$BATCH, entry 2) holding until 1-APR-2001 02:00
Batch Job DST_CHANGE scheduled to run at 1-APR-2001:02:00
$
$!!The batch job DST_CHANGE will run on 1-Apr-2001 at 02:00
|
|
OpenVMS Alpha アーキテクチャおよび I64 アーキテクチャでは,バッテリ付き時計 (BBW) により,
電源の障害時やシステムダウンがあっても現在の時刻と日付を保持しています。
BBW は VAX アーキテクチャにおける日付時刻レジスタ (TODR) と機能的に同等です。
唯一の違いは,保持する日付けに範囲がある点です。
BBW は 100 年分だけの記憶容量を持っています。
OpenVMS Alpha システムおよび I64 システムのシステム日付時刻の範囲は再定義され,
1957 から 2056 までに変更されました。
これにより,閏年の処理や千年の境界移行についての処理を,
正しく行うことができます。
さらに OpenVMS Alpha および I64 の同期メカニズムに変更が加えられ,
$ASCTIM システム・サービスと DCL の SET TIME コマンドでの,
2 桁 (下位 2 桁) による西暦がサポートがされるようになりました (この変更が行われる以前は,4 桁の西暦年数だけが使用できました)。
2 桁指定のサポートにより,ユーザは年数を入力する際に,
下位 2 桁だけを入力するだけでよくなりました。
西暦年数の上位 2 桁は,Alpha がサポートする日付の範囲 (1957 ~ 2056) に対応する年数により決まります。
次に例を示します。
この例では 98 は 1998 と同じ意味です。
この例では,05 は 2005 と同じ意味です。
英語以外の言語を指定することができます。
ユーザは,システム管理者が定義したリストから,後で,表示に使用する言語を選択することができます。
多くの SHOW コマンド用に,事前定義リストから時刻/日付形式を選択したり,新しい時刻/日付形式を定義したりすることができます。
たとえば,15-JAN-2001 10:16:25.14 の代わりに,次のような別の形式を使用することができます。
$ SHOW USERS
OpenVMS User Processes at JANUARY 15, 2001 10:16 AM
Total number of users = 7, number of processes = 11
Username Node Interactive Subprocess Batch
MCDERMOT ARD26B 1
PASTERNAK ARD26B - 2 1
⋮
|
ユーザは後で,システム管理者が設定したシステムの省略時の値を上書きして,
独自の日付/時刻形式を選択することができます。
言語および日付/時刻の変更手順英語以外の言語や,省略時の設定以外の日付/時刻形式を使用するには,
次の手順を実行します。
-
論理名 SYS$LANGUAGES (複数形) を定義して,システム上のユーザが使用する言語のリストを指定する (言語が英語であれば,このステップは省略する)。
-
コマンド・プロシージャ SYS$MANAGER:LIB$DT_STARTUP.COM を起動する。
-
日付/時刻の表示をカスタマイズするために使用できる出力形式を定義する。
-
論理名 SYS$LANGUAGES で定義する英語以外の言語に対するサポートをロードする。
-
次のいずれかを使用するシステムで,日付/時刻形式を定義する。
6.7.1 英語以外の言語の指定 | |
英語以外の言語のリストを定義するには,SYS$LANGUAGES (複数形) 論理名を使用します (6.7.4 項 「言語と日付/時刻形式のユーザ定義」 で説明するように,
ユーザは後で,このリストから,プロセスで表示に使用する言語を選択することができます)。
英語は省略時の言語であるため,常に使用可能でなければなりません。
そのため,英語のスペルは論理名の変換からは取り除かれず,内部テーブルで調べられます。
たとえば,フランス語,ドイツ語,イタリア語を指定するには,
次のように SYS$LANGUAGES を定義する必要があります。
$ DEFINE SYS$LANGUAGES FRENCH, GERMAN, ITALIAN
|
別の言語,たとえばフィンランド語を追加するには,SYS$LANGUAGES の定義に FINNISH を追加して,コマンド・プロシージャを再度実行します。
6.7.2 LIB$DT_STARTUP.COM の起動 | |
SYS$MANAGER:LIB$DT_STARTUP.COM コマンド・プロシージャは,次の論理名について,可能な選択肢を定義します。
-
SYS$LANGUAGES
システムは,システム管理者が SYS$LANGUAGES (複数形) 論理名で選択した言語をロードする。
6.7.4 項 「言語と日付/時刻形式のユーザ定義」 で説明するように,ユーザは後で,
SYS$LANGUAGE (単数形) 論理名を定義することにより,独自の言語を選択することができる。
-
LIB$DT_FORMAT
システムは,システム管理者が省略時のシステム形式を指定するのに使用できる出力形式をロードする。
6.7.4 項 「言語と日付/時刻形式のユーザ定義」 で説明するように,ユーザは後で,
独自の形式を定義することができる。
コマンド・プロシージャを起動するには,次のコマンドを入力します。
$ @SYS$MANAGER:LIB$DT_STARTUP
|
SYS$LANGUAGES を変換できない場合,英語が使用されます。
LIB$DT_FORMAT または形式に関連する論理名を変換できない場合には,日付と時刻について,
OpenVMS の標準 ($ASCTIM) の表示形式,つまり dd-mmm-yyyy hh:mm:ss.cc が使用されます。
6.7.3 システムの省略時の日付/時刻形式の定義 | |
省略時の日付/時刻形式を定義するには,
表 6-2 「形式のニーモニック」 に示すユーザ定義形式か,
表 6-3 「事前定義の出力日付形式」 と 表 6-4 「事前定義の出力時刻形式」 に示す事前定義形式を使用することができます。
日付または時刻,あるいはその両方の形式を選択するには,
次の論理名を使用して,LIB$DT_FORMAT の論理名を定義します。
-
LIB$DATE_FORMAT_nnn (nnn は 001 から 040 の範囲)
-
LIB$TIME_FORMAT_nnn (nnn は 001 から 020 の範囲)
この論理名が LIB$DT_FORMAT に定義されている順序で,出力の順序が決まります。
両方とも出力するよう定義すると,この 2 つの要素の間にある出力文字列にスペースが 1 つ挿入されます。
たとえば,システム単位の形式を定義する場合は,次のようになります。
$ DEFINE/SYSTEM LIB$DT_FORMAT LIB$DATE_FORMAT_006, LIB$TIME_FORMAT_012
|
この定義により,次の例のように,システム単位で,日付が指定された形式で表示され,その後にスペースが 1 つと,指定された形式の時刻が表示されます。
6.7.4 項 「言語と日付/時刻形式のユーザ定義」 で,プロセスに表示する独自の日付/時刻形式をユーザが選択する方法を説明します。
独自の形式を定義するには,表 6-2 「形式のニーモニック」 に示すニーモニックを使用して,LIB$DATE_FORMAT_nnn と LIB$TIME_FORMAT_nnn を定義します。
nnn は,選択した数字に置き換えます。
表 6-2 形式のニーモニック 日付 | 説明 |
---|
!D0 | 日,ゼロ詰め (Day, Zero-Filled) |
!DD | 日,充填なし (Day, No Fill) |
!DB | 日,空白詰め (Day, Blank-Filled) |
!WU | 曜日,大文字 (Weekday, Uppercase) |
!WAU | 曜日,短縮形,大文字 (Weekday, Abbreviated, Uppercase) |
!WC | 曜日,1 文字目が大文字 (Weekday, Capitalized) |
!WAC | 曜日,短縮形,1 文字目が大文字 (Weekday, Abbreviated, Capitalized) |
!WL | 曜日,小文字 (Weekday, Lowercase) |
!WAL | 曜日,短縮形,小文字 (Weekday, Abbreviated, Lowercase) |
!MAU | 月,アルファベット,大文字 (Month, Alphabetic, Uppercase) |
!MAAU | 月,アルファベット,短縮形,大文字 (Month, Alphabetic, Abbreviated, Uppercase) |
!MAC | 月,アルファベット,1 文字目が大文字 (Month, Alphabetic, Capitalized) |
!MAAC | 月,アルファベット,短縮形,1 文字目が大文字 (Month, Alphabetic, Abbreviated, Capitalized) |
!MAL | 月,アルファベット,小文字 (Month, Alphabetic, Lowercase) |
!MAAL | 月,アルファベット,短縮形,小文字 (Month, Alphabetic, Abbreviated, Lowercase) |
!MN0 | 月,数字,ゼロ詰め (Month, Numeric, Zero-Filled) |
!MNM | 月,数字,充填なし (Month, Numeric, No Fill) |
!MNB | 月,数字,空白詰め (Month, Numeric, Blank-Filled) |
!Y4 | 年,4 桁 (Year, 4 Digits) |
!Y3 | 年,3 桁 (Year, 3 Digits) |
!Y2 | 年,2 桁 (Year, 2 Digits) |
!Y1 | 年,1 桁 (Year, 1 Digit) |
時刻 | 説明 |
---|
!H04 | 時間,ゼロ詰め,24 時間表示 (Hours, Zero-Filled, 24-Hour Clock) |
!HH4 | 時間,充填なし,24 時間表示 (Hours, No Fill, 24-Hour Clock) |
!HB4 | 時間,空白詰め,24 時間表示 (Hours, Blank-Filled, 24-Hour Clock) |
!H02 | 時間,ゼロ詰め,12 時間表示 (Hours, Zero-Filled, 12-Hour Clock) |
!HH2 | 時間,充填なし,12 時間表示 (Hours, No Fill, 12-Hour Clock) |
!HB2 | 時間,空白詰め,12 時間表示 (Hours, Blank-Filled, 12-Hour Clock) |
!M0 | 分,ゼロ詰め (Minutes, Zero-Filled) |
!MM | 分,充填なし (Minutes, No Fill) |
!MB | 分,空白詰め (Minutes, Blank-Filled) |
!S0 | 秒,ゼロ詰め (Seconds, Zero-Filled) |
!SS | 秒,充填なし (Seconds, No Fill) |
!SB | 秒,空白詰め (Seconds, Blank-Filled) |
!C7 | 1 秒未満,7 桁 (Fractional Seconds, 7 Digits) |
!C6 | 1 秒未満,6 桁 (Fractional Seconds, 6 Digits) |
!C5 | 1 秒未満,5 桁 (Fractional Seconds, 5 Digits) |
!C4 | 1 秒未満,4 桁 (Fractional Seconds, 4 Digits) |
!C3 | 1 秒未満,3 桁 (Fractional Seconds, 3 Digits) |
!C2 | 1 秒未満,2 桁 (Fractional Seconds, 2 Digits) |
!C1 | 1 秒未満,1 桁 (Fractional Seconds, 1 Digit) |
!MIU | AM/PM 表示,大文字 (Meridiem Indicator, Uppercase) |
!MIC | Am/Pm 表示,1 文字目が大文字 (Meridiem Indicator, Capitalized (mixed case)) |
!MIL | am/pm 表示,小文字 (Meridiem Indicator, Lowercase) |
表 6-3 「事前定義の出力日付形式」 は,事前定義の日付形式の論理名,形式,およびその形式を使用して生成した出力例を示しています。
形式の指定に使用したニーモニックは,表 6-2 「形式のニーモニック」 に示しています。
表 6-3 事前定義の出力日付形式 日付形式の論理名 | 形式 | 例 |
---|
LIB$DATE_FORMAT_001 | !DB-!MAAU-!Y4 | 13-JAN-1998 |
LIB$DATE_FORMAT_002 | !DB !MAU !Y4 | 13 JANUARY 1998 |
LIB$DATE_FORMAT_003 | !DB.!MAU !Y4 | 13.JANUARY 1998 |
LIB$DATE_FORMAT_004 | !DB.!MAU.!Y4 | 13.JANUARY.1998 |
LIB$DATE_FORMAT_005 | !DB !MAU !Y2 | 13 JANUARY 98 |
LIB$DATE_FORMAT_006 | !DB !MAAU !Y2 | 13 JAN 98 |
LIB$DATE_FORMAT_007 | !DB.!MAAU !Y2 | 13.JAN 98 |
LIB$DATE_FORMAT_008 | !DB.!MAAU.!Y2 | 13.JAN.98 |
LIB$DATE_FORMAT_009 | !DB !MAAU !Y4 | 13 JAN 1998 |
LIB$DATE_FORMAT_010 | !DB.!MAAU !Y4 | 13.JAN 1998 |
LIB$DATE_FORMAT_011 | !DB.!MAAU.!Y4 | 13.JAN.1998 |
LIB$DATE_FORMAT_012 | !MAU !DD, !Y4 | JANUARY 13, 1998 |
LIB$DATE_FORMAT_013 | !MN0/!D0/!Y2 | 01/13/98 |
LIB$DATE_FORMAT_014 | !MN0-!D0-!Y2 | 01-13-98 |
LIB$DATE_FORMAT_015 | !MN0.!D0.!Y2 | 01.13.98 |
LIB$DATE_FORMAT_016 | !MN0 !D0 !Y2 | 01 13 98 |
LIB$DATE_FORMAT_017 | !D0/!MN0/!Y2 | 13/01/98 |
LIB$DATE_FORMAT_018 | !D0/!MN0-!Y2 | 13/01-98 |
LIB$DATE_FORMAT_019 | !D0-!MN0-!Y2 | 13-01-98 |
LIB$DATE_FORMAT_020 | !D0.!MN0.!Y2 | 13.01.98 |
LIB$DATE_FORMAT_021 | !D0 !MN0 !Y2 | 13 01 98 |
LIB$DATE_FORMAT_022 | !Y2/!MN0/!D0 | 98/01/13 |
LIB$DATE_FORMAT_023 | !Y2-!MN0-!D0 | 98-01-13 |
LIB$DATE_FORMAT_024 | !Y2.!MN0.!D0 | 98.01.13 |
LIB$DATE_FORMAT_025 | !Y2 !MN0 !D0 | 98 01 13 |
LIB$DATE_FORMAT_026 | !Y2!MN0!D0 | 980113 |
LIB$DATE_FORMAT_027 | /!Y2.!MN0.!D0 | /98.01.13 |
LIB$DATE_FORMAT_028 | !MN0/!D0/!Y4 | 01/13/1998 |
LIB$DATE_FORMAT_029 | !MN0-!D0-!Y4 | 01-13-1998 |
LIB$DATE_FORMAT_030 | !MN0.!D0.!Y4 | 01.13.1998 |
LIB$DATE_FORMAT_031 | !MN0 !D0 !Y4 | 01 13 1998 |
LIB$DATE_FORMAT_032 | !D0/!MN0/!Y4 | 13/01/1998 |
LIB$DATE_FORMAT_033 | !D0-!MN0-!Y4 | 13-01-1998 |
LIB$DATE_FORMAT_034 | !D0.!MN0.!Y4 | 13.01.1998 |
LIB$DATE_FORMAT_035 | !D0 !MN0 !Y4 | 13 01 1998 |
LIB$DATE_FORMAT_036 | !Y4/!MN0/!D0 | 1998/01/13 |
LIB$DATE_FORMAT_037 | !Y4-!MN0-!D0 | 1998-01-13 |
LIB$DATE_FORMAT_038 | !Y4.!MN0.!D0 | 1998.01.13 |
LIB$DATE_FORMAT_039 | !Y4 !MN0 !D0 | 1998 01 13 |
LIB$DATE_FORMAT_040 | !Y4!MN0!D0 | 19980113 |
表 6-4 「事前定義の出力時刻形式」 に,事前定義の時刻形式の論理名,形式,およびその形式を使用して生成した出力例を示します。
表 6-4 事前定義の出力時刻形式 時刻形式の論理名 | 形式 | 例 |
---|
LIB$TIME_FORMAT_001 | !H04:!M0:!S0.!C2 | 09:13:25.14 |
LIB$TIME_FORMAT_002 | !H04:!M0:!S0 | 09:13:25 |
LIB$TIME_FORMAT_003 | !H04.!M0.!S0 | 09.13.25 |
LIB$TIME_FORMAT_004 | !H04 !M0 !S0 | 09 13 25 |
LIB$TIME_FORMAT_005 | !H04:!M0 | 09:13 |
LIB$TIME_FORMAT_006 | !H04.!M0 | 09.13 |
LIB$TIME_FORMAT_007 | !H04 !M0 | 09 13 |
LIB$TIME_FORMAT_008 | !HH4:!M0 | 9:13 |
LIB$TIME_FORMAT_009 | !HH4.!M0 | 9.13 |
LIB$TIME_FORMAT_010 | !HH4 !M0 | 9 13 |
LIB$TIME_FORMAT_011 | !H02:!M0 !MIU | 09:13 AM |
LIB$TIME_FORMAT_012 | !HH2:!M0 !MIU | 9:13 AM |
LIB$TIME_FORMAT_013 | !H04!M0 | 0913 |
LIB$TIME_FORMAT_014 | !H04H!M0m | 09H13m |
LIB$TIME_FORMAT_015 | kl !H04.!M0 | kl 09.13 |
LIB$TIME_FORMAT_016 | !H04H!M0' | 09H13' |
LIB$TIME_FORMAT_017 | !H04.!M0 h | 09.13 h |
LIB$TIME_FORMAT_018 | h !H04.!M0 | h 09.13 |
LIB$TIME_FORMAT_019 | !HH4 h !MM | 9 h 13 |
LIB$TIME_FORMAT_020 | !HH4 h !MM min !SS s | 9 h 13 min 25 s |
6.7.4 言語と日付/時刻形式のユーザ定義 | |
ユーザは,次の例のように,SYS$LANGUAGE 論理名を定義して,言語を選択することができます。
$ DEFINE SYS$LANGUAGE FRENCH
|
ユーザは,次の例のように,LIB$DT_FORMAT 論理名を定義して,日付/時刻形式を指定することもできます。
$ DEFINE LIB$DT_FORMAT LIB$DATE_FORMAT_002, LIB$TIME_FORMAT_006
|
システムをインストールし,カスタマイズした場合は,システム・ディスクのバックアップを作成することをお勧めします。
11.17 項 「システム・ディスクのバックアップと復元」 を参照してください。
VAX システムの場合,コンソール・ボリュームのバックアップを取ってください。
コンピュータにコンソール記憶デバイスがある場合は,
オリジナルが壊れた場合のためにコンソール・ボリュームのバックアップ・コピーを取ってください。
OpenVMS オペレーティング・システムの SYS$UPDATE ディレクトリには,コンソール・ボリュームを空きボリュームにコピーする CONSCOPY.COM というコマンド・プロシージャが用意されています。
コンソール・ボリュームのバックアップ手順は,コンピュータによって異なります。
バックアップの具体的な方法については,
使用している VAX コンピュータのアップグレードとインストレーションに関するマニュアルを参照してください。
SYSMAN CONFIGURATION コマンドを使用して,
OpenVMS Cluster システムのシステム時刻を管理することができます。
表 6-5 「SYSMAN CONFIGURATION コマンド」 は,CONFIGURATION の各コマンドとそれらの機能を示します。
表 6-5 SYSMAN CONFIGURATION コマンド コマンド | 機能 |
---|
CONFIGURATION SET TIME | システム時刻の更新 |
CONFIGURATION SHOW TIME | 現在のシステム時刻の表示 |
6.9.1 システム時刻の変更 | |
CONFIGURATION SET TIME コマンドを使用して,
OpenVMS Cluster システムにある複数のノードについて,
また,個々のノードについて,システム時刻を変更することができます。
時刻の値は,次の形式で指定します。
[dd-mmm-yyyy[:]] [hh:mm:ss.cc]
デルタ時間値を入力することもできます。
時刻形式については,『OpenVMS ユーザーズ・マニュアル』を参照してください。
クラスタ環境では,SYSMAN を使用して,各ノードの時刻を指定した値に設定します。
ただし,値を指定しなければ,SYSMAN を実行しているノードのクロックを SYSMAN が読み取って,この値をクラスタの全ノードに割り当てます。
リモート・クラスタでは,SYSMAN がクラスタのターゲット・ノードのクロックを読み取って,その値をクラスタの全ノードに割り当てます。
プロセッサによっては,タイム・オブ・イヤー・クロックも選択できます。
詳細については,プロセッサのハードウェア・ハンドブックを参照してください。
SYSMAN は,クラスタの全部のプロセッサを同じ時刻に設定しようとします。
通信および処理遅延があるので,クロックを正確に同期化させることは不可能ですが,その差は,通常,100 分の数秒以下です。
SYSMAN が設定した時刻と指定した時刻の誤差が,1/2 秒を超える場合は,
すぐに応答できないノードの名前が,警告メッセージで届けられます。
各プロセッサのクロックが少しずつずれているため,クラスタを構成するメンバの時刻が異なるということがよく起こります。
最初の 2 つの例は,クラスタ内で,システム時刻を同期化する方法を示します。
例
-
次のプロシージャは,全部のクラスタ・ノードの時刻を,
ローカルのタイム・オブ・ザ・イヤー・クロックから取得した時刻に設定し,
6 時間おいてから,クラスの時刻を再設定します。
$ SYNCH_CLOCKS:
$ RUN SYS$SYSTEM:SYSMAN
SET ENVIRONMENT/CLUSTER
CONFIGURATION SET TIME
EXIT
$ WAIT 6:00:00
$ GOTO SYNCH_CLOCKS
|
-
次の例では,環境を NODE21,NODE22,および NODE23 に設定し,
特権を設定した後,3 つのノードすべてでシステム時刻を変更します。
SYSMAN> SET ENVIRONMENT/NODE=(NODE21,NODE22,NODE23)
SYSMAN> SET PROFILE/PRIVILEGE=LOG_IO
SYSMAN> CONFIGURATION SET TIME 12:38:00
|
-
次の例では,環境をクラスタに設定し,すべてのノードのシステム時刻を表示します。
SYSMAN> SET ENVIRONMENT/CLUSTER/NODE=NODE23
SYSMAN> CONFIGURATION SHOW TIME
System time on node NODE21: 19-APR-2001 13:32:19.45
System time on node NODE22: 19-APR-2001 13:32:27.79
System time on node NODE23: 19-APR-2001 13:32:58.66
|
6.9.1.1 1 月 1 日以降のシステム時刻の再設定
システムがシステム時刻を維持するために使用されるタイム・オブ・デイ・レジスタ (TODR) には,約 15 ヶ月の制限があるので,
1 月 1 日~ 4 月 1 日の間にシステム時刻を再設定する必要があります。
再設定を行わなければ,
次の問題が発生する可能性があります。
-
その年ではじめて OpenVMS Cluster システムまたはシステムの 1 つのノードを再起動すると,1 つ以上のノードが,次のシステム時刻を表示する。
-
-
将来の年の時刻。
これにより,パスワードが期限切れになるなどの問題が生じることがある。
-
正しい時刻を表示するが,SHOW SYSTEM コマンドを実行すると,
システムが 1800 年代から稼働していると表示される。
-
システムの起動時にシステム時刻を修正しても,次の問題が残る。
-
SHOW SYSTEM コマンドにより,1800 年代といった誤った起動日付が表示される。
-
エラー・ログ・レポート (ERRLOG) で,エラーが将来の年で表示される。
-
バッチ・ジョブが,次の年以降に実行されるようになっている。
-
TODR には,約 15 ヶ月の制限があるので,
システムは,TODR の値をベース・システム・イメージ (SYS$LOADABLE_IMAGES:SYS.EXE) に記録されたベース時間と組み合わせることで時刻を維持します。
ベース時刻の定義は,次のようになります。
01-JAN-CURRENT_YEAR 00:00:00.00
|
普通,TODR はすべて同じベースを持つので,複数の CPU を同じシステム・ディスクから起動してすることができます。
また,1 つの CPU で複数のシステム・ディスクが使用でき,
システムが時刻を正確に設定します。
時刻を指定して,または指定せずに SET TIME コマンドを実行すると,
OpenVMS は,次の動作を行います
-
現在の時刻をシステム・イメージ・ファイルへ書き込む。
-
TODR を現在の年内のオフセットとして再設定する。
OpenVMS Cluster システム (またはクラスタに属さないノード) では,
時刻を設定すると,システムの TODR とベース時刻が,新しい年の値を使用して再設定されます。
ただし,複数のシステムがそのシステム・イメージを共有します。
新年の最初の日よりも後でなければ,普通,これにより問題が生じることはありません。
12 月には,それぞれのノードが,非常に大きなオフセット (その年の 1-JAN というベース時刻からの) を TODR に格納しています。
新年が明けても,システムイメージには前年の時刻が入っているので,
TODR の値は大きいままです。
1 月 1 日を過ぎて,任意のノード (または SHUTDOWN.COM によってシャットダウンされたノード) で SET TIME コマンドを実行すると,次のイベントが発生します。
-
新年がベース年になる。
-
システムが,そのノードで TODR を再設定する。
-
それ以外のノードの TODR に大きな値が入っている。
これら 3 つのイベントが生じた後に,大きな TODR を持つノードがクラッシュし,
クラスタに再参加すると,TODR の大きな値が新しい年に適用され,
そのシステム時刻が最初,1 年先に設定されます。
このシステム時刻は,システムの起動時刻として記録されます。
ノードがクラスタに参加すると,時刻は正しい値に設定されますが,
起動時刻は 1 年先の日付のままです。
一部の SHOW SYSTEM コマンドは,現在の時刻と起動時刻を比較します。
この例では,SHOW SYSTEM を実行すると,誤った値が表示されます。
複数の CPU が,その時々で同じシステム・ディスクを使用する場合,
または同じ CPU が複数のシステム・ディスクを使い分ける場合,
CPU の TODR とシステム・ディスクに記録された値の同期のずれ方によっては,
次のように,システムが時刻を誤って 1 年先または 1 年前に設定することがあります。
-
複数の CPU が 1 つのシステム・ディスクを共有すると,時刻が 1 年先に進む。
-
1 つの CPU が複数のディスクを使用すると,時刻が 1 年前に戻る。
例次の例では,SYSMAN コマンドを使用して,OpenVMS Cluster システム上の全部のノードで時刻を再設定します。
$ RUN SYS$SYSTEM:SYSMAN
SYSMAN> SET ENVIRONMENT/CLUSTER
SYSMAN> SET PROFILE/PRIVILEGE=(LOG_IO,SYSLCK)
SYSMAN> CONFIGURATION SET TIME 05-JAN-2001:12:00:00
SYSMAN> EXIT
|
|