クラウドゲーミング Windows Server セットアップ手順書@Vultr
〜RDP接続
スナップショットのイメージを作るマシンはSSDが小さいほうがいい!!
そうすると復元が早くなる
ただし NVIDIA GPU を使うマシンである必要はある (そうでないとたぶん Parsec とか SteamVR がうまく動かない)
NVIDIA A16 の 1/8 GPU くらいが良いのでは (50GB NVMe)
実用としてはこれくらいのスペックがよさげ (VRChat だと 8GB VRAM は足りないので 16GB のでも)
NVIDIA A40, Tokyo, Windows Standard 2022 x64, 1/6 GPU
Enable Auto Backups をオフにする
Enable IPv6 をオン
$266/mo ($0.396/hour) になっていることを確認して Deploy Now
〜〜Installingの間待つ〜〜
IPv6アドレスにRDPで接続
Settings → Update & Security → Windows Update
Check for updates
ダウンロードが始まったら次に進む
Settings → Time & Language → Language
Preferred languages で Add a language → Japanese
Handwriting は切っていい、Text-to-speech は切ると困るかもしれない
ダウンロードが始まったら次に進む
この画面はそのまま置いておく
ダウンロード中に .NET Framework 3.5 のインストールをする
ないとたまに困るアプリがある
Powershell を開いて
$ Install-WindowsFeature -Name NET-Framework-Core
これも放って次に行く
Region → Country or region を Japan に設定
言語ダウンロードが終わっていると思うので、
Japanese を上に持っていく
English (United States) を Remove → なんかregionがどうのとか言われるが Remove language
Windows display language も日本語にする (ログアウトはしない)
右側の Administrative language settings を開く
Copy settings… を押す
Current User が 全部 日本語とか Japan になっていることを確認する
Copy your current settings to: の2つにチェックを入れて OK
再起動はしない (Later)
Change system locale... → Japanese (Japan) → OK
再起動はしない (Laterを選択)
ここまで来たら Windows Update が再起動してほしそうにしていると思うので Windows Update のページに行って再起動
〜〜再起動の間待つ〜〜 (Consoleで進捗を見ておくと良い)
Ctrl-Alt-Delete を要求される画面まで来たら再度RDP接続
ここで日本語になっているはず
なんかもう一回くらい Windows Update あるはずなので裏でダウンロードさせておく
設定→アカウント→他のユーザー→その他のユーザーをこの PC に追加
真ん中のカラム(「ユーザー」と「グループ」がある) の「ユーザー」を右クリックして「新しいユーザー(N)…」
https://gyazo.com/140eb0883956e514e84ecc48e9838ecf
ユーザーをなんかいい感じに作る
できたらシュッとウィンドウが消える
終わったら設定に戻って一旦他のタブに切り替えてから「他のユーザー」タブに切り替える
さきほど作ったユーザーを管理者に変更
ここで Administrator の RDP 接続を切断、先ほど作ったユーザーで入り直す
lusrmgr.msc を開く
真ん中のユーザーをダブルクリック
Administrator → 右クリックでプロパティ
「アカウントを無効にする」をオンでOK
Parsecをインストール
Sharedとしてインストール
ログインして設定を開く
普段のアカウントとは別垢にしておいたほうがいいかもね (他ホストに入れてしまうので)
設定 → Experimental → Host - Microphone (Experimental) を Persistent に
仕上げ
設定→システム→詳細情報→システムの詳細設定→パフォーマンス
視覚効果→デザインを優先する (好みで)
詳細設定→次を最適なパフォーマンスに調整: プログラム(P)
サーバー マネージャー → ローカルサーバー → タイム ゾーン でタイムゾーンを JST に変更
設定 → Windows Update → 開発者向け → 「エクスプローラー」の部分に全部チェックを入れ適用
エクスプローラーの「クイック アクセス」にユーザーフォルダを置いておく
タスクマネージャ
パフォーマンス
左のタブを押して「グラフの表示」
CPUを開いてグラフの右クリック→「グラフの変更」→「論理プロセッサ」、「カーネル時間を表示する」
Windows Audio サービスを自動開始にする
おまけ
Azure Arc Setup を消す
$ Remove-WindowsFeature -Name AzureArcSetup
Administrator で RDP にログインできないことを確認する
Discord に起動通知
$ Invoke-WebRequest -Body @{"content"="@everyone booted!"} -Method Post -Uri
この後に Discord の URL
を書いて ps1 に保存する
タスクスケジューラ起動
「基本タスクの作成…」
「操作 > プログラムの開始」まで適当に進める
「プログラム/スクリプト」は
$ C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
「引数の追加 (オプション)(A)」にps1のパス
「完了をクリックしたときに、このタスクの プロパティ ダイアログを開く」を有効
セキュリティオプションを「ユーザーがログオンしているかどうかにかかわらず実行する」「パスワードを保存しない」に
設定タブ→「タスクが失敗した場合の再起動の間隔」を有効、1分
これで OK で終わり
Steamセットアップ
ログイン
SteamVRをダウンロード
OVR Advanced Settings をダウンロード
Steamの設定→セキュリティ→このコンピューターにアカウントログイン情報を保存しない を有効にする
Virtual Desktop セットアップ
各pfのアカウントを設定する
$ tailscale up --advertise-tags=tag:cloud-gaming-node --accept-dns=false --force-reauth --unattended
SteamVR 設定
Virtual Desktop で SteamVR に入る
VRの設定
詳細設定を表示
一般→SteamVRホームを「オフ」
rclone
rclone.exe だけユーザーフォルダにコピー
Powershell 開いて
$ ./rclone.exe rcd --rc-web-gui
これで WebUI が開くので適当に設定する
↑のタスクスケジューラのps1に追記する
$ Start-Process -NoNewWindow /path/to/rclone.exe "mount --read-only --no-console remote名: G:"
ディスク拡張
自動化する方法が謎