ヤマハ仮想ルーター ファイルシステム

$Date: 2021/01/28 05:20:24 $

  1. 1. 概要
  2. 2. 注意事項
  3. 3. 詳細
  4. 4. コマンド
  5. 5. SYSLOG メッセージ
  6. 6. 関連情報

1. 概要

ヤマハ仮想ルーターのファイルシステムには、自由に使用できるユーザー領域があります。

ルートディレクトリ "/" の配下にディレクトリ構造を構築したり、TFTP、SFTP、SCP などで任意のファイルを保存することができます。

主な用途としては、Luaスクリプト機能のスクリプトファイルの保存が挙げられます。また、外部ストレージをマウントすることができます。外部ストレージをマウントすることで、SYSLOG ファイルを外部ストレージに保存することができます。


2. 注意事項


3. 詳細

ユーザー領域の仕様

ユーザー領域の仕様は以下の通りです。

書き込み可能容量 2 GB
1ファイルの最大サイズ 書き込み可能容量と同等
ファイル、ディレクトリ数の上限 無制限
ファイル名、ディレクトリ名の長さの上限 255 文字
ファイル名、ディレクトリ名に使用できる文字
半角アルファベット (A-Z、a-z)
半角数字 (0-9)
ハイフン '-'、アンダースコア '_'、ピリオド '.'

ディレクトリ構成

初期状態ではルートディレクトリ "/" の配下に以下のディレクトリが作成してあります。

ディレクトリ名 説明
/ssh SSHサーバーの公開鍵情報を格納する
/yamaha_sys SYSLOG ファイル、SYSLOG のバックアップファイル、仮想ルーターインスタンスのユーザーデータ情報ファイルなどを格納する
/yamaha_sys ディレクトリは削除できない
/lost+found ファイルシステムの整合性を保つための情報を格納する
/lost+found ディレクトリに対するファイル操作は行えない

/yamaha_sys ディレクトリには SYSLOG ファイルとバックアップファイルが常時保存されています。初期設定ではユーザー領域を最大で 110 MB 使用します。SYSLOG ファイルの最大サイズやバックアップファイルの最大数は syslog file コマンドで変更できます。SYSLOG ファイルの保存の詳細は「SYSLOG ファイルの保存」を参照してください。

ディレクトリの作成

make directory コマンドで任意のディレクトリを作成できます。

# make directory /user

ディレクトリの内容の表示

show file list コマンドで任意のディレクトリの内容を表示できます。

# show file list /
2019/09/11 16:28:47 <DIR>           ssh
2019/09/12 17:36:41 <DIR>           user
2019/09/11 15:52:58 <DIR>           yamaha_sys

仮想ディレクトリ

SFTP でルーターに接続した場合は、以下の仮想ディレクトリにアクセスできます。SFTP の詳細は SFTP サーバー機能を参照してください。

ディレクトリ名 説明
/mount マウントした外部ストレージにアクセスするディレクトリを格納する
外部ストレージをマウントしていない場合は見えない
/system CONFIG ファイルと techinfo を格納する

ルーターの CONFIG ファイルや外部ストレージに保存されているファイルを SFTP で GET/PUT することができます。

外部ストレージのマウント

外部ストレージをマウントすることができます。

マウントに対応しているプロトコルは以下のとおりです。

プロトコル バージョン 備考
NFS NFSv2、NFSv3、NFSv4 NFSv4 の Kerberos 認証は未対応
SMB SMB2.0

外部ストレージは合計で 10 個までマウントできます。

NFS使用時の注意事項

NFS でマウントしたファイルシステムに対する操作は root権限 (uid:0, gid:0) で行われます。
このため、作成 または 変更 したファイルにアクセスするためには同様に root権限 が必要になります。

外部ストレージをマウントする

mount コマンドで外部ストレージをマウントできます。プロトコルによって mount コマンドの書式が異なります。

プロトコル 書式
NFS mount NFS_IF [PREFIX]
SMB mount SMB_IF username=USERNAME password=PASSWORD [PREFIX]

mount コマンドの入力例を以下に示します。

  1. 例1. 外部ストレージ (192.168.100.100) の /share ディレクトリを NFS でマウント、プレフィックスに server: を指定する
    # mount nfs://192.168.100.100/share server:
    外部ストレージをマウントしました
  2. 例2. 外部ストレージ (10.10.10.10) の /example ディレクトリを SMB (ユーザー名: user、パスワード: pass) でマウント、プレフィックスは自動で設定する
    # mount smb://10.10.10.10/example username=user password=pass
    外部ストレージをマウントしました

外部ストレージをマウントしたときに設定したプレフィックスは show status storage interface コマンドで確認できます。

# show status storage interface
INTERFACE                                   FILESYSTEM  PREFIX
-------------------------------------------------------------------------------
192.168.100.100:/share                      nfs         server:
//10.10.10.10/example                       cifs        smb001:

ルーターが再起動すると、マウントした外部ストレージはすべてアンマウントされます。schedule at コマンドで startup に mount コマンドを設定することで、ルーター起動時に外部ストレージをマウントできます。schedule at コマンドの詳細はコマンドリファレンスを参照してください。

外部ストレージをアンマウントする

unmount コマンドで外部ストレージをアンマウントできます。プロトコルによる違いはありません。

アンマウントする外部ストレージはマウントしたときに設定したプレフィックスで指定します。

例えば、プレフィックスが server: である外部ストレージをアンマウントする場合は以下のように入力します。

# unmount server:
外部ストレージをアンマウントしました

外部ストレージのパスを指定できるヤマハルーターのコマンド

ヤマハルーターの以下のコマンドでマウントした外部ストレージのパスを指定できます。コマンドの詳細はコマンドリファレンスを参照してください。

ヤマハルーターのコマンドで外部ストレージのパスを指定する場合はパスの先頭に外部ストレージのプレフィックスを付与します。

例えば、show file list コマンドでプレフィックスが server: である外部ストレージの /temp ディレクトリの内容を表示する場合は以下のように入力します。

# show file list server:/temp
2019/09/12 15:43:08 <DIR>           dir
2019/09/12 16:29:53               5 file.txt

マウントした外部ストレージと通信ができない状態で外部ストレージにアクセスした場合はタイムアウトエラーとなります。タイムアウト時間はプロトコルによって異なります。

プロトコル タイムアウト時間
NFS 約 100 秒
SMB 約 30 秒

SYSLOG ファイルの保存

ルーターの SYSLOG は /yamaha_sys ディレクトリに SYSLOG ファイルとして常時保存されています。ファイル名や上限サイズなどを任意に設定したり、暗号化して保存することができます。

mount コマンドでファイルサーバーをマウントして、ファイルサーバーに直接 SYSLOG ファイルを保存することもできます。

/yamaha_sys ディレクトリへの保存

ルーターの SYSLOG は syslog file コマンドの設定に従って、/yamaha_sys ディレクトリに常時保存されます。

syslog file コマンドでは以下の項目が設定できます。

項目 初期値
SYSLOG を暗号化して保存するか否か 暗号化しない
SYSLOG ファイルの名前 syslog.txt
SYSLOG ファイルの上限サイズ 10 MB
バックアップファイルの上限数 10
SYSLOG をファイルに書き出す間隔 3600 秒
SYSLOG をファイルに書き出す行数 1000 行

ルーターの SYSLOG は以下のタイミングで SYSLOG ファイルに書き込まれます。

SYSLOG ファイルのサイズが上限サイズに達するとバックアップファイルを作成します。バックアップファイル名は SYSLOG ファイル名にバックアップ日時 (_yyyymmdd_hhmmss) を付与した名前となります。

バックアップファイルの数が上限数に達した場合は、最も古いバックアップファイルを削除してから新しいバックアップファイルを作成します。

show log file コマンド で /yamaha_sys ディレクトリに保存されている SYSLOG ファイルとバックアップファイルの内容を表示できます。ただし、暗号化されているファイルは表示できません。

SYSLOG を暗号化して保存している場合、 SYSLOG ファイルは PC 上で RT-FileGuard を使用して復号できます。

ファイルサーバーへの保存

syslog mount-server filename コマンドを設定すると、SYSLOG を mount コマンドでマウントしたファイルサーバーに保存できます。

syslog mount-server filename コマンドが設定されていても、ファイルサーバーがマウントされていない状態では SYSLOG は保存されません。

syslog mount-server filename コマンドでは以下の項目が設定できます。

項目
SYSLOG ファイルを保存するディレクトリとファイルの名前
SYSLOG を暗号化して保存するか否か
SYSLOG ファイルの上限サイズ
バックアップファイルの上限数

ルーターの SYSLOG を SYSLOG ファイルに書き込むタイミングは syslog file の設定に従います。/yamaha_sys ディレクトリの SYSLOG ファイルの書き込みとファイルサーバーの SYSLOG ファイルの書き込みは同じタイミングとなります。

SYSLOG ファイルのサイズが上限サイズに達するとバックアップファイルを作成します。バックアップファイル名は SYSLOG ファイル名にバックアップ日時 (_yyyymmdd_hhmmss) を付与した名前となります。

バックアップファイルの数が上限数に達した場合は、最も古いバックアップファイルを削除してから新しいバックアップファイルを作成します。

SYSLOG を暗号化して保存している場合、 SYSLOG ファイルは PC 上で RT-FileGuard を使用して復号できます。


4. コマンド


5. SYSLOG メッセージ

ファイルシステムに関連する SYSLOG メッセージを以下に示します。

レベル 出力メッセージ 意味
DEBUG Mounted a external storage (prefix). 外部ストレージをマウントした
prefixは外部ストレージにアクセスするときにパスの先頭に付与するプレフィックス
Mount error. 外部ストレージをマウントできなかった
Unmounted a external storage (prefix). 外部ストレージをアンマウントした
prefixは外部ストレージにアクセスするときにパスの先頭に付与するプレフィックス
Unmount error. 外部ストレージをアンマウントできなかった

6. 関連情報


[EOF]