ESXi サーバーで使っていた LTO ドライブを、TrueNAS (旧 FreeNAS) の入った NAS マシンに移し替えました。
これといった手順もなく、ただ移し替えたら動いただけではあるのですが、動作実績ということで情報を残しておこうと思います。
以前の記事
SAS カードは LSI SAS 9212-4i、LTO ドライブは HP Ultrium 3000 BRSLA-0904-DC です。
SAS 接続の LTO ドライブを使うため、中古の LSI SAS 9212-4i を購入しました。VMWare ESXi 6.0 Update 2 で使えるようにドライバをインストールするまでの作業メモを紹介します。
中古の LTO-5 ドライブを購入してみました。HP の Ultrium 3000 BRSLA-0904-DC です。個人でテープドライブを使ってみたいと思う方の参考になればと思い、本記事では導入に至った経緯や実際の運用について書いてみたいと思います。
SAS カードと LTO ドライブの移し替え
NAS マシンは 5 年くらい前に自作したものを使っています。
マザーボードは GIGABYTE GA-H97M-D3H。
PCIEX16 スロットに SAS カードを装着します。
TrueNAS のバージョンは TrueNAS-12.0-U4
。
起動後に lspci
を確認すると、SAS カードが認識されていました。
追加のドライバーのインストールは不要のようです。
# lspci -v
...
01:00.0 Serial Attached SCSI controller: Broadcom / LSI SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03)
Subsystem: Broadcom / LSI Device 30f0
Flags: bus master, fast devsel, latency 0, IRQ 16
I/O ports at e000
Memory at f7bc0000 (64-bit, non-prefetchable)
Memory at f7b80000 (64-bit, non-prefetchable)
Expansion ROM at f7b00000 [disabled]
Capabilities: [50] Power Management version 3
Capabilities: [68] Express Endpoint, MSI 00
Capabilities: [d0] Vital Product Data
Capabilities: [a8] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [c0] MSI-X: Enable- Count=15 Masked-
Capabilities: [100] Advanced Error Reporting
Capabilities: [138] Power Budgeting <?>
Capabilities: [150] Single Root I/O Virtualization (SR-IOV)
Capabilities: [190] Alternative Routing-ID Interpretation (ARI)
...
camcontrol
コマンドで HP Ultrium 5 の表示が確認できます。
# camcontrol devlist
<HP Ultrium 5-SCSI Z64D> at scbus0 target 0 lun 0 (sa0,pass0)
...
ドライブの操作
デバイス ファイル /dev/sa0
を指定し、mt コマンドでドライブの操作ができます。
# mt -f /dev/sa0 status
Drive: sa0: <HP Ultrium 5-SCSI Z64D> Serial Number: HU1202LFNR
---------------------------------
Mode Density Blocksize bpi Compression
Current: 0x58:LTO-5 variable 384607 enabled (0x1)
---------------------------------
Current Driver State: at rest.
---------------------------------
Partition: 0 Calc File Number: 0 Calc Record Number: 0
Residual: 0 Reported File Number: 0 Reported Record Number: 0
Flags: BOP
FreeBSD では、Linux と mt コマンドの実装が異なるため、表示や動作に違いがあるようです。
こちらの記事で詳しい解説があります。
「tar でテープにバックアップ・リストアしてみる」という記事で、FreeBSD の mt と Linux の mt に違いがある、と書きました。
FreeBSD 使いとして FreeBSD で動作している様子を解説することにしたの...
Linux Virtual Machine での利用
PCI Passthrough を構成することで、Virtual Machines 機能で作成した仮想マシンで LTO ドライブを使用できます。
Linux 仮想マシンに SAS カードをパススルーすれば、Linux を想定した mt コマンドが引き続き利用可能です。
System > Tunable から vmm_load
と pptdevs
パラメータを追加し、TrueNAS を再起動します。
pptdevs
には lspci
コマンドで確認した SAS カードの Bus ID を指定します。
# lspci -q | grep SAS
01:00.0 Serial Attached SCSI controller: Broadcom / LSI SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03)
Virtual Machines から仮想マシンを作成します。
SAS カードは Devices > Add から、PCI Passthru Device として仮想マシンに追加できます。
今回は Ubuntu で動作確認をしてみました。
SAS カード、LTO ドライブが認識され、mt コマンドで操作が可能です。
$ uname -a
Linux operation 5.4.0-66-generic #74-Ubuntu SMP Wed Jan 27 22:54:38 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
$ lspci -q | grep SAS
00:05.0 Serial Attached SCSI controller: Broadcom / LSI SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03)
$ lsscsi
[0:0:0:0] tape HP Ultrium 5-SCSI Z64D /dev/st0
[7:0:0:0] disk ATA BHYVE SATA DISK 001 /dev/sda
$ sudo mt -f /dev/st0 status
SCSI 2 tape drive:
File number=0, block number=0, partition=0.
Tape block size 0 bytes. Density code 0x58 (LTO-5).
Soft error count since last status=0
General status bits on (41010000):
BOT ONLINE IM_REP_EN