xfs上でrm -rfしてしまったものを復活させる

夜中に電話で起こされて何事かと思ったら「間違ってrm -rfしてしまいました」と。
対象ファイルシステムがxfsでして、extundeleteやext4magicが使えません。xfsでは諦めろ的なblogが多かったですが、Photorec/TestDiskというツールでなんとか回収できました。しかし欲しかった対象ファイルのうち3割ぐらいでしょうか…
残りは少し古いバックアップがあったので、合わせてみて、不足分は泣きを見ることにしてもらいました。

オープンソースで無料のファイル復元ソフト「PhotoRec」 – GIGAZINE
GIGAZINEの記事は2007年ですが、

Partition Recovery and File Undelete
配布元を見ると2024年でも更新されているし、XFSに対応している。
今回はLinux(CentOS Stream 9)でGUIなしの操作でしたので、コマンドラインだけで使えるツールであることは重要。

データ復旧ソフトと復元サービス(NAS対応)|復旧天使 公式
復旧天使という有償のもあるのですが、LinuxではGUIソフトのようで、今回はパス。

消しちゃったファイル群自体は200MBもないハズなのですが、対象パーティションが100GBあるので、最悪それぐらいの削除ファイルが復活される可能性があります。
ということで128GBのUSBメモリを用意して、fdiskでパーティションを切ってxfsにてフォーマット。回収ファイルの置き場とします。

回収ファイルと別領域のhomeに
testdisk-7.2.linux26-x86_64.tar.bz2 をダウンロードして、tar xjfで解凍、photorec_staticを起動すると、CUIでのメニュー操作が可能になります。
対象パーティションと書き込み先を指定して、あとは待つ。
回収先にはrecup_dir.XXXというディレクトリと共に、回収されたファイルが大量にできていきます。
ファイル名は回収されておらずランダムになっているので、あとは中身を見ながらリネームするなりしてぽちぽちと回収していくのです…

バックアップはこまめに、別領域、別媒体に取るべし、な…

Minecraft for Windowsのインストールができなかった(解決)

PCを新しくしたのでMinecraft for WindowsをMicrosoft Storeからインストールしようとしたのですが、LauncherやJava Editionは入るけど統合版(だっけ?)のfor Windowsがインストールできません。「ライセンスの取得中」の後に「サーバー側で問題が発生しました」と出てしまいます。

結論。Microsoft Storeに紐付けられるWindowsは10台まで。その数が多いとダメらしい。
古いデバイスのリンクを解除したらあっさりとインストールできました。

Microsoft Storeの自分の顔アイコンから「アカウントでデバイスの管理」を選ぶとブラウザでMicrosoft Accountの設定画面が開きます。
メニューから「デバイス」>「Microsoft Storeのデバイス管理」を開いて、古い登録デバイスのリンクを解除します。

(↑上の画像は既にいくつか削除した後です)

その後Microsoft Storeで再度インストールを試みると、無事ダウンロードとインストールが始まりました。

参考
サーバー側で問題が発生して、Minecraft for Windows が起動できない(解決) – 調べながらやるストラテジー&RPG

Windowsセキュリティからコア分離をオンにしたらブルースクリーン

タイトルの通りですが、Windows10/11でWindowsセキュリティ→デバイスセキュリティ→コア分離の詳細→メモリ整合性「オフ」を「オン」にしたらブルースクリーンになってしまいました。
ブルースクリーン画面にはAmDRyzenMasterDriver.sysと出ていましたが、まぁメモリ整合性オンが原因でしょう。

再起動してもログオン直後ぐらいでブルースクリーンになるので戻せません。
セーフモードで起動して、レジストリエディタで直接「オフ」に書き換えて回復しました。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity
の中の
Enabled
を、0でオフ、1でオンということで、0にして通常起動しました。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity

WindowsのIME切り替えを無効にする

Windowsで日本語入力するのにATOKを使っているわけですが、MS-IMEに勝手に切り替わってしまうことがよくある。
原因はCtrl+Shiftで言語切り替えが行われてしまうことなんですが(ゆっくりCtrl+Shiftを押してみると確かに切り替わるのがわかる)、作業中とかショートカットキーついでに出てしまうことも多いです。

MS-IMEを削除してATOKのみにすれば切り替わりも起こらないハズなんですが、なぜかWindows UpdateとかのたびにMS-IMEが復活してしまうので、またいつのまにかMS-IMEになっちゃってたりして。

これを防止するには、そもそも切替をさせなければ良い、ということで設定します。

Windows10の場合ですが
設定>デバイス>入力>キーボードの詳細設定>入力言語のホットキー
「入力言語を切り替える」→「キーシーケンスの変更」で全部「なし」にしてしまえば良い。

ずいぶん前から気になってたんですが、ここ最近Windowsを新規インストールして使い機会が多かったので、思い出して書き留めておきます。

fr24のfeederのアップデート

自宅にRaspberry Piと受信アンテナを組み合わせたFlight Rader 24用のfeederを設置していましたが、長年放置していたらソフトウェアのバージョンが必要な状態になっていました。そのときに困ったりしたのでメモ。

aptが動かない

raspbianのstretchリポジトリが使えない状態に(Relaseがないとか)なっていたので検索。
http://legacy.raspbian.org/raspbian/ に移ったとのことなので、/etcapt/sources.listを書き換え。

deb http://legacy.raspbian.org/raspbian/ stretch main contrib non-free rpi

Rrepository for … stretch Release “does not have a Release file” – Raspberry Pi Forums

apt updateとupgrade

apt updateしてもそんなに更新されませんが、アップグレード可能なパッケージがあるよと表示されます。apt list –upgradable で見てみるとたくさん出てきたので、apt full-upgrade で全更新。そこそこ時間がかかります。

fr24feed_updater.shが動かない

Flightradar24のfeederのアップデートがfr24feed_updater.shで出来ないならinstall_fr24_rpi.shで再インストールすればOK #RaspberryPi – Qiita
まんまこちらの例の通りで。/etc/fr24feed.iniをメモしてから再インストール実施。

sudo bash -c "$(wget -O - https://repo-feed.flightradar24.com/install_fr24_rpi.sh)"

設置場所のlat,lonはGoogle Mapsで自宅にピンを立てて読取り。
data sharing keyはfr24feed.iniにも書いてあるしfr24のマイアカウントからも取得できる。
sudo systemctl restart fr24feed で再起動、fr24のdata sharingからonlineになったのを確認して完了。