NASサーバーとは、HDDやSSDといったストレージ機能に特化したサーバーで、大量のデータを保存・管理してくれます。特に、複数のディスクがあれば、RAIDとよばれる技術が利用できるため、故障した際に、HDD等のディスクを交換するだけですぐにデーターを復旧できます。本記事ではQNAP社製のNASサーバーの活用事例を報告します。
本記事の読者層は以下の方を想定しています。
- QNAPのストレージサーバーをSSHで接続したい方
- QNAPのLinux構造を知りたい方
NASサーバーとは?
台湾のQNAP(キューナップ)システムズは、家庭用や中小企業向けに魅力的なNAS (Network Attached Storage) serverを多数販売している会社です。その社名の由来は” Quality Network Appliance Provider” からきています。
NASサーバーとは、HDDやSSDといったストレージ機能に特化したサーバーで、大量のデータを保存・管理してくれます。特に、複数のディスクがあれば、RAID (Redundant Array of Inexpensive Disks)とよばれる技術が利用できるため、故障した際に、HDD等のディスクを交換するだけですぐにデーターを復旧できます。
私も2006年からQNAPのNASサーバーに長い間お世話になっており最近では2代目のNASサーバーを購入してデータ移行しました。一台目は長い間使用していたのですが電源部分に問題が発生したため頻繁に落ちるようになり新規購入した次第です。
このようなNASサーバーは、外部ストレージとして魅力的な製品です。メインサーバー機単独でデーター管理した際、不慮な事故からデータ破損があった場合、バックアップストレージディスクとして利用できます。サーバー機能の分散タスクの一環です。
今回は、こんなNASサーバーをメインサーバ-のバックアップにどのように利用できるか検証してみました。
QNAP社のNASサーバーの概要
今回、使用するNASサーバーは
QNAPのNASサーバー:TS673A (AMD Ryzen quadc-re 2.2 GHz)
特徴
- 6ベイのNASサーバー
- M.2.SSDが2つ搭載可能
- 柔軟なPCIe拡張 等
HDDが6つ接続可能なので、8GBのHDDであれば6台で48GBも詰める大容量NASサーバーです。
このNASサーバーはファイルサーバーとしてはとても優秀なので、メインサーバー機のバックアップ用に利用できるか検討してみます。
方法として、アナログ的ですが、メインサーバー機からSSH経由でNASサーバーのファイルを転送する方法を考えてみました。以下が検証過程です。
- QNAPへSSH接続ができるかどうか?
- NASサーバー機の共有フォルダがどこにあるか?
- NAS側にTarコマンドが存在するかどうか?
QNAPへSSH接続する方法
QNAPの電源投入後、http://○○○○:8080にてQNAPのログイン画面から「admin」でログインします。
ControlPanelへ移動して「SSH接続を許可する」にチェックを入れます。SFTPを有効にするにもチェックを入れます。
その後、メインのserver側からログインしてみます。
ユーザーは「admin」しかSSH接続が許可されていないため、以下のようにログインする。(192.168.12.2はNASサーバーのIPアドレス)
$ssh admin@192.168.12.2
その後、すぐに「Console Management -Main menu」が現れる。ここで特にすることはないので、「Q:quit」を押し次に進みます。
更に、ノーマルシェルモードに戻るか聞かれますので、「Y」を押します。
すると以下のようなコマンド画面になります。
[~] #
まず、QNAPのディストリビューションを確認してみると以下のようになります。どうもqnapオロジナルのようですがLinuxマシンであることはわかります。
[~] #uname -a
Linux AYANAMI 5.10.60-qnap #1 SMP Tue May 31 09:15:32 CST 2022 x86_64 GNU/Linux
QNAPのOSは、GNU/Linux系でversion 5.10.60でした。(最近バージョンアップしてないかも。)
[~] #cat /proc/version
Linux version 5.10.60-qnap (root@XXXXXXXXXX) (x86_64-QNAP-linux-gnu-gcc (toolchain config: [gcc-4.9.2 binutils-2.25 glibc-2.21]) 4.9.2, GNU ld (GNU Binutils) 2.25) #1 SMP Tue May 31 09:15:32 CST 2022
x86_64-QNAP-linux-gnu-gcc (toolchain config: [gcc-4.9.2 binutils-2.25 glibc-2.21]) 4.9.2
コマンドプロンプトからは、他のサーバーへssh接続できることも確認できまました。
例えば、QNAPサーバー(IP=192.168.12.10)へ「user」でアクセスする場合、以下の方法SSH接続ができます。
[~] #ssh user@192.168.12.10
QNAPのNASサーバーに保存したファイルはどこにあるのか?
QNAPのNASサーバーでは、通常ControlPanelから共有フォルダを作成する。
この共有フォルダの保存場所は、SSH接続で内部ディレクトリを確認したところ、「/share」の中に格納されていることがわかる。
例えば、
Publicというフォルダ名が共有フォルダで出来ていれば、[Public]
Public2というフォルダ名が共有フォルダで出来ていれば、[Public2]
がlsコマンドで確認できる。これでアクセスは可能です。
実際のQNAPのディレクトリ構造は「./」の最上階から以下のようになっている。
==============QNAP==============
bin/
etc/
lib/
mnt/
opt/
proc/
rpc/
samba_third_party/
share/
tmp/
var/
dev/
flashfs_tmp/
home/ l
lost+found/
new_root/
root/
run/
sbin/
sys/
usr/
QNAP内のサーバーで使えるコマンド
QNAPのNASサーバーで使えるコマンドを一覧にするコマンド
for x in ${PATH//:/ }; do ls -1 $x; done | sort | uniq
から調べると、SSHだけでなく、Tarやftpさらにはpython(2&2.7)も使えるようです。
QNAPにはX11がないのか、以下のようなエラーは発生する
/bin/ls: cannot access /usr/bin/X11: No such file or directory
まとめ
メインサーバーからQNAPへサーバー経由でバックアップデータを送ることができるようです。
次回の記事をご期待下さい。どうぞよろしくお願いいたします。
コメント