前回までにProxmoxのインストールと初期設定が完了したので、今度は仮想マシンを作成するところから。
今回はWindows 11の仮想マシン作成。
IT系と日常系の備忘録。三日坊主。
前回までにProxmoxのインストールと初期設定が完了したので、今度は仮想マシンを作成するところから。
今回はWindows 11の仮想マシン作成。
これまでVMWare ESXiを利用して仮想環境を構築していたんですが、
という問題があり、また今後も継続的に無償で使うことができない可能性も否定できないこともあり、そろそろ別の仮想化ソリューションを検討したいなぁと。
そんなわけでいろいろ調べたところ Proxmoxというソリューションが大変よさげだったので導入しました。
なお、今回は一旦ESXi上で作っていた仮想化環境をすべてふっ飛ばして一から作ることにしたので移行作業はなし。
Windows 11の再インストールをする際、OOBE画面の操作でいちいちUSB接続のマウスを使う必要があるのは面倒だなぁと思っていたところ、知り合いから良い方法を教えてもらったのでメモ。
OOBE画面では Shiftキーを押しながらF10を押すとコマンドプロンプトが起動する。
コマンドプロンプトで start ms-settings:
を実行すると、Windowsの設定画面が表示されるので、あとは頑張ってキーボードでBluetooth接続すればOK。
ネットワークを切断した状態でOOBE画面を進めることができる oobe\bypassnro
も別途覚えておくとローカルアカウントでセットアップしたいときに便利。
ウェブサイト構築中にちょっとはまったのでメモ。
Formタグの中にSubmitを行うボタンをおけない場合、 input="submit"
のボタンをFormタグ内にhidden状態で記載し、Formの外のボタンを置きたい場所にラベルタグとfor属性を利用してボタンを設けるという方法がありますが、これだとEnter押下時にSubmitが走ってしまうという問題があったため、 HTMLFormElement.submit()を利用して回避。
ただ、これはMDNにも記載されている通りsubmitイベントが発生せず、制約検証も行われない問題が。
HTML5.1から HTMLFormElement.reportValidity()
という制約検証を行うための機能が追加されてた模様。知らなかった・・・。
これを HTMLFormElement.submit()
実行前に呼び出して結果が true
だった場合にだけsubmit処理させるようにしてやればOK。
reportValidity()
はエラーが存在する場合、required
などの制約検証に対するメッセージが該当のフォーム要素に表示されるそう。
似たようなもので checkValidity()
があり、こちらは制約検証結果をtrueかfalseかで返すだけ。エラーメッセージは表示されないので、独自にメッセージを調整したい場合などには有用。
新しくマシンを組んでWindows 11を入れてから、リモートデスクトップで正しいパスワードを入力して自動ログインできるよう設定していても、
Windows Defender Credential Guard では、保存された資格情報を使用できません。資格情報を入力してください。
というエラーが表示されるように。
仕事用の接続先に入るときならともかく、録画マシンにログインするときに毎回パスワードを入力するのも面倒なので調べてみたところ、下記のサイトがヒット。
https://www.orangeitems.com/entry/2022/10/05/182144
バグというか、パスワードを入力せず自動ログインさせるなんて危ないからとはじいてるだけかなぁとは思うものの、とりあえず私の運用ではそこまで厳密にしなくてもよいので無効化することに。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard]
"RequirePlatformSecurityFeatures"=dword:00000000
"EnableVirtualizationBasedSecurity"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]
"LsaCfgFlags"=dword:00000000
上記内容のレジストリファイルを作成して実行し、PCを再起動すれば Windows Defender Credential Guard
が無効化され、これまで通り自動ログインできるようになるはず。
Windows Defender Credential Guard
ってWindows 10ではEnterprise向けだったはずなんですけど、11ではProfessionalでも有効になったのかな・・・。
本来無効化するのは脆弱になるという意味でよろしくないので、何か他の方法があればいいんですけど。
セルフランナーでの挙動なので通常環境で起きるかどうか検証してないのですが、とりあえずメモとして。
とある案件でNuGetパッケージが更新されず、GitHub上のリポジトリは更新されているライブラリを利用するため、Submoduleを利用してました。
最近NuGetパッケージも更新されるようになり、Submoduleを利用する必要性が薄れたため、Submoduleを削除してNuGetパッケージを利用するプルリクエストを作成し、メインブランチにマージを行いました。
このメインブランチに反映したものを別のブランチにもマージしてプッシュしたところ、下記のエラーが。
GitHub Actionsのワークフローでは、actions/checkout@v2
の処理中にSubmoduleの処理をしているのですが、ここでなぜか削除したはずのライブラリの取得でエラーになってる様子。
steps:
- uses: actions/checkout@v2
with:
submodules: recursive
セルフランナーのワーキングディレクトリを消してもらったりしてもうまくいかなかったのですが、最終的にメインブランチからマージして取得せず、rebaseする形で取り込むと問題なく動きました。
Submoduleの削除で.gitmoduleからライブラリのプロジェクト参照を消していたとしても、そのブランチのもととなる位置の段階でSubmoduleを参照している場合エラーとなる?
もうタイトルのまま。
今年QNAPのNASからSynologyのNAS、DS920+に乗り換えました。
実家にもSynologyのNASを置いてまして、インターネット経由でファイルをバックアップしてます。
以前はResilio Syncを使ってたんですが、大量のファイルがあると失敗することがあり、利用を断念。Synologyが標準で提供するSynology Drive ShareSyncに乗り換えました。めちゃくちゃ安定しているので助かる。
で、それくらいならもっと安いNASにしてもよかったのですが、DS920+だとDockerや仮想マシンが利用できる、ということで奮発しました。
ただ、DS920+はメモリーが4GBしか載ってません。正直Dockerや仮想マシンを使うにはちょっと少なすぎる。
そんなわけでメモリーを増設することにしました。
今の一軒家に引っ越した2017年当初はフレッツ光で契約していたのですが、もう少し速度でないかなぁと思っていたところ、NURO光が名古屋でも利用できるようになり、値段もこれまでのフレッツでの契約よりお手頃だったことから、2018年の3月にNUROに乗り換えてました。