feature image

2023年12月16日 | ブログ記事

MacからWindowsを弄る方法?~RDP環境を作ろう~

この記事はtraPアドベントカレンダー2023 16日目の記事です


【注意】この記事は パソコン初心者(traP比)[1] の自分がリモートデスクトップ環境(RDP環境)を作ろうと右往左往しているさまを徒然なるままに書き記したものです。 技術的な要素の収穫は(記事の長さに対して)そこまで見込めないのでその点ご了承ください。

また、一部用語について使い方が誤っている,適切でない部分があるかと思いますがその際は指摘くださると助かります。

RDP環境及びデスクトップPCについて

リモートデスクトップ環境。リモートもデスクトップも環境も大体の人が聞いたことがあるワードだと思いますが、概ねそれらの意味を統合させたものに近いです。細かいこと抜きにして言えば遠地にあるデスクトップPCを手元環境のノートPCで操作しようってことです。

デスクトップPCについて色々

一応デスクトップ(PC)について。これは基本的に持ち運ぶことのない据え置きのパソコンのことを指します。[2]反対に携帯デバイスとして持ち運ぶことを想定しているものがノート(もしくはラップトップ)PCと呼ばれています。[3]最近ではノートPC(やスマホ)のスペックも十分に高くなりネットサーフィンやレポートの作成,Unityを用いたゲーム開発まで行えるようになっています。というか入学時の自分のデスクトップPC(4年前のミドルくらい)は入学時に買ったMacBookに完全に抜かされてた。[4][5]

しかし心配不要。デスクトップPCは後から幾らでも強くできます。CPUやGPUに代表される部品群を強いものに更新していけばいいのです。そのため基本的にはノートPCよりもデスクトップPCの方が性能は高くなります。逆に言えばRDP環境を作ればノートPCのスペックもネットサーフィンが快適にできるくらいで十分になります。家電量販店のハイスペックノートPCの罠に嵌らなくなりますね。

ちなみに中の部品をすべて取り換えたデスクトップPCを果たして購入当初のデスクトップPCと言えるかについてはまた別の話です(cf:テセウスの船)

なぜRDP環境が欲しくなった?

遠地で自宅環境のデスクトップを操作できるメリットは幅広く人の数だけ理由がありそうな部分でもありますが自分の場合は以下のように集約されていました。

実際に現在大詰めを迎えている部内冬ハッカソンではバックエンドの環境構築がWindows(上のWSLで動かしている人)向けのみで十分となり環境構築を担当してくれた方の負担を減らすことに貢献していました。[6]

以下はWSL仮想環境を開いているWindowsの画面をリモートデスクトップを通してMacから見ている図です。3つのOSがここに集合 なんちゃって

RDP環境を作ってみた

RDP環境を作る方法はネットワークの知識,SysAdの能力,かけられる時間及び費用コストに比例して増加していきますが、RDPについて何も知らなかった頃の自分には一択しかありませんでした。
MicrosoftRemoteDesktopなど有名なものが色々ありますが、ネットワーク周りの設定で詰まってしまいました。(あと家のネットがアパート共同回線なせいで色々弄れなかった)

Chrome リモートデスクトップ

はじめに手をつけたChromeリモートデスクトップが自分には最適解でした

手順

  1. GoogleChromeを導入
  2. 拡張機能 リモートデスクトップ を導入
  3. クライアント側(操作する側),ホスト側(操作される側)双方で同じgoogleアカウントにログインしておく
  4. あとは案内に沿ってやればOk

メリット

実際にラグを計測したところ以下のようになりました。回線状況については双方とも良好なはずです(Web時計を使った雑な測定ではありますが)

左が手元,右が自宅パソコン 手元が0.01秒ほど進んでおりこれがラグに相当する

FPSでもやらない限り気にするようなものでもないでしょう。

ちょっと気になる

画面系については自分はシングルFHDモニターのため問題ないですがマウス系についてはやっぱり気になるところがまだ多い印象。でもこういった気になる点って大体自分のリサーチ不足だったりもするので気が乗った時に調べてみようと思ってたり。

キーコンフィグをしてみよう(Mac to Windows)

ご存知の方も多い通り、若しくは知って頂きたいこととしてWindowsとMacのキー配置はそこそこ異なります。

特に特徴的なのはかな英数切り替えがMacだとスペースバー隣接だったり(日本語キーボード)ctrl,altキー相当のものがcmdやoptionみたいな感じになってたり(完全互換というわけではない)

というわけで、リモートデスクトップ中にのみキーコンフィグ設定を施してできる限り手元のパソコンの操作感に近い状態でWindowsを操作できるようにしようと思いました。
用いたツールはKarabiner-Elementsです。

変えたいキーは?

以下は実際に設定したキーコンフィグのリストです。解説は下でしてます

Mac Windows
leftcommand control
option Windowsキー
^control alt
かな 半角/英数キー(` に相当)
英数 半角/英数キー
command+←/→ home/end キー

leftcommand(以下cmd),option,^controlキー:Windows各種キーとの対応用

cmd+C/X/V でコピー/切り取り/貼り付け のようにWindowsでのCtrl+C/X/Y/etc. キーの操作はcmdキーに割り当てられているためleftcmd->controlに

キー配置的に近い位置にあるoptionキーをwindowsキーに

余った^controlキーについてはaltキーに振り分けました(optionと^controlの関係を逆にしている人もいるみたいです)

かな英数関連

かなと英数をスペースバーの左右で切り替えるのもまたwindowsとmacの大きな相違点。ずっとWindows使ってた人間でも3ヶ月程度もすれば慣れるもんだから人間の適応力ってすごい。
とはいえこのままではWindows側では何も反応してくれません。実際の挙動とは異なるものになってしまいますが、Windowsキーボードの左上にある半角/英数キーと対応させるようにすることで手元でガチャガチャやっていれば切り替えできるようにしていたりします。

command+←/→:macでよく使うショートカット

この操作をすることでテキストの行頭/行末に飛ぶことができるので重宝しています(CLI慣れていれば^Aとかがパッと出てくるのだろうがまだ覚えきれてない)
このキーの挙動がwindowsキーボードのHome/End に似ている気がしたため割り当てて使っています。(完全に同じ動作かは知らない)

本当はこの後にjsonファイルを使った設定をしていこうってコーナーにしたかったのですが余白が足りない締め切りがかなり迫ってきているので今回は省略で。ごめん。もしかしたら追記するかもしれませんが。

実際の使用感

コーディング作業の上では特に支障なく使える。 という感じです(環境整えてからすぐテスト→ハッカソンになったのでコーディングで多用している)。また、画面を大きく動かす系のゲームは(マウス操作の観点で)不向きかもしれませんが比較的画面変化の少ないゲームであればプレイできるかと思います。また、動画の視聴もそれほど問題なくいけるって感じです(わざわざリモートデスクトップでするかは置いといて)。
ハッカソン明け次第他にもどのような遊び方ができるのか試してみたいなと思っていたり。いなかったり。

More Improvements

ここには今後RDP体験を向上させるにあたってやりたいなぁってことを書き記しておきます。こうして外部に載せておくことで言質になりますからね(?)

おしまい

それではハッカソンの開発とポケモンのDLCに戻ります
明日 12/17(日)は @kitajuさん,@noc7tさんの担当です。楽しみ〜!

締める言葉が見当たりませんのでテンプレですが悪しからず


  1. typo(タイプミス)を連発したりAltキー関連のショートカットをつい先日までほとんど知らなかったり(traQIDに入っているのに)CLIのコマンドはほとんど知らなかったり(ファイルのコピーも調べないとできない) ↩︎

  2. ゲーム機で例えるならWiiやPS5が相当します。これらを持ち運んで遊ぶ人も聞いたことがありますが... ↩︎

  3. ゲーミングノートPCみたいな果たして持ち運びを想定しているのか?と思うような製品もありますが ↩︎

  4. 夏休みのバイト代をつぎ込んでCPU,グラボを新調し現行ミドルスペック程度にはなったと思います(CPU:Ryzen 7 5700X GPU:Radeon 7600RX) ↩︎

  5. もちろん得意分野と苦手分野があるので完全上位互換というような状態ではありませんでしたが ↩︎

  6. ちなみに1行追記するだけでmacでも動かせるようになりました(UNIX環境なので当たり前ではありますが) ↩︎

Alt--er icon
この記事を書いた人
Alt--er

23B_ゲーム,Sysad,サウンド,アルゴに興味あり。 なんか色々頑張りたい

この記事をシェア

このエントリーをはてなブックマークに追加
共有

関連する記事

2023年12月11日
DIGI-CON HACKATHON 2023『Mikage』
toshi00 icon toshi00
2023年12月13日
HgameOPについて語る
noc7t icon noc7t
2023年12月25日
オレオレRustプロジェクトテンプレート
H1rono_K icon H1rono_K
2023年12月18日
GPU側でレイヤーブレンドする絵描きソフトの同期方法
tq icon tq
2023年12月4日
私的ジャンル別最強映画番付(2023年版)
botoku_izm icon botoku_izm
2023年12月24日
クリスマスは「青春」しよう!
ogu_kazemiya icon ogu_kazemiya
記事一覧 タグ一覧 Google アナリティクスについて 特定商取引法に基づく表記