3.1.3 JP1/FTPの環境を環境変数で定義する
JP1/FTPの環境設定の一部を,OSの環境変数で定義できます。環境変数が設定された環境から,JP1/FTPデーモン(jftsd)を起動することによって,設定内容が有効になります。なお,自動起動時に設定する場合は,自動起動スクリプト内で環境変数を定義してください。
- 〈この項の構成〉
(1) 設定できる環境変数
設定できる環境変数を次の表に示します。
- 注※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