FreeNASからTrueNAS SCALEへアップグレードした話(防備録)
FreeNAS 11.3 から TrueNAS SCALE へのアップグレードを行ったので、作業記録を忘備録と言う名の防備録として残しておきます。
結論から言うと、無事に完了しました。ただし、やり方としては決して褒められたものではなく、正直かなり冷や汗ものの作業でした。
先に反省点
今回は、
めんどくさかったのでデータのバックアップは取らずに実行
ちょっと危険な判断でした。データの重要度にもよると思いますが、やはりこのやり方は避けるのが無難でしょうか。
結果的には問題ありませんでしたが、作業中は終始ヒヤヒヤで、手汗が止まりませんでした。
いくら面倒でも、バックアップは取るべきですね。これは声を大にして書いておきます。
アップグレードして良かったこと
- SCALEになりベースがLinuxになったので、コマンドの操作しやすくなった
- Docker使える
- WebUIがよりモダンになって、更に色々出来ることも増えた
- FreeNASの時は再起動のたびにSMBのパスワードが無効になるという症状があり、これの解決方法が分からずに面倒でしたが、これが無くなったこと
環境の変更点
Before / After
- Before
- FreeNAS-11.3-U5
- USBメモリ起動
- After
- TrueNAS SCALE 25.04.2.6
- Intel DC S3500 SSD 120GB(ブート用)
USBブートはそろそろ卒業したかったので、今回は手元にあった Intel DC S3500 を使いました。
事前準備
0. FreeNAS 設定ファイルの保存
System > 一般 > 設定ファイルのダウンロードがまだなら保存しておく。今回は結局使わないのですが、FreeNASに戻さなければならなくなった時に必要になるかもしれない、らしいです。
1. TrueNAS SCALE の ISO をダウンロード
公式サイトから TrueNAS SCALE の ISO イメージを取得します。
2. インストール用 USB を作成
Linux マシンで以下のように dd を使って作成しました。
sudo dd if=/path/to/TrueNAS-SCALE-25.04.2.6.iso of=/dev/sdX bs=1M status=progress
/dev/sdXの X は環境に合わせて必ず確認してください- 間違えると普通に事故ります
アップグレード手順
1. 既存 FreeNAS を停止
まず FreeNAS をシャットダウンします。
2. HDD の SATA ケーブルを一旦すべて抜く
- OS インストール中の事故防止
- 既存プールへの誤操作防止
上記を考え、データ用 HDD は物理的に切り離しました。
3. USB から TrueNAS SCALE を起動
作成した USB メモリから起動し、そのままインストールを実施します。
- 質問は数回出ますが、基本的には流れに沿って答えるだけ
- インストール自体は身構えた程ではなく、あっさり完了
4. Web UI の起動を確認
インストール後、無事に TrueNAS SCALE の Web UI が表示されることを確認。
ここで一度シャットダウンします。
5. HDD の SATA ケーブルを元に戻す
データ用 HDD を接続し直し、再度電源 ON。
6. 既存プールのインポート
Storage から既存の Pool をインポートします。
⚠️ ここで最大の注意点
- 「Upgrade Pool」ボタンが表示されますが、この時点では絶対に押さない
- データ確認が終わるまでは我慢
理由はシンプルで、
プールをアップグレードすると、FreeNAS に戻せなくなる
からです。
万が一、
- データが壊れていた
- ACL や権限がどうしてもおかしい
となった場合、後戻りできなくなります。
データ確認
インポート後、
- Dataset がすべて表示されるか
- ファイルが正しく見えるか
を一通り確認しました。
結果として、すべて問題なし。
ここでようやく一安心です。
ACL(SMB / CIFS 周り)で少しハマった話
TrueNAS SCALE は ACL 周りがややクセがあります。
特に SMB 共有は、旧 FreeNAS の感覚で触ると「あれ?」となりがちです。
TrueNAS SCALE 側の確認ポイント
1. SMB 用ユーザーの作成
- Credentials → Local Users
- Linux クライアントから使うユーザーを作成
- 「SMB」のチェックを必ず ON
2. SMB 共有設定
- Shares → SMB から対象の共有を Edit
- 確認ポイント
- Purpose:
Default share parameters - Path: 書き込みたい Dataset を指定しているか
3. Dataset の ACL 設定
- Storage → Datasets
- 対象 Dataset を選択
- Edit → Permissions (Edit ACL)
確認すること:
- NFSv4 ACLプリセットでは一番制限が緩い NFS4_OPEN を選択
- 作成したユーザーに Modify(読み書き)権限 があるか
- Apply permissions recursively(再帰的に適用) にチェックを入れる
これを忘れると「読めるけど書けない」状態になります。
4. root ユーザーは使わない
- root は SMB アクセスできません
- 必ず一般ユーザーを使います
Linux(Ubuntu)側のマウント設定
Ubuntu から CIFS でマウントする場合の例です。
sudo mount -t cifs \
-o username=<SMBユーザー名>,uid=<UbuntuユーザーID>,gid=<UbuntuグループID> \
//192.168.x.x/sharename /mnt/mountpoint
uid,gidは以下で確認できます
id
まとめ
- TrueNAS SCALE への移行自体は意外とスムーズ
- ただし バックアップは必須(今回は本当に反省)
- プールのアップグレードはデータ確認後
- ACL 周りは一呼吸おいて設定する
結果オーライでしたが、次にやるならもっと安全に、落ち着き、穏やかな気持ちでやりたいです。
アップデートの一週間後
⚠️注意で「Upgrade Pool」の件ですが、データも問題なかったので「Upgrade」しました。あっけなく終わりいよいよ「TrueNAS SCALE」世代です。
またお会いしましょう



