ncos1のブログ

適当にメモ代わりに残しています、間違い・説明不足等はコメントしてただければ修正・追記します。

DIGAのクローンなしのHDD交換もどきを整理

クローンせずに可能な方法を模索していたが、スキル不足で暫定的にもどきの方法が完成した。

 

ncos1.hatenablog.com

 

作業は全てRaspberrypi(Linux)環境、ddの低レベル読み込みで、先頭から100MB分(もっと少なくても良さそう)をイメージ化して保存、交換HDD・SSD(2TB以下の128GBのSSDで検証)にイメージを書込んでDIGAに実装してDIGA側でフォーマットすれば、実装HDD・SSDの容量でフォーマットされる。

 

注意事項は、現行HDDの録画データは再実装しても観られなくなる。

(検証が一度だけなので、たまたまかもしれない。)

クローンマシンでコピーしたHDDを実装した場合には異なるHDDをでも問題なく録画データは残っていて視聴できていた。

本体でフォーマットを実施すると、本体でHDDの容量情報等を管理・紐づけしているのではないか?と思われる。

理由として考えられるのは、同じ2TBだとしてもHDD型番で若干容量が異なるので本体側で管理して、情報が異なるHDDと判断すると再フォーマットをして正しい容量を認識する為にフォーマット異常と判断させているのでは?

クローンの場合は待ったく同じ状態でコピーするのでHDD記録領域上の齟齬が発生しないからと思われる。

 

 

故障して観られなくなった場合、バックアップからゼロから修復できるように準備ができた。

バックアップは、100MBでも500MBでも圧縮すれば1MB以下なので複数クラウドにバックアップしておくと良い。

上記のようにHDDと本体の間で情報の更新をしている様なので、同じバックアップを他のDIGAに書き込んだ場合にはどこでもディーガなどに影響が出る可能性があるので、同じDIGAのイメージで作業した方が良いと思われる。(クローンで問題が無いので、バックアップしたddイメージを他のDIGAで使っても問題が発生する可能性はとても低いとは思うのだが検証環境が無い。)

 

Raspberrypiに、SATA→USB変換でHDD・SSDを接続

ddでバックアップ /dev/sda は接続したHDDのデバイス名、gpartedで確認するとGUIなのでわかりやすいが、マイクロsd起動のRaspberrypiで他にスチレージを接続していないのならばsdaで良いはず。

sudo dd if=/dev/sda of=backup.img bs=1M count=100

バックアップ完了後(100MBは一瞬で終わる。)

Raspberrypiをシャットダウン

交換用のHDDに接続変更

(HDDがアンマウントされていれば、シャットダウンはしなくても問題ないが、気分的にシャットダウンしてから、交換用のHDDのに付け替えた。)

交換用HDDにバックアップしたイメージを書込み

sudo dd if=backup.img of=/dev/sda bs=1M

書き込みしたHDDをDIGAに実装して起動、フォーマットエラーになっているのでフォーマット実行で該当HDDの容量で認識されるようになる。

検証で成功した手順は以上、かなり古いKingstonの128GBのSSDで録画までできたので内蔵のsata接続の場合は型番・AVコマンドの有無等のチェックはしていないと思われる。(同じSSDをUSB接続しても、非対応の機器として認識できずフォーマットも当然出来なかった。)

 

 

WaveShare GamePi43用のキーアサイン作成ツール検証・修正

失敗、キーが別のキーに割り当てられている。

 

ncos1.hatenablog.com

 

Linux用のキーコードになっていなかったみたいなので、修正。

Raspiキーの(R)は反応しないが一応残しておく。

 

minosima.github.io

 

sshで接続して、作成したコードをコピペで問題なく動作した。

はてなではなく、gitなので不可視文字などが混入しないのでコピペで問題なく動作するみたい。

#dtsファイルを修正、内容を全て削除して貼り付け

nano ~/gamepi43.dts

#コンパイル

dtc -@ -I dts -O dtb -o gamepi43.dtbo ~/gamepi43.dts
#反映(上書きコピー)、作成したバイナリをシステムが読み込む場所にコピー。

sudo cp gamepi43.dtbo /boot/firmware/overlays/

#設定の反映(システム再起動)
sudo reboot

 

DIGAに小容量HDD・SSDを乗せてみる、一応成功だが既存録画データは消える(・・?

以前調子が良くないと判断して交換したシーゲートを廃棄せずに保管していたのを思い出した。

(2.5inchのHDDにコピーできたので、間欠もしくはデータ領域の一部障害と判断して万が一の場合のコピー元として保管しておいた。)

 

前回の失敗時の思いつきを実施。

検証成功(128GBのSSDに換装・録画)したが問題発生した。

操作していない既存のHDDに戻した際に、異常検出して既存のHDDの再フォーマットをする事態になり録画データが消失。

考えられる要因はいくつも有るが、実施する場合は録画データが無くなっても良い状態で実施するのが前提。

コピーせずにHDD交換はできるが、事前準備が必要。

(故障HDDでも、ddで先頭領域を低レベル読込みできれば可能性はある。)

ncos1.hatenablog.com

 

HDDコピー機でコピーしてみる、が手持ちのコピー機は容量が極端に少ない場合にコピー開始すら出来ない仕様だったのでコピーは検証できなかった。

 

Windows環境に上記のシーゲートHDDを接続して確認してみる。

不明なディスクとしてパーテーションも何も認識出来ない状態。

 



ddforwinでは、認識もできない。

Raspberrypi等のLinux環境でないと駄目?

 

ここからは、Raspberrypiで作業実施。

Raspberrypiのgpartedで確認、同じく未割り当てと表示される。

パーテーションとして認識していれば、簡単に拡張できたかもしれないができなさそう。

ddによる先頭領域のみのバックアップを試みる。

gpartedで確認したデバイス名のsdaを先頭100MB分バックアップ

 

sudo dd if=/dev/sda of=backup.img bs=1M count=100

一瞬で終わった、本当にバックアップできているか不安なくらい速かった。

検証用に500MBもとっておく。

それなりに時間はかかるが、500MBとは思えないくらい速かった。

sudo dd if=/dev/sda of=backup500.img bs=1M count=500

 

別のDISK(128GBのSSD)へ、書込みしてみる。

gpartedでデバイス名・容量など確認、128GBのSSDにバックアップした100MBを書き込んでみる。

読み込んだDISKを取り外しているので、同じデバイス名sdaだった。

 

sudo dd if=backup.img of=/dev/sda bs=1M

100MBだと、読み込み・書込みとも一瞬で終わるが、500MBの読み込みは少し(数十秒だが)時間がかかった。

Windowsに転送して、圧縮してバックアップしておこうと思ったら、1MB以下の容量だった。

DIGAに実装。

フォーマットされていないとのメッセージ、

以前の検証では、HDDの異常検出だったので、ddでの書込みで状態が変わった。

フォーマットしてみる。

フォーマット進んでいる。

完了した☺️

録画残量が少ない、128GBなので当然なのだが少ない容量を正しく認識できている事が重要。

考えていなかったが、録画予約の情報がHDDではなく本体側の情報で有ることも確認できてしまった。

なんとなく予約情報はHDDにあるのかと思ったが、様々な情報が本体側で保存・管理されているみたい。

放送中の番組を録画して再生できた。

(再生数十秒だし、予約録画はしていないで検証が十分とは言えないかも?)

フォーマットして、空き容量が妥当な時間となっていたので検証終了して元のHDDに戻したら、エラーした(T_T)

本体側にも UNFORMAT と表示されて録画データが観れない。

録画データは、溜め込んで消すに消せない状態のものばかりだったので断捨離したと諦める^^;

普通にフォーマットして、2TB分丸々空いてスッキリした。

録画予約データが本体管理されているように、HDD(今回は128GBのSSD)をフォーマットした際に、何らかの管理情報が更新されて(空き容量等の管理は本体と思われる)その際にHDD情報等が変更され、元のHDDに戻した際にHDDが壊れたと判断されたと考えられる。

HDDのフォーマットを実行しない状態であれば、戻せたと思われるが実装した時点で更新される可能性も有るので注意。

フォーマットできない状態のHDDを何度も実装したが、今回のようにはならなかったのでフォーマットの完了で情報更新されると考えるのが妥当と思われる。

 

ただし、作業中に電源OFFしてACコードを抜いているが、まだファンが回っている状態で抜いてしまった事が有る。(抜く途中で気が付いたが、そのまま勢いで抜いてしまった。)

電源OFFして、ディスプレイが時計表示の状態になった事を確認していたが、内部で処理中の場合が有るのかもしれない。(単に冷却のために回っていただけかも?)

処理中のACの喪失で、HDDのデータ異常を引き起こしてしまった可能性もゼロではないので、上記可能性以外の作業手順ミスも考慮しておいた方が良い。

正直、どのタイミングでACコードを抜いて良いか判断できない、今までは電源OFFで本体のディスプレイの表示が時計表示に変わったら抜いていたが問題は起きなかった。

 

 

ddのイメージバックアップからの復旧が可能とわかったので、データのロストよりも価値があったと思うことにした(T_T)

今回作成したイメージを保管しておけば、同じ手順でHDDが完全に故障した場合でも復旧可能。

イメージは100MB・500MB共に圧縮すれば1MB以下の容量で済むので複数のクラウドや自分宛てのメールの添付ファイル等で複数バックアップも負担にならない。

 

バックアップイメージには、ファームウェア等は無さそう(HDD無しの状態での動作から本体基板側と思われる)なので、公開してダウンロード可能にしても良いかと思っていた。

だが、データが消えた原因(不正フォーマット検出)が本体とHDDとの間で情報をチェックしているからと考えられる。

同じ装置以外で使用した場合に ”どこでもディーガ”等の機能がどちらかで使えなくなる可能性がほんのわずか(ほぼ無い)、否定出来ないので公開はしない事にする。

 

もし参考にする方がいる場合は、バックアップ・書込みまでにして実装はデータ消えても良い場合にのみ実施してください。

 

環境に余裕がある場合は、現在の2TBのHDDを丸ごとDDでイメージ化して戻す側も2TBならば録画データの消去は発生せずにバックアップ時の状態を復元できると思われるがその様な環境はないし、時間もかかるしあまり現実的では無い。

今回の手順で、2TB以上を実装しても容量アップせずに2TBに留まると思われるが検証に必要な機材が無いので不明。

 

解析できれば容量アップ可能な機種の手法のバイナリエディタで指定アドレスを直接書き換える方法で出来そうだが、何かしらの情報も保存されている場合も考えられるしddでざっくりバックアップ・リストアと作業も簡単なので、まぁ良しとしたい^^;

 

DIGAに小容量HDD・SSDを乗せてみたが失敗・次回検証予定メモ

DIGAに使用中のHDDコピーをせずにできるか検証の続き。

 

ncos1.hatenablog.com

 

ncos1.hatenablog.com

 

レグザでフォーマットしてみる。

当たり前といえばそうだが、NG。

現在手持ちでデータ消去して良い2TB以上のHDD・SSDを持っていないので、検証も若干大雑把になってしまっているので見逃している方法・手順がある?

HDD・SSDも値上がりが何時まで続くのか不明だが、小容量化可能なら500MB~1TBのSSDにして足りなければUSBのHDDかSSDに録画にするようにしても良いかも🤔

 

ここからは、希望的な想像

小容量のHDD・SSDにコピーして途中で容量不足で停止しても、DIGAに搭載してフォーマットすれば小容量で使用できるのでは?

成功した場合はgpartedでデータ領域を拡張可能かもしれないので大容量化も可能かもしれない。

 

上記の途中までコピーで使用可能ならば、HDDをddコマンドやGPartedで先頭領域(500MBくらい?)を低レベルでバックアップして書き込めば使える?

成功した場合は、イメージを保存しておけば、DIGAを延命できる。

まずは、途中までコピーで検証してみたい。

 

 

 

WaveShare GamePi43用のキーアサイン作成ツールを作りたい

WaveShare GamePi43に、キーボード入力をする事はできたが、対象キーを変えたい時に面倒になったのでツールを作成したい。

ncos1.hatenablog.com

 

WindowsPCのブラウザからキーコードを取得して作成してみる。

学習では認識できなさそうな、左右CTRL・SIFT・Raspiキーはプルダウンで設定。

minosima.github.io

 

まだ実機に転送しての動作検証はしていないので、確認が必要だが一応完成^^;

Raspberry Pi3では、ブラウザ開くのも大変なのでPCから作業を前提。

ダウンロードして転送かコピペして使用。

 

楽天モバイル回線は時々データ通信が切れる(・・?

以前から感じてはいたが、楽天モバイルのデータ通信は時々全く通信できなくなっているのでは?

 

Tverやabemaの動画が止まると思っていたが、通信そのものが停止しているっぽい。

ncos1.hatenablog.com

 

場所を全く移動していない状態でPCを楽天回線のテザリングで使用していると、ブウラウザで画面更新・動画再生が停止・スマホからVPN再接続中の通知等テザリング親機・子機共にデータ通信に問題が同時に発生する事がある。

テザリングの親機・子機で同時にデータ通信に問題が発生するので要因としては親機の回線=楽天モバイルが一番疑わしい。

 

親機のVPN再接続問題調査時に確認した、VPN再接続時は通信できない親機側のみの問題ではない。

ならncos1.hatenablog.com

 

現象発生時は体感的には、30秒ほど通信停止しているように感じる。(実際には10秒ほど?)

大体の場合はスマホの4G固定を5Gを積極使用に切り替えたりテザリングOFF・ON等していると復旧するが何かをしたからではなく、回線が一時的に一定時間不通になっているのでは?

人が多い(特に学生)場合に発生しやすいと感じているので、楽天の回線が込み合っている状態なのかもしれない。

遅くなるのならまだマシだが、現象を見る限りは不通状態になっているように思えるので基地局の処理能力不足かもしれない。

 

スマホの設定等で回避できるか、4Gに固定・5Gを積極使用等を試したが、一時的に改善した事はあるが継続的に改善はしない。

(iPhone12では何もしなければ通常5Gを優先するので、省電力も期待して4G固定にしたりしたが効果はあまり感じられない。)

以前は4G固定で多少効果あったと思っていたが、回線環境が変わったのか現在は変わらないと思っている。

ただし、4G・5G切り替えで一時的に改善することは有ると感じてはいるので、切り替え時に新しく接続した端末を優先する機能が基地局に有るかもしれない(・・?

 

ncos1.hatenablog.com

 

回線の問題ならば、楽天の仮想化Open RANの場合従来の構成よりは基地局の改善等比較的速やかに対処できそうなので期待したい。

そもそも、仮想化Open RANその物に何か問題が有って回線負荷が上がると不具合が発生する(・・?

corp.mobile.rakuten.co.jp

 

通信不通は、ファミレス・ファーストフード等で混み合った状態の場合が多いのでモバイルWiFiスポットの拡大である程度は回避できるかもしれないので期待したい。

速度はあまり期待できなさそう、できれば、3Mbps程度で安定して繋がれば嬉しい。

 

ncos1.hatenablog.com

ahamoの高速通信使い切り時の制限速度が、3Mbpsならばahamoにしても音楽再生できるので切り替えても良いのだが(゜.゜)

もしくは、モバイル音楽サーバーをCardputerZeroで構築すればahamoで問題なさそうなのだけど、メモリが1GBじゃないしディスプレイの解像度が低いのでKODIが動くのか不明なのでレビューがたくさん出てきてから検討しよう。

shop.m5stack.com

 

 

KODIのスマートプレイリスト作成ツール修正

現在KODIのスマートプレイ作成ツールで、連続して作成していた時に問題に気が付いた。

連続作成時に前回のアーティスト情報入力がそのまま残っているので、2回目以降で入力を削除しなければならず結構面倒だった。

クリアボタンを設置して、全情報をクリアするのと、xspファイルのダウンロード時に自動クリアの機能を付けたくなった。

自動クリアは要らない?場合によっては余計?と思ったので、元に戻すボタンを設置してクリア・自動クリアしても5ステップまでは戻せるようにしてみる。

 

ncos1.hatenablog.com

 

ncos1.hatenablog.com

 

問題なく動作するようなので、完了と思ったがクリアも1ステップとしてしまう。

なんとなくクリアボタン等は連続して複数回押すことが多いのでバッファがなくなってしまうかもしれない。

クリア重複を管理してもよいが、もっとシンプルに戻すステップ数を単純に50ステップに増やすことにした。