nasneのハードディスク交換♯4 内蔵HDD交換

ソニー版のnasneについて、現在のFWバージョンを問わず内蔵HDDを交換できる方法です。ただし、ファームウェアv1.00のファイルは必要です。

過去の投稿で交換対象のnasneのv1.00のファームウェアを保存しているときのみ、内蔵HDDを交換できる方法を紹介しました。

2022年の初頭にインターネットを検索していたら、すでにインストールされているファームウェアのバージョンを問わず、内蔵HDDを交換できる方法を見つけました。

ただし、ファームウェアv1.00のファイルは必要です。

本当にできるかどうかを検証してみました。

当時(2022年初め)に検証し、投稿は作成済みだったのですが、公開はしていませんでした。今回nasneに関する記事の第4弾(#4)として公開します。公開にあたり、内容の更新していないので、投稿の内容は作成当時のままです。

事前準備するもの

事前に準備する必要があるのは以下の通りとなります。これらが準備できない場合は、あきらめてください。

  • 交換するHDD
  • SATA HDDを接続できるLinux環境
  • ファームウェアv1.00のファイル(00550066.dlm)

交換するHDD

交換するHDDは、過去の投稿でも紹介したとおり、SATA接続の2.5インチHDDです。

SATA接続であればHDDでもSDDでもどちらでもよいです。

nasneに内蔵されていた純正のHDDは厚さが7mmでしたが、nasneのケース的に9.5mmまでなら入りそうなので、厚みは9.5mm以下のものを用意します。

容量は500GBから2TBの間のものを用意します。

たとえば、容量が2TBであれば、以下のHDDが使えると思います。東芝HDDは私も実際に使用しています。

ここではHDDの最大容量を2TBまでとしましたが、内蔵HDDのファイルフォーマットはxfs形式です。そのため、2TBを超えても動作する可能性は高いです。しかし、2TBを超える容量は試したことないので、実際のところはわかりません。

ただ、2TBを超える容量のHDDで厚さが9.5mm以下のものは現在では発売されていないと思います。結果として、2TBが最大容量となるかもしれません。

SATA HDDを接続できるLinux環境

過去の投稿で説明したとおり、SATA HDDを接続できるLinux環境を用意します。

このLinux環境で、nasne用のHDDを作成するために、パーティションの作成、パーティションのフォーマット、ファームウェアのファイルのコピーを行います。

ファームウェアv1.00のファイル (00550066.dlm)

今回のHDDの交換方法では、nasneにインストールされているファームウェアのバージョンは問わず、最新のファームウェアがインストールされていても問題ありません。

しかし、nasne用のHDDを作成する作業のときにv1.00のファームウェアのファイルが必要です。必要なファームウェアのファイルは以下のものとなります。

00550066.dlm (21,287,161 バイト)
MD5: 1c921378f2a7846a6492982c98c82fcd
SHA1: 53d0aea1ae82816743af4604700d2292650debd8
SHA2: 104ad970dc3fa61fa2394ce1fbd329c9522d64f04fee8e05637ed820f24600e9

HDDをLinux環境につないでの作業

Linux環境にHDDをつなぎ、Linuxを起動します。これ以下の説明は、HDDをつないだLinux環境が正常起動していることを前提とします。

管理者権限に昇格する

HDDのセクターデータに直接触る作業には管理者権限が必須です。

Linux環境として過去の投稿で説明したDebian Live (gnome)を使った場合は、Terminalやxtermなどを起動し、そのコンソールで管理者権限に昇格します。管理者権限への昇格は

sudo su

とすることで可能です。一つ一つの作業を毎回sudoを使って行うことも可能ですが、手順が複雑になるので、今回は、管理者権限に昇格してしまいます。

デバイスパスを確認

まずは、新しいHDDのデバイスパスを確認します。

fdisk -l

fdisk-lオプション付きで実行すると、PCにつながっているストレージの情報が表示されます。

たとえば、以下のように表示されます。

...
Disk /dev/sda: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors
Disk model: TOSHIBA MQ04ABD2
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
...

これは、出力結果の一部を抜粋したものです。Disk modelの情報を参考に新しいHDDを特定します。この例の場合は、TOSHIBA MQ04ABD2です。すぐ上を見ると、新しいHDDのデバイスパスは/dev/sdaであることがわかります。

これ以降は、新しいHDDのデバイスパスは/dev/sdaであることを前提に説明します。

パーティション情報の削除

新品のHDDの場合は、パーティションは作成されていないのでこの作業は必要ないです。よくわからない場合は、実行しておけば問題ありません。

sgdisk -Z /dev/sda

HDDのパーティションの作成

パーティションの作成はLinuxのコマンドfdiskを使って行います。

パーティション1は256MB、パーティション2は1GB、パーティション3は残りすべてを割り当てます。具体的には、以下のパーティション構成になるように設定します。パーティション3の値は用意したHDDのサイズにより変化します。下記の例は、HDDがMQ04ABD200-2YWの場合の例です。

Device    Boot   Start        End    Sectors  Size Id Type
/dev/sda1 *       2048     526335     524288  256M 83 Linux
/dev/sda2       526336    2623487    2097152    1G 83 Linux
/dev/sda3      2623488 3907029167 3904405680  1.8T 83 Linux 

fdiskコマンドの実行手順は以下の通りです。カッコ内の文字が実際に入力する内容です。は、改行を表します。

  1. fdiskを起動する。デバイスパスが/dev/sdaの場合はfdisk /dev/sda
    (fdisk /dev/sda↓)
  2. pコマンドでストレージが間違っていないか確認
    (p↓)
  3. もしパーティションがあったら、dコマンドですべてのパーティションを削除
  4. nコマンドで一つ目のプライマリーパーティション(開始:2048 終了:526335) を作成
    (n↓ p↓ 1↓ 2048↓ 526335↓)
  5. nコマンドで二つ目のプライマリーパーティション(開始:526336 終 了:2623487)を作成
    (n↓ p↓ 2↓ 526336↓ 2623487↓)
  6. nコマンドで三つ目のプライマリーパーティション(開始:2623488 終了:最後 のセクター(デフォルト値でOK))を作成
    (n↓ p↓ 3↓ 2623488↓ ↓)
  7. aコマンドで一つ目のパーティションのブータブルフラグをセットする
    (a↓ 1↓)
  8. pコマンドで、希望のパーティション構成になっているか確認
    (p↓)
  9. wコマンドで、新パーティション情報をストレージに書き出して、fdiskを終了
    (w↓)

パーティション1/2のフォーマット

nasneのシステム領域として使われるパーティション1とパーティション2をext3形式でフォーマットします。

mkfs.ext3 -F -L sys1 /dev/sda1
mkfs.ext3 -F -L sys2 /dev/sda2

パーティション3のフォーマット

nasneの内蔵HDDの録画領域として使われるパーティション3をxfs形式でフォーマットします。

xfs形式でフォーマットするには、xfsprogsが必要となるので、xfsprogsをインストールします。インストール時は、ネットワークにつながっている必要があります。

apt update
apt install xfsprogs

xfsprogsをインストールしたら、xfs形式でフォーマットします。

mkfs.xfsコマンド使ってパーティション3をxfs形式でフォーマットします。mkfs.xfsのデフォルトのパラーメータでxfsフォーマットした場合、nasneから正しく認識されません。そのため、いくつかのパラメータを指定します。

具体的には、以下のパラメータを使用してフォーマットします。

mkfs.xfs -f -m crc=0 -d agcount=8 -i size=256,attr=2,projid32bit=0 -L user -n ftype=0 -s size=512 /dev/sda3

パーティション1をマウント

パーティション1にファイルをコピーする必要があります。そのため、パーティション1のファイルシステムにアクセスできるようにパーティション1を適当なフォルダーにマウントします。ここでは、パーティション1を /mnt/sys1 にマウントします。

mkdir /mnt/sys1
mount /dev/sda1 /mnt/sys1

sys1にファイルを配置する

/mnt/sys1/フォルダーの配下に以下のようにファイルを配置します。

00110022.dlm (0バイト)
00550066.dlm (21,287,161 バイト)
55006600/00550066.dlm (21,287,161 バイト)

00550066.dlm/nasne-firm/00550066.dlm にあったとした場合、以下の手順となります。

cd /mnt/sys1/
mkdir 55006600
cp -a /nasne-firm/00550066.dlm 55006600/
cp -a /nasne-firm/00550066.dlm .
touch 00110022.dlm

Linux環境をシャットダウンする

shutdown now

HDDをnasneにつないで電源を投入

作成したHDDをnasneにつないで、nasneに電源を接続します。

初回の電源投入では、初期化処理が実行されるだけで、正常起動はしません。初回の電源投入では通常の起動に必要な個体データ(00110022.dlm)がパーティション1に生成されます。これにより、次回以降の起動では正常に起動するようになります。

初回の電源投入後、2分間くらいすると、インジケーターランプが、前回の投稿で説明した♯1のパターンで点灯・点滅します。

#電源RECIPHDD意味
1
(点滅: 1秒間隔)

(点滅)

(点滅)

(消灯)
HDD未接続 (内蔵HDDなし)
HDD故障 読み取り不良
ファームウェア起動エラー

この状態になったら、初期化処理が完了です。

電源コードを抜き差しして、もう一度、nasneを起動します。すると、nasneがバージョン1のファームウェアで正常起動します。

各手順の後の各パーティションのファイル構成

各手順の後の各パーティションのファイル構成を調べてみました。

HDDのセットアップ(パーティションの構成)の直後

パーティション1

HDDのセットアップでは、ext2形式でフォーマットし、ファイルを3つ作成しました。

00110022.dlm (0バイト)
00550066.dlm (21,287,161 バイト)
55006600/00550066.dlm (21,287,161 バイト)

パーティション2

HDDのセットアップでは、ext2形式でフォーマットしただけなので、ファイルはありません。

パーティション3

HDDのセットアップでは、xfs形式でフォーマットしただけなので、ファイルはありません。

初期化処理終了後の各パーティションのファイル構成

パーティション1

初回起動直後は、パーティション1はファイルが増えました。

ファイルは3つしか作成しませんでしたが、初回起動後は、10個のファイルに増えています。また、00110022.dlmファイルは、固有情報が作成されそれが書き込まれたため、ファイルサイズが0バイトから148バイトに増えています。

この時点では、11002200フォルダーと33004400フォルダーの内容は全く同じです。

00110022.dlm (148 バイト)
00550066.dlm (21,287,161 バイト)
11002200/00110022.dlm (148 バイト)
11002200/00220033.dlm (2,124,055 バイト)
11002200/00440055.dlm (2,349,301 バイト)
11002200/00550066.dlm (2,128,7161 バイト)
33004400/00110022.dlm (148 バイト)
33004400/00220033.dlm (2,124,055 バイト)
33004400/00440055.dlm (2,349,301 バイト)
33004400/00550066.dlm (21,287,161 バイト)
lost+found/

パーティション2

初回起動直後は、パーティション2は下記のフォルダーのみが作成されただけした。

opt/dtvtuner/
var/opt/dtvtuner/nv/ffs/

パーティション3

初回起動直後は、パーティション3は変化はありませんでした。

初期化処理終了後に再起動した後の各パーティションのファイル構成

パーティション1

初回起動直後と再起動後では変化がありません。

00110022.dlm (148 バイト)
00550066.dlm (21,287,161 バイト)
11002200/00110022.dlm (148 バイト)
11002200/00220033.dlm (2,124,055 バイト)
11002200/00440055.dlm (2,349,301 バイト)
11002200/00550066.dlm (2,128,7161 バイト)
33004400/00110022.dlm (148 バイト)
33004400/00220033.dlm (2,124,055 バイト)
33004400/00440055.dlm (2,349,301 バイト)
33004400/00550066.dlm (21,287,161 バイト)
lost+found/

パーティション2

再起動後は、linuxが起動するために必要なファイルシステムが作成された感じです。多くのフォルダーとファイルが作成されました。

すべてのファイルを列挙するのには多すぎるので、ルートフォルダーに作成されたフォルダーのみを列挙しました。

bin/
dev/
disk0/
disk1/
etc/
init -> sbin/init
lib/
linuxrc -> bin/busybox
mnt/
opt/
proc/
sbin/
sys/
tmp/
usr/
var/

パーティション3

再起動後は、たくさんのフォルダーとファイルが作成されました。

すべてのファイルを列挙するのには多すぎるので、ルートフォルダーに作成されたフォルダーのみを列挙しました。

00000000.hai (65,536 バイト)
00000001.hai (65,536 バイト)
00000016/
setup/
share/

バージョンを1.00から2.60にアップグレードした後の各パーティションのファイル構成

パーティション1

バージョンアップ後は、フォルダー構成が若干変更になりました。

00110022.dlmは、以前とファイルサイズが同じですが、パーティション直下のファイルと11002200フォルダー配下のファイルの内容は更新されていました。

00550066.dlmは、以前とファイルサイズが異なり、パーティション直下のファイルと11002200フォルダー配下のファイルの内容は更新されていました。

00CC00DD.dlm というファイルが増えています。

33004400フォルダー内はバージョンアップ前のファイルがそのまま残っていたので、バージョンアップする前のバージョンのバックアップファイルなのだと思います。

00110022.dlm (148 バイト)
00550066.dlm (31,646,110 バイト)
00CC00DD.dlm (8 バイト)
11002200/00110022.dlm (148 バイト)
11002200/00220033.dlm (2,124,055 バイト)
11002200/00440055.dlm (2,349,301 バイト)
11002200/00550066.dlm (31,646,110 バイト)
33004400/00110022.dlm (148 バイト)
33004400/00220033.dlm (2,124,055 バイト)
33004400/00440055.dlm (2,349,301 バイト)
33004400/00550066.dlm (21,287,161 バイト)
lost+found/

パーティション2

バージョンアップ後は、rootフォルダーが増えました。

すべてのファイルを列挙するのには多すぎるので、ルートフォルダーに作成されたフォルダーのみを列挙しました。

bin/
dev/
disk0/
disk1/
etc/
init -> sbin/init
lib/
linuxrc -> bin/busybox
mnt/
opt/
proc/
root/
sbin/
sys/
tmp/
usr/
var/

パーティション3

バージョンアップ後は、フォルダー構成が若干変更になりました。

すべてのファイルを列挙するのには多すぎるので、ルートフォルダーに作成されたフォルダーのみを列挙しました。

00000000.hai (65,536 バイト)
00000001.hai (65,536 バイト)
00000015/
00000021/
opt/
setup/
share/

以上、ソニー版のnasneについて、現在のFWバージョンを問わず内蔵HDDを交換できる方法(ただしファームウェアv1.00のファイルは必要)についての投稿でした。

“nasneのハードディスク交換♯4 内蔵HDD交換” への1件の返信

コメントを残す