箱庭遊び2: 実Debianの仮想化は成功

うまく行かなかった,Debianの実マシンの仮想化はその後成功しました.

まっさらなqcow2の仮想ディスクイメージに実マシンのディスクの内容をコピーするという正攻法がうまく行かなかったので,Plan Bとして,仮想マシンとして動いているDebian1これも元をたどれば実マシンのDebian.ただし,いつ頃コピーしたかは不明.の仮想ディスクイメージを複製し,

rsync -artlvd --sparse --inplace --delete /実マシンの/ディスクの/マウントポイント/ /仮想ディスクの/マウントポイント/

を実行しました.

--sparseオプションは,いくつか仮想ディスクイメージがあるから指定しています.また,ないとは思いますが,ディスクがオーバーフローしないように,--inplaceも指定しています2ふっるーい情報だと,–sparseと–inplaceは同時に指定できないとありますが,もう何年も前から指定できるようになっています..

このコピーの後,コピー先の/etc/fstabの内容を,実情に合うようにします.とはいえ,ルートだけで,UUIDなり,/dev/sda3なり,/dev/vda3と指定します3UUIDの場合はもうひと手間必要ですが省略します😓.

そして,VMmanagerで,コピーしてできたqcow2を含んだ仮想マシンをでっちあげます.

さて,これでもまだコピーしてできた仮想ディスクイメージからブートはできませんので,DebianのインストールDVDイメージから新しく作った仮想マシン起動して,Rescueモードでなんやかんやしたらgrubで無事起動するようになりました.

結局どこが悪かったかわからないまま4新規に作ったqcow2のパーティショニングかフォーマットあたりでしょうが.ですが,動けばいいんです.

ちなみに,この方法では一つだけ問題があります.それは,同じUUIDを持つパーティションがこの世に2つ存在することです5今後同じ方法で複製をすれば,さらに増える😓.2つのディスクイメージを同じ仮想マシンに同時に装着して,UUIDを指定してパーティションをマウントしなければ問題になりませんが.

macOS Ventura のプレビュー(Preview) はPSサポートがない

びっくり仰天です.

久しぶりにJARL経由できたQSLカードの返信をしようと,まずは届いたカード1枚ずつMariaDBに登録されているデータと照合しました.

今回は珍しいことに,コールサイン間違いや,データの欠落はありませんでした.

次に,返信QSLカードのデータのPDF化ですが,その第1段階では自作のPerlスクリプトに発行するデータのCVSデータを食わせて,Enscriptのデータを生成させます.

そしてEnscriptにそのデータを食わせますが,そう言えば,前回QSLカードの発行をしてから,MariaDBの走っているサーバーのソフトを更新したのでした1Slackware ARM 14.2からSlackware ARM 15.0..Enscriptの設定ファイルはディストロのデフォルトになっているはずなので,昨年10月のバックアップからコピーバックしました.

それで動かしたところ, “Monacoがない” という苦情が出ましたが,それは従前からなので気にしませんでした.問題なくPost Script (PS)が生成されました.

次は,macOSのWorkstation (WS)のFinderでできたPSファイルをダブルクリックしてプレビュー(Preview)に読み込ませて,PDFとして保存するのですが,プレビューがPSを読み込んでくれません.読み込みダイアログから読み込もうとしてもNGです.

そう言えば(2度目😓),macOSをVenturaにしてからこの作業をしたのは初めてでした.どうやらmacOS VenturaのプレビューからPSサポートが外されたようです.

仕方ないので,macOS 11.x以降にupgradeできないMac MiniからそのPSを読み込んでPDFとして保存しました.

一手間余計になりました.

Mojoってなんだ (2)

DX SpiderのMojo版へのupgradeの続きです.

Slackware ARM 15.0のほうもupgradeできました.どうも,クローニング(ダウンロード)しているgitのデータが壊れてしまっていたようで,新規にcloneし直したところmojoがあるのでDebian同様checkoutしました.

いくつかの設定ファイルと,data以下のディレクトリーとファイルを全部コピーしてcluster.plを起動し,足りないモジュールを,

perl -MCPAN -eshell

からインストールして1Mojolicious.pmだけはsbopkgでインストールしました.,動くようになりました.

結局Mojoは理解していないままです.

Mojoってなんだ

一昨日でしたか,スペインのアマチュア無線家(ハム)からEMailが来ました.「動かしているDX Spiderにセキュリティーの問題があるからMOJO版にupgradeしてください」という内容でした.

そう,公開しているポートはありませんが,DX Spiderを2ノード,かなり昔から動かしています.たぶん,DX Spiderに関しては日本で動かしはじめた最初の数人に入っていると思います.

ついでにいえば,その前に動かしていたDX Netに関しても同様に最初の数人だと思います.もっともDX Netは日本で動かした人が数人であったように思いますが😓

さて本題に戻りますが,MOJOといわれても何のことやらさっぱり解りません.ネットで調べてもなんか解りません.しばらくうろうろしていると,Mojolicious.pmのことらしいとなんとなく解りました1“Mojolicious”とは,どういう経緯か「もじゃもじゃ」と出てきましたが再現できません(当社調べ)..

いつものように事前調査は早々に打ち切って実行あるのみです.

2つのDX Spiderノードのうち外界とつながっていなくて,もう一つのノードとだけつながっているプライベートなほうを先に試してみることしました.大事な方を先に試して,途方に暮れることがよくある筆者としては賢明な判断だったと思います😓

しかし,スペインのハムが示してくれたupgrade用のスクリプトを動かしても,「Slackware 15.0 ARMは対象外だよ」といわれてしまいました.ARM版どころか,そもそもSlackware自体対象になっていません.

しょうがないので,x86_64なDebianで動かしていて,海外複数ノードとつながっている大事な方のDX Spiderのupgradeを試みました.結局こうなるんですよね😓

スクリプトはなんか無反応なまま終わってしまいました.

しょうがないので,gitのbranchを覗いてみることにしました.なんと,gitがないので,しょうがないからgitのインストールからはじめました.

Debianなので楽勝で,インストール後に,

git branch -a

を実行すると,remotes/origin/mojo なるブランチがあります.これかと思って,

git  checkout  mojo

としてcluster.plを実行したら,Mojolicious.pmがないといいます.これまでこのモジュールを要求されたことがないので,ブランチの切り替えは成功のようです.そこでDebianのパッケージサーチで当該のモジュールを探したらすぐ見つかりました.

インストールしてcluster.plを起動してもその後も「ない」というパッケージが表示されたのでその都度インストールといういつもの手順を3回ほどくりかえして,無事起動するようになりました.

起動したときのメッセージに “Mojo/何たら”との表示が出るので大丈夫でしょう2というか,そもそもMojolicious.pmがないと起動しないから大丈夫でしょう..

Slackware 15.0 ARM版に関しては,

git branch -a

でmojoの表示が出ないので,引き続き苦闘中です.

システムトラブルのため今朝のバックアップまでロールバックしました

タイトルの通りなんですが,今朝(2023年2月2日(木))findコマンドを2つ同時にかけたら,システムが無応答になってしまい,電源リセットしたらfile systemにエラーがあるというので,fsckをかけたらエラーがボロボロ出て,修復はできましたが,不安なのでformatして今朝のバックアップに戻しました.

ファイルシステムが壊れた原因については分かりませんが,多分SSDをか弱いUSBドライバーで動かしているので過重負荷のためドライバーがダメになったのだと思います.知らんけど.

修復作業のため,同日の午後はしばらくシステムが止まっていました.

また,久しぶりの作業なのでいろいろ手順を忘れて,なかなか再起動せず焦りました.

以下は今後の自分のためのメモです.

  1. バックアップからのコピーはたぶん以下のようなコマンドを使う
cd /復旧させるシステムのルート
rsync -artlvd --sparse --inplace --numeric-ids /バックアップのパス/ .

これでたいがい時間がかかります

  1. 終わったら,復旧されるシステムのルートに/devはないはずですから,用意してある/devをコピーする(/root/devsにあるはず)
  2. formatし直すとPARTUUID等が変わるので,/bootのcmdline.txtと/etc/fstabを新しいPARUUID等で更新する
  3. あとはターゲットシステムにディスクを接続して,祈りながら起動をかける
  4. バックアップにはロックファイルなどもあるので,起動したらすぐに再起動をかける