Windows Insider Previewをいれて使っていたのですが、日本語がうてなくなり、ひとつ前のビルドにした後、その後に届いたアップデートを適用したところ無事お亡くなりになりました。
Windows Insider Preview nihongo utenai
— KBT / モバイルカーオフィスを作ろう (@ku_suke) 2021年1月15日
大体のファイルはgitなりonedriveなりに入れていたので問題なかったのですが、問題があったことの反省やその後の新たに知ったことなどをメモに残しておこうと思います。
# 起動しなくなった
最後のアップデート適用後、数日後かな、2度目の再起動くらいでようこそ画面からログインできなくなりました。なんとなくNvidiaとXBOXまわりのスタートアッププロセスの相性かな?と思いました。そこでセーフモード起動し別のAdminユーザを作成し、ひとまずログインして思いつく非オンライン同期ファイルをUSBに退避しました(.sshとか開発環境回り)
# 救えなかったもの
その後初期化し(MSIのリカバリ領域もなんか死んでて結局別PCのMediaCreationToolからインストールした)再度使い始めて、以下バックアップ忘れに気づいたものです。
というのも、最初実は軽いつもりで、ユーザデータを残した状態でWindowsの初期化を行ってみたんです。そしたらなんと、AppDataほかユーザーディレクトリ直下のファイルがなくなっていました。ドキュメントとかデスクトップとかしか保持しないんですね・・
# WSL2でdocker環境を作りなおし
気を取り直して、DockerとWSL環境を作り直すことにしました。以下は細かいメモです。
- Docker Desktop for windows(WSL2 backendであっても)は遅い、WSL2上のLinux版Dockerを使うこと。たぶんOSをまたいだ読み書きのせい。
- 今回Ubuntuをrootユーザで使うことにした。linux dockerにおけるユーザID問題がめんどくさいので、どのみちWSL2 backendのDockerでもrootで動作するわけだしと。
- WSL2上のDockerはdaemon化できないらしいので、.bashrcに起動スクリプトを描いた。なお、以下の記事のうちvisudoはrootになったことで不要になってしまった。
- Windows gitは新しいCredential ManagerでPersonal Access Tokenの発行が不要だった(OAuth)。Linuxはしらん。そもそも.sshごとWSLが消えた。
- Dockerのインストールまで行って気づいた、WSL1がデフォルトになってた。WSL2をデフォルトにしよう。
- ローカルのDNSがうまく動作しなかったので、resolv.confの設定を行った
- ビープ音を消した。もっとかわいい音にならんものか。
- .envとかローカルのcredentialはlastpassとか1passwordとかに入れてる人が多かったみたい。あとSlackの自分宛DMとか(よくない)
- WSL環境のバックアップもできるらしい
というわけで大変だった。CUDA on Dockerはしばらく遊ばないので、Stableに落ちてくるまで待つことにします。