Windows を再インストールして、

wsl --import-in-place Ubuntu D:\wsl\ubuntu\ext4.vhdx

みたいなことをしたら以上のようなエラーをいわれるようになってしまった……

ただ、管理者権限だと起動できる。該当する .vhdx ファイルのプロパティのセキュリティタブを見てみると変更権限などが一般ユーザになかったため追加したらうまくいった。

  1. トップ
  2. tech
  3. Error code: Wsl/Service/CreateInstance/MountVhd/E_ACCESSDENIED

Windows11 にしたところ Intel X520-DA1 な NICが認識しなかった。

ドライバを検索しても「ないよ」と言われる。天下の Intel だぞおかしいと検索すると無情にも Intel 公式に「解決方法X520 対応の次のドライバーリリースは バグ修正のみであり、新しい機能や OS のサポートがないため、Windows 11 では X520 用のドライバーはありません。」 とか言われる。解決方法じゃない……

同様に困っている人はいるようだ。このエントリではセットアップファイルからドライバを抜き出して、手動で認識させる方法でうまくいっている。 のでこれを試してみた。

Windows 10 向けドライバダウンロードページから Wired_driver_27.6_x64.zip をダウンロードして、展開し、さらに 7-zip で Wired_driver_27.6_x64.exe を展開するとドライバファイルがでてくる。

デバイスマネージャからNIC選択し、ドライバを検索→手動でディレクトリを検索→展開したディレクトリを指定。でうまくいった。

2011年のQ2に発売された製品らしいから10年は経過してるから仕方ないのかもしれないけどウーン……

  1. トップ
  2. tech
  3. Windows 11でのIntel X520-DA1 (SFP+)

regedit.exe で適当な場所 (HKEY_CURRENT_USER など) に新規キーを作る。ここでは OLD とする。OLD を選択した状態で「ファイル」→「インポート」して、ファイル種別に「レジストリハイブ」を選択すると NTUSER.dat を選択できる。

NTUSER.dat を選択する「OLD」以下を削除して置き換えるが良いか?という旨のダイアログが出るのでOKする。

これで読みこめるのでキーを探してなんとかする。

ただ以下のような問題があるのでお勧めできるかというと微妙……

この方法のやっかいなところ

Administrator アカウントでもアクセス不可能で削除もできず、アクセス許可も編集できないエントリができてしまう。どうやら SYSTEM アカウントでだけアクセスできるらしい。

sysinternals というツール集に含まれている psexec という実行ファイルを使うと SYSTEM アカウントで実行することができる。

.\PsExec64.exe -i -s c:\windows\regedit.exe

さらに SYSTEM 所有のレジストリエントリの子で TrustedInstaller が所有者になっているみたいなややこしいことなっている場合がある。この場合、所有者を SYSTEM にしつつ、SYSTEM にフルコントロールを与えると消せるようになる。とても面倒くさい。

親エントリで所有者を SYSTEM にすると (既にSYSTEMでも)「サブコンテナーとオブジェクトの所有者を置き換える」というチェックボックスがでる。これで一括でサブオブジェクトなどの所有権を置き換えできる。

  1. トップ
  2. tech
  3. 別PCのNTUSER.datから値をコピーしたいとき