我が家のQNAP(NAS)の運用方法とディスク交換時にやったことまとめ
最近、自宅のNASのディスク容量が足りなくなってきたので大容量8TBのディスクに交換しました🙌
その際に、セットアップの手順など微妙に忘れていて戸惑ったので、普段の運用の内容と共にディスク交換時にやったことをまとめて記しておこうかと思います。
使っている機種と用途
使っているNASは QNAP TS-231P です。2年半ぐらい使ってますが全然不満ありません。
用途はファイルサーバー兼Plexサーバーで、ローカルMacの一部データのバックアップ先としても使っています。
構成としては以下のような感じです。
- ディスク1を共有フォルダとして使用
- Plex Media Serverもディスク1にインストール
- ディスク2はバックアップフォルダとして使用
- ローカルMacのデータのバックアップにも使いたいのでRAID1は使わず、別々のボリュームとして初期化してrsyncでバックアップ
Plexサーバーの運用方法
QNAPは もともとPlexに対応していて、管理画面のApp CenterでPlex Media Serverをインストールするだけで使うことができます。
管理画面でPlexをインストールすると、
/share/CACHEDEV1_DATA/.qpkg/PlexMediaServer/Library/Plex\ Media\ Server
このようなパスにライブラリ(メタデータ等の格納場所)が作られます。
CACHEDEV1_DATA
の部分はどのディスクにインストールしたかによって変わります- こちらのヘルプページ によると(
qnap
でページ内検索してみてください)、以下のコマンドでルートパスを調べることができます$ getcfg -f /etc/config/qpkg.conf PlexMediaServer Install_path
Plexのライブラリは大事なバックアップデータなので、僕は何となく見える場所に置いておきたいなと思って
- ライブラリの実体は共有フォルダ(例えば
plex
などのフォルダ名)直下に移動 - 上記パスにはsymlinkを作っておく
ということをやっています。
$ ln -sf /share/CACHEDEV1_DATA/plex/Plex\ Media\ Server /share/CACHEDEV1_DATA/.qpkg/PlexMediaServer/Library/Plex\ Media\ Server
rsyncによるバックアップ
QNAPは、sshでログインして直接いろいろなコマンドを実行したり、cronを仕込んだりできます。
なので、cronでrsyncによるバックアップ処理を定期実行するようにしています。
$ ssh {管理ユーザー名}@{QNAPのIPアドレスまたはホスト名}
xxx@xxx's password: {管理ユーザーパスワード}
でログインします。(管理ユーザーは、管理画面にログインするために使っているユーザーで大丈夫です)
cronの設定は
/etc/config/crontab
にあります。(参考)
僕の場合は、以下のような感じで1日おきにrsyncを夜間実行するようにしています。
0 1 * * 1,3,5 rsync -auvE --delete /share/CACHEDEV1_DATA/data/ /share/CACHEDEV2_DATA/backup/data
0 1 * * 1,3,5 rsync -auvE --delete /share/CACHEDEV1_DATA/plex/ /share/CACHEDEV2_DATA/backup/plex
僕の環境では、ディスク1(ボリューム1)が
/sahre/CACHEDEV1_DATA
、ディスク2(ボリューム2)が/sahre/CACHEDEV2_DATA
です。ご自身の環境でディレクトリ名がどうなっているかは実際に中身を覗いて確認してみてください。
crontabを変更したら、変更を適用するために忘れずにcrondを再起動しましょう。
$ /etc/init.d/crond.sh restart
vimが動かない?
QNAP内でviコマンドを実行すると
E437: terminal capability "cm" required
というエラーになることがあります。
この場合は
$ export TERM="xterm" # 先にこれをする
$ vi
とすれば正常に動作すると思います。
ローカルMacのバックアップ
QNAP内に仕込んだのと同様に、ローカルMacにも例えば以下のような感じでcronを仕込んであります。
# ~/Music/iTunes/ と ~/Movies/ を /Volumes/backup/mac 配下にrsync
0 1 * * 2,4,6 cd ~ ; rsync -auvER --delete Music/iTunes/ Movies/ /Volumes/backup/mac
ディスク交換時にやったこと
最後に、今回のディスク交換の際に具体的にやったことをメモがてら記しておきます。
1. 新しいディスクにボリュームを作成
- メニューから
ストレージ&スナップショット
を開く - サイドバー内の
ストレージ > ストレージ/スナップショット
を開く - 右上の
作成 > 新規ボリューム
をクリック -
静的ボリューム
を新しいディスクに容量MAXで作成
2. 新しいボリュームに共有フォルダを作成
- メニューから
File Station
を開く - 左のツリービューの
DataVol1
(など、今作ったボリューム)の右にある︙
から共有フォルダの作成
をクリックして共有フォルダを作成- 僕の場合は、今回は
data
plex
という2つの共有フォルダを作りました -
data
は汎用、plex
はPlexのライブラリの実体を置いておく用です
- 僕の場合は、今回は
なお、システムボリュームの場合、 Web
Public
Multimedia
Download
といったデフォルトの共有フォルダが自動で作られます。
邪魔なので削除しようと思ったのですが、どうやら削除することはできなくて、非表示にすることしかできないようです。(参考)
非表示にする方法は、
- メニューから
コントロールパネル
を開く -
権限設定 > 共有フォルダー
を選択 - 非表示にしたいフォルダの列の右端の
アクション
の中からプロパティの編集
をクリック -
ネットワークドライブの非表示
にチェックして保存
です👍
3. バックアップデータを新しいボリュームの共有フォルダにコピー
念のため、前のディスクを取り除く前に、バックアップデータを最新化するためにrsyncコマンドを1回実行しておきます。
その上で、ディスク交換後、バックアップデータを改めて新しいボリュームの共有フォルダにrsyncでコピーしました。
$ rsync -auvE --delete /share/CACHEDEV2_DATA/backup/data/ /share/CACHEDEV1_DATA/data
全部で数TBあってめちゃくちゃ時間がかかるので1日ぐらい待ちます。
注意点として、 このコピー作業をしている間は、QNAP内に仕込んでおいたcron経由のrsyncは実行されないようにしておく必要があります。
そうしないと、大事なバックアップデータが「無」で上書きされてしまうという悲劇が起きるので😱
crontabの該当行をコメントアウトした上で、 忘れずにcrondを再起動しておきましょう。
まとめ
- QNAPはPlexサーバーを簡単に導入できて便利
- QNAPはcronも仕込めるのでrsyncを定期実行するようにしておくとRAIDを組まなくてもバックアップ体制を作れる
Discussion