目次

Windows

セットアップ

オフラインのアカウントというのを選択する.

windows update

画面解像度の設定

電源周りの設定

やるべし

エクスプローラの設定

PowerShellを管理者権限でタスクバーにピン止め

WSL2 のインストール

windows terminal

プロダクトキーの確認

通知欄全表示

「設定」→「個人用設定」→「タスクバー」→「通知領域 タスクバーに表示するアイコンを選択します」 「常にすべてのアイコンを通知領域に表示する」をONに

WSL のディスクサイズ変更

https://zenn.dev/rchiji/articles/5a7216f33136f2

wsl+docker

sudo service docker restart

以下のように ~/.bashrc を書いておけばよい。

.bashrc
docker ps > /dev/null 2>&1 || sudo service docker start

状況確認

wslバージョン確認

wsl -l -v

障害対応

WSL でネットワーク周りの設定がおかしてくて ''apt'' 効かない問題

Windowsアップデートができない問題

vcxsrv

echo “export DISPLAY=¥$(cat /etc/resolv.conf | grep nameserver | awk ‘{print ¥$2}’):0.0” >> ~/.bashrc
source ~/.bashrc
dbus-uuidgen | sudo tee /etc/machine-id

Windows10

クリーンインストール

最新のバージョン

Windows 11

Windows 10 環境で Windows 11 もデュアルブートしたいとき

対応チェック

パーティションの作成

インストールメディアの作成

インストール

オフラインアカウントの作成

インストールできないときのBIOS設定について

キーボード設定

ノートPCなど内蔵キーボードが日本語配列で、外付けキーボードが英字配列のことがある。 通常であれば、配列を変更して再起動しないと切り替えられない。

面倒なのでレジストリを書き換えて、両方のキーボードが使用できるようにする。

windows update ごとにキーボード設定が変わってしまうことがある。悲しみ

結局、日本語配列と英字配列を併用することが何故かできなかったので、完全に英字配列とした。
日本語キーボードのほうがキーが多いのでノートPC本体日本語であれば問題なく使える。
キートップにシールでも貼って対応すべし。

wsl2

PowerShell を管理者権限で起動。スクリプトを実行できるように以下を設定しておく。

Set-ExecutionPolicy RemoteSigned -Force

SSH について

LAN 内のPCから Windows の WSL に直接 ssh接続したい。 ポートのマッピング (Windows の特定のポートに届いたデータを WSL のポートに流す設定)と、 ファイアウォールの解除 (windows マシン外からのアクセスを制御する設定、デフォルトではガチガチ)

# ポートのマッピング状況を確認 (管理者権限 powershell で)
netsh interface portproxy show v4tov4
 
# ポートのマッピングをする
netsh interface portproxy add v4tov4 listenport=22 connectaddress=localhost
# localhost ではなく wsl -e hostname -I で表示された ipアドレスを使うべき(先頭のもの)

ファイアウォールを設定

コントロールパネル、システムとセキュリティ、 Windows Defender ファイアウォール、 ファイアウォールの状態の確認、
詳細設定、受信の規則、新しい規則、ポート、次へ、TCP、特定のローカルポート 22

送信側も何かしないといけないのか?

こっちのほうが洗練されているかも https://zenn.dev/shishimaruwo/articles/f106b12896e2ba

メモ

Get-NetFirewallRule -DisplayName 'WSL 2 Firewall Unlock' | Get-NetFirewallPortFilter | Format-Table
Show-NetFirewallRule | where {$_.LocalPort -eq "22"}
 
# 時間は数分かかるが、 22番ポートを利用しているファイアウォールのルールが確実に表示できる。
Get-NetFirewallRule | Where-Object { (Get-NetFirewallPortFilter -AssociatedNetFirewallRule $_).LocalPort -eq 22 }

未整理

- UWP アプリの起動方法を特定する

Get-AppxPackage |? { $_.Name -like "*Terminal*" } | tee-object -Variable packageMatches

$packageMatches |% {
    $executableName = ((Get-AppxPackageManifest -Package $_.PackageFullName).Package.Applications.Application.Executable)
    if ($executableName) {
        "Start-Process ""$($_.InstallLocation)\$executableName"""
    } else {
        "No executable found"
    }
}

git bash と tmux を windows terminal から使う

web上にある情報は pacman を使ってインストールするものが多いが、ほとんどうまくいかなかった。 うまくいったのは以下。

Windows の小ネタ

タブグループについて

Chrome などでウィンドウを二つ作って左右に配置したとき、タブグループになる。 タブグループはタスクバー(通常は画面下部)のアイコンをホバーしたときに通常のウィンドウと並列で表示される。 つまり、ホバー時に出てくるウィンドウが重複している状態になってしまう。 これだとウィンドを選んで「これじゃなかった。これかな?」と選択しなおすときに何度もミスするので邪魔である。

設定からシステム→マルチタスク→ウィンドウのスナップ→「タスクビューのタスクバーアプリの上に…」をオフにする。