Hitachi

JP1 Version 12 JP1/File Transmission Server/FTP(UNIX(R)用)


3.1.3 JP1/FTPの環境を環境変数で定義する

JP1/FTPの環境設定の一部を,OSの環境変数で定義できます。環境変数が設定された環境から,JP1/FTPデーモン(jftsd)を起動することによって,設定内容が有効になります。なお,自動起動時に設定する場合は,自動起動スクリプト内で環境変数を定義してください。

〈この項の構成〉

(1) 設定できる環境変数

設定できる環境変数を次の表に示します。

表3‒2 環境変数一覧

環境変数名

JP1FTS_LS_OPTION

LISTコマンドに対するJP1/FTPデーモンの応答(出力)に使用されるlsコマンドのオプションを設定できます。

lsコマンドに指定できるオプション(32文字以内)

指定したオプションを使用します。

指定なし

次のオプションを使用します。

HP-UXの場合:-l

Solarisの場合:-lg

AIXの場合:-lA

Linuxの場合:-lA

注意事項

オプションの初めに,「−」を指定してください。

JP1FTS_LS_LANG※1

LISTコマンドに対するJP1/FTPデーモンの応答(出力)に使用されるlsコマンドの表示言語を設定できます。

環境変数LANGに指定できる値(32文字以内)

指定した表示言語を使用します。

指定なし

JP1/FTPデーモン起動時の表示言語を使用します。

JP1FTS_AUTO_STDIO

自動起動プログラム(プロセス)の標準入出力およびエラー出力を指定できます。

パス名

指定したパス名を標準入出力およびエラー出力に割り当てます。

指定なし

標準入出力およびエラー出力はクローズされた状態になります。

注意事項

オープンできない場合は,クローズされた状態になります。

JP1FTS_AUTO_STDIO_OP

環境変数JP1FTS_AUTO_STDIOでパス名を指定した場合,出力先をオープンするとき,プロセスの権限に依存しないで強制的にオープンするかを設定できます。

ON(文字列ONを指定する)

強制的にオープンします。

指定なし

プロセスの権限に従います。

JP1FTS_PRIVILEGE_ADDITION

自動起動プログラム(プロセス)の実ユーザIDが0になるように指定できます。※2

ON(文字列ONを指定する)

実ユーザIDを0にします。

Linux版の場合は,実効ユーザIDも0になります。

指定なし

実ユーザIDを実効ユーザIDに合わせます。

JP1FTS_LARGEFILE

サイズが最大4ギガバイト−(マイナス)1バイトまでのファイルの伝送ができるよう設定ができます。※3,※4,※7

ON(文字列ONを指定する)

サイズが最大4ギガバイト−(マイナス)1バイトまでのファイルを伝送できます。

指定なし

サイズが最大2ギガバイト以上のファイルの伝送ができません。

JP1FTS_LARGEFILE2

伝送できるファイルのサイズを制限しないで,4ギガバイト以上のファイルを伝送できるようにする設定です。※4,※5,※6,※7

ON(文字列ONを指定する)

伝送ファイルサイズを制限しません。環境変数JP1FTS_LARGEFILEの設定は無視します。

指定なし

環境変数JP1FTS_LARGEFILEの設定に従います。

JP1FTS_CONREFUSELOG

接続ホスト制限機能により拒否した接続の記録をアクセスログに出力するかを設定します。

ON(文字列ONを指定する)

拒否した接続の記録をアクセスログに出力します。

指定なし

拒否した接続を記録しません。

JP1FTS_CSUPPLEGROUP

クライアント側でセカンダリグループを使用するかを設定します。

ON(文字列ONを指定する)

セカンダリグループを使用します。

指定なし

セカンダリグループを使用しません。

JP1FTS_WKPORT_ENABLE

FTPサーバ側でPORTコマンドにwell-knownポート(0〜1023)が指定された場合,接続を許可するかを設定できます。

ON(文字列ONを指定する)

well-knownポートへの接続を許可します。

指定なし

well-knownポートへの接続を拒否します。

JP1FTS_ANOTHER_ADDRESS_ENABLE

FTPサーバ側でPORTコマンドに制御コネクションを確立したクライアント(IPアドレス)以外が指定された場合,接続を許可するかを設定できます。

ON(文字列ONを指定する)

制御コネクションを確立したクライアント以外への接続を許可します。

指定なし

制御コネクションを確立したクライアント以外への接続を拒否します。

JP1FTS_MASK_CHMOD

FTPサーバ側でSITE CHMODコマンドの受信を抑止するかを設定できます。※8

ON(文字列ONを指定する)

SITE CHMODコマンドの受信を抑止します。

指定なし

SITE CHMODコマンドの受信を抑止しません。

JP1FTS_MASK_PORT

FTPサーバ側でPORTコマンドの受信を抑止するかを設定できます。※8

ON(文字列ONを指定する)

PORTコマンドの受信を抑止します。

指定なし

PORTコマンドの受信を抑止しません。

JP1FTS_MASK_EPRT

FTPサーバ側でEPRTコマンドの受信を抑止するかを設定できます。※8

ON(文字列ONを指定する)

EPRTコマンドの受信を抑止します。

指定なし

EPRTコマンドの受信を抑止しません。

JP1FTS_AUTO_SIGNALMASK_DELETE

伝送終了後に起動するプログラム側で,SIGHUP,SIGCHLD,SIGTERMシグナルを受信できるように設定できます。※9

ON(文字列ONを指定する)

シグナルを受信できるようにします。

指定なし

シグナルを保留します。

JP1FTS_C_WKPORT_ENABLE

FTPクライアント側で,PASVコマンド発行後にFTPサーバ側から受け取ったポート番号にwell-knownポート(0〜1023)が指定された場合,接続を許可するかを設定できます。

ON(文字列ONを指定する)

well-knownポートへの接続を許可します。

指定なし

well-knownポートへの接続を拒否します。

JP1FTS_C_ANOTHER_ADDRESS_ENABLE

FTPクライアント側で,PASVコマンド発行後にFTPサーバ側から受け取ったIPアドレスに制御コネクションを確立したサーバ(IPアドレス)以外が指定された場合,接続を許可するかを設定できます。

ON(文字列ONを指定する)

制御コネクションを確立したサーバ以外への接続を許可します。

指定なし

制御コネクションを確立したサーバ以外への接続を拒否します。

JP1FTS_CLMAXOVER_MES

FTPサーバで最大同時伝送数を超える要求を受けた場合に,システムログにメッセージを出力するかを設定できます。

ON(文字列ONを指定する)

メッセージを出力します。

指定なし

メッセージを出力しません。

JP1FTS_FILE_EXCLUSION

伝送ファイルに排他を掛けるかを設定できます。※10

ON(文字列ONを指定する)

伝送ファイルに排他を掛けます。

指定なし

伝送ファイルに排他を掛けません。

JP1FTS_RECV_SYNC

次に示す契機で同期をとってディスクにデータを反映するかを設定できます。※11

  • 伝送ファイルの受信完了

  • 伝送履歴およびイベントログのファイルへの書き込み完了

ON(文字列ONを指定する)

ディスクへデータを反映します。

指定なし

ディスクへデータを反映しません。

JP1FTS_HPUX_LONGPASSWORD

FTPサーバ側でHP-UXのLongPassword機能を使用する場合に設定します。

ON(文字列ONを指定する)

LongPassword機能を使用する。

指定なし

LongPassword機能を使用しない。

注※1

AIXでは,lsコマンドの仕様によって,JP1FTS_LS_LANGの設定値にかかわらず,日付は英語で表示されます。

注※2

ONを指定した場合,自動起動プログラム(プロセス)は,一般ユーザで起動されても,スーパーユーザになることができます。

注※3

ONを指定した場合,次に示す注意事項があります。

  • 4ギガバイトを超えるファイルを伝送するとエラーになります。

  • Windowsとのファイル伝送では,Windows側にASCIIモードでファイルを送信すると,送信するファイルが4ギガバイト未満のサイズであってもWindows側では4ギガバイトを超えるファイルになることがあります。このため,Windows側FTPにJP1/FTPを使用した場合,Windows版JP1/FTPでの伝送ファイルサイズの上限値を超えて伝送をする場合があります。

注※4

次に示す条件が重なる場合,FTPクライアントでタイムアウトが発生し,伝送が異常終了することがあります。

  • JP1/FTP同士の伝送。

  • FTPサーバからFTPクライアントへのファイル伝送。

  • 長大サイズのファイルを伝送。

  • ASCIIモード。

  • サイズ確認機能を使用。

これは,FTPサーバ側でのファイルサイズ計算に時間が掛かり,応答電文を返すのが遅れるためです。この場合,データ受信待ちタイムアウトの時間を長くするか,サイズ確認機能を不使用で伝送してください。

注※5

JP1/FTPでのサイズ制限はしませんが,OS上の制限で伝送できない場合があります。

注※6

伝送サイズが4ギガバイト以上になる場合,次に注意してください。

  • APIライブラリを使用したUPで伝送ファイルサイズを参照している場合,修正が必要です。詳細は「7. APIライブラリ」を参照してください。

  • ftshistoryコマンドの一覧表示形式では,伝送サイズの表示桁数が多くなるとカラムがずれる場合があります。

  • 10-00より前のバージョンの運用管理エージェントは4ギガバイト以上の伝送サイズに対応していません。このため,10-00より前のバージョンの運用管理エージェントと接続している場合,伝送サイズが4ギガバイト以上になった伝送履歴を参照すると,実際の伝送サイズより小さい値になります。

注※7

送信ファイルは2ギガバイト未満であっても,2ギガバイト以上の受信ファイルがすでに存在する場合,その受信ファイルがあるマシン上で本環境変数が指定されていないとエラーとなります。

注※8

ONを指定した場合,FTPサーバは該当コマンドを受信すると,「500 'コマンド名': command not understood.」メッセージをFTPクライアントに応答します。

なお,該当コマンドのヘルプは無効にはなりません。

注※9

デフォルトでは,伝送終了時の自動起動プログラムは,SIGHUP,SIGCHLD,SIGTERMをsighold()でマスクした状態で起動されます。このため,伝送終了時の自動起動プログラムは,これらのシグナルを受信すると,シグナルを保留します。

注※10

ONを指定した場合,送信中のファイルに対して受信したり,受信中のファイルを送信したりすることはできませんが,同じファイルを同時に送信することは可能です。

注※11

ディスクへのデータ反映は本来OSがタイミングを取って実施します。しかし,この機能ではJP1/FTPのタイミングで強制的に実施するようになります。このため,この機能を有効にした場合,性能面で次のような現象が現れる場合がありますので,使用には十分注意が必要です。

  • 無効の場合に比べ伝送性能が落ちるときがあります。

  • ほかのプログラムでのファイルアクセス性能に影響する場合があります。

(2) 定義例

(a) JP1FTS_LS_OPTIONの設定例

lsのオプションを[-lgA]にする例を次に示します。

(cshの場合)
>setenv JP1FTS_LS_OPTION -lgA
>ftsstart
(shの場合)
>JP1FTS_LS_OPTION=-lgA
>export JP1FTS_LS_OPTION
>ftsstart

(b) JP1FTS_LARGEFILE2の設定例

4ギガバイト以上のファイルを伝送できるようにする例を次に示します。

(cshの場合)
>setenv JP1FTS_LARGEFILE2 ON
>ftsstart
(shの場合)
>JP1FTS_LARGEFILE2=ON
>export JP1FTS_LARGEFILE2
>ftsstart