今更ながらWHSからWindows Storage Serverへ移行

Windowsの開発仕事が増えて先日もDELL XPS 15 2-in-1を購入したばかりですが、次に考えなければならないのがバックアップです。数年前まではWindows Home Server 2011(以下WHS)でバックアップしていました。こいつの長所は、

  • 夜間に勝手にスリープから起きてバックアップを実行してくれる(意識不要)
  • OS込みのベアメタルリストアが可能(しかもネットワーク経由で直接)
  • 個別のファイル単位の履歴付きの取り出しが可能
  • 複数PCのバックアップ間で重複ファイルを省いてバックアップ総量を減らす機能
  • 複数PCのバックアップ状況をダッシュボードで一元管理
  • なんといってもMS純正の安心感

といった点でした。しかし一部マニアにのみ惜しまれつつ後継版開発は終了し、メンテナスサポートまで終わってしまいました。Windows10には一応対応してるのでリモートアクセス機能など外に出すような機能だけ無効化して使い続けることも考えましたがUFEI環境のリストアに不具合があるなんて話も聞きます。いくら普段バックアップがとれてたっていざという時に使えなければ意味がないので、無理矢理使い続けるという選択肢は断念。その後、手頃な代替手段が見つけられずWindows機の利用頻度自体激減してエンコくらいになってたのでまぁいっかーということでノーガード戦法でした。開発データはGithubなどに上げてあるとはいえ、開発環境のセットアップもそれなりに複雑で時間がかかるので、やはり仕事で使う以上はきちんとしたバックアップ体制を整えようと決心。

しかしあいかわらずWHS並、ぶっちゃけるとmacOSのTimeMachine並のユーザビリティを保つソリューションが見付からず。Windows10搭載のバックアップは履歴付きのデータフォルダバックアップとベアメタルリストア用が別になってて使いづらそう。EaseUSはネットワークリストアがサブスクリプション版でしかできないらしく5台ライセンスで数年使うと後述のWSSとどっこいな価格になる、など。

Windows Storage Serverという選択肢

WHSからの乗り換え先どうすんだ?って話題になってた頃、Windows Storage Server(以下WSS)が随所で囁かれていたので存在自体は知っていました。いわゆるAD環境などを構築するWindows Serverからファイルサーバー系の機能だけを抽出したようなSKUがWSSです。WHSの後継というべきレベルのバックアップ機能を搭載しています。しかしWHSと違ってDPSライセンスがなく組み込み済みハードウェア製品を買うしかなくて、当時確かそれがHDD別で8万くらいしてて尻込みしてしまいました。時が経ち現在、最新はWSS2016なわけですが1世代前のWSS2012R2搭載製品が若干安く処分されるようになりました。BUFFALOやIO-DATAなどのHDD抱き合わせで2016のものは2TBでも10万オーバー。例えばこれ。

対して今回選んだThecusのW4810は2012R2でHDDは別で税込み59,800円(さらにポイントバックなどで5,000円分くらい還元)。後から好きな容量、ブランドのHDDを追加できる点は自作erとしては大きな魅力です。BUFFALOのNASは今までも痛い目見てますし…

悩んだのはWSS2012R2はこの来月の2018/10にメインストリームサポートが終了するという点。まぁでも延長サポートは2023/10/10だし、あと5年使えればいっかーという特攻してみることに。このあいだのどこかでWindows10の次バージョンになったらアウトですが、まぁ当面10のままでいくみたいだしいいかなと。もしかしたら10の中での半年更新のどこかの版で唐突に動かなくなるかも知れませんが…

ちなみに今後登場するWindows Server 2019ではこのクライアントバックアップすらなくなってしまうようです、、とても良い技術なのにどうしてこうMicrosoftは捨て去ろうとするんですかね。「クラウドでえぇやろ」ということなんでしょうが、感覚がオッサンなのかとてもシステムや動画などを含んだアセットの全てをクラウドにネットワークで送信して保存するという感覚が馴染めません…

Thecus W4810

WSS製品は元から少ないうえに2012R2で現状手に入って自分でHDDが拡張できて、というともうこのメーカーしかありません。2ベイが欲しかったけどもう手に入らず。5ベイもあるけどいらないので自動的にこれが唯一の選択肢となりました。ヨドバシやAmazonでも扱いはなく、もはや在庫限りであるうちに買わねば高価でHDD換装が(たぶん)難しいBUFFALO/IO-DATAやタワーケースの富士通とかしかなくなっちゃう!ということで、XPS買ったばかりでしんどいけどオーダー。

W4810はOS領域としてSSDを搭載しているので、HDDは安定性と低発熱をとって型落ちのWD REDのヘリウム充填だった頃の8TB(現行はヘリウムじゃなくなっちゃったんですよね)。これももう扱ってる店が減ってて(あっても高くて)入手に難儀しました。まぁちょうど録画サーバーのストレージが逼迫してきていて逃し先も欲しかったので少し余裕みとく意味でも。

HDDを入れる前はほぼ無音と呼べる静かさでした。HDDを入れると同時に棚に入れてしまったのでどのみちあまり存在感を感じるほどの音は聞こえないです。HDDの装着もネジ不要でSynology 1511+並の手軽さ。

ちなみにメモリは4GBですがDDR3L(低電圧)の1600で2スロットあるうちの片方に4GBボードが刺さってるぽく、CPU-Zで確認したところ、SAMSUNGのM471B5173EB0-YK0という型番が判明。ドンピシャのはこれですね。

まぁこれでなくてもDDR3Lで1600のものなら動くと思いますがなんとなく相性がいいかと思って少し高かったけど注文。なお最大は8GBのようなので、4GBを1枚足すのが一番お得。

普通に動かしてる分には50〜60%程度の使用率ですが、たまにRDPしていてすごくモッサリすることがあるのと、将来的にHyper-Vでも使うかもなという目論みもあったりで、同一品番のものが手に入るうちにと買って見ました。なお、Windows Storage Server 2012R2でもEssential版はHyper-Vライセンスは無しです。これはHyper-Vが使えないということではなくWindows Serverを仮想環境で同時稼働させる権利がない、ということだと理解しているので、Linux系OSや別途ライセンスをDSP版などで買ったクライアント版WindowsなどならOKってことだと理解しています。

ハードウェアとしては今のところ満足していますが、サポート面では少し不安が残ります。単に古い製品だということもありますが、例えばメーカー公式サイトでリカバリー用のISOイメージの配布ディレクトリが空になってて入手できません。単にミスによるものなのか永久的なものなのか不明ですがいざって時に困りそう。またマニュアル類も乏しく、ペラペラの初期設定説明だけでWindows Serverの利用方法に関しては付属も公式サイトもまったく役立たず。バックアップのセットアップ方法どころかHDDの増設手順すら情報がない状態です。それなりにWindows Serverの知識が求められます。この辺りはWHSとは違って、法人向けでセットアップも込みで販売される前提のパッケージングなんでしょうかね。

とりあえず”Storage” Serverの本ではありませんが、Windows Serverの2012R2の解説書としてこれをKindleで購入。

最低限、ストレージ周りの設定などについてはこれを参考に終わらせることができました。もちろん普通にフォーマットしてファイル共有するだけならクライアントWindowsとそうかわらないんですが、Windows Server(と最近のクライアントWindowsでも密かに)使える記憶域プールなどのストレージ仮想化機能についての情報は参考になりました。記憶域プールはLinuxのLVMのような仮想化機能です。複数のドライブをつなぎあわせて1つの大きな仮想ドライブと見立てて、そこにパーティションを切って領域を確保して使います。後から別の物理ドライブに移行したりがやりやすくなります。また(シン)プロビジョニングという機能で実際よりも大きいパーティション領域を確保しておき、足りなくなる事に足すといったことや、ミラーリングやRAID5相当の冗長化付きドライブも作れます。今回はHDDが1台のみであること、おそらくOSの使用期限が切れる5年後くらいまでにバックアップで8TB使い切ることはないだろうということで、パフォーマンス優先で仮想化はしつつもプロビジョニングはなし、もちろん冗長化も無しで構成しました。次にファイルシステム。NTFSとよりデータ保全性が高いReFSという新しいフォーマットが選べます。ReFSだと定期スクラブを行って問題があるセクターは自動的に空き領域に移設してくれるとかヨサゲな特徴をもっていましたが、目的のひとつである重複削除が使えないということで、NTFSをチョイス。そもそもReFSのセクター代替機能は記憶域プールにスペア領域があり、かつパリティ冗長化をしてなければやりようがないことなので、メリットが少ないかなと。

ストレージ領域1つ作るにもこれらの違いや、どれだけパフォーマンスに差が出るかというのがわからずかなり時間を使いました。いまだに正解なのかどうかもよくわかっていません…まぁそんな感じで落ち着きました(実はなんだかんだで2回も初期化し直したw)。

■クライアントバックアップの設定

そして一応サーバーとして動きだした後、いよいよクライアントバックアップの設定ですが、これがまた色々注意点がある。

まずバックアップデータの保存先。W4180+は出荷時はOS用のSSDしか内蔵されておらず、当然すべての保存先がそちらになっています。HDDを追加してもそこを直さないと巨大なバックアップフォルダがSSD内に作成されてあっというまに容量不足になってしまします。変更はダッシュボードの「記憶領域」タブから。「クライアントコンピュータのバックアップ」がC:¥ServerFolder下にあったらマズいので、右サイドバーの「フォルダーの移動」で変更します。ドライブが変更できるだけで、「¥ServerFolders¥フォルダ名」の部分は固定のようです。逆にいうと中身が既にあってもここから簡単に他ドライブに移動できるので、バックアップ以外は少し様子見で(高速な)Cドライブをあえて使っておくのもありかも知れません。

またWHSと違い、Windows Serverのクライアントバックアップはドメイン参加が必要ということ。一応クライアント側でレジストリをいじればドメイン参加をスキップしてバックアップ設定はできるらしいですが、どのみちクライアントはWindows 10 Proなどドメイン参加対応のSKUでないとなりません。Windows 10 Homeとかは対象外。私はもともとWindows7とかの頃からRDP(リモートデスクトップ接続)目当てでDSP版はほぼProを買ってましたのでほぼ問題なかったですが唯一Mac上の仮想PC用に買ったのがHomeでそちらは残念ながら非対応となりました。

ドメインに参加するともうひとつ困るのは、ユーザアカウントがローカルアカウント/Microsoftアカウントで今まで使っていたものとは別にドメイン側のアカウントができ、環境がわかれてしまうという点。逆にドメインアカウント同士ならPCをまたいで環境やファイルを揃えられるというメリットも(設定次第で)できるわけですが、同期対象をよく見極めないとサインイン/サインアウトの同期に時間がかかったり、クライアントPCのストレージがいらないファイルで浪費されたりしがち。今ならファイルはOneDriveやDropBoxでサインイン後に同期できた方がユーザビリティは高いでしょう(フォルダ単位で同期対象も選べる)。ドメイン環境で移動ユーザプロファイルというのを使って環境同期ができてよさそうなのはレジストリくらいですかね。ゲームのインストール情報とかがマシン間で一元化できたら嬉しいなぁと思い、テストアカウントで検証中。

ローカルアカウントの設置やファイルをドメインアカウントに移行してくれるUser Profile Wizardなんてツールもあるんですが、もう少し検証しないとちょっと不安。テスト用アカウントで試した限りでは上手くいきましたが、複数のPCのローカルアカウントの情報をANDで統合できるかとかがよくわかりません。このページの手順だと最初にPCからドメインに入る前にローカルアカウント情報をコピーしてるようなんですよね(ウィザードの途中でドメインログオン情報を入れる)。

ということでまだまだメインアカウントをドメイン移行する気は起きてないですが、とりあえずメインで使っているローカルアカウントとは別のドメインアカウントでドメイン参加し、サーバーにデバイスとして登録されていれば、クライアントバックアップ自体は稼働させることが可能そうです。つまりPro版はもってるけど、ドメインってよくわからないし既存環境をなるべく壊したくないなぁって人は、

  1. サーバーに適当な名義のドメインユーザを作る
  2. PCをドメインに参加させる
  3. 再起動後、1.で作ったアカウントでサインインする
  4. コネクターをインストールする

てな感じで既存アカウントにはノータッチでバックアップができるようです。Windows10ではドメイン参加手順として、

  1. 従来のシステム設定のマシン名の設定画面からする
  2. アカウント設定から自分のアカウントにドメインアカウントを紐付ける

の2ルートがありますが、これの1.の方からやるのがポイント。その画面で管理者IDで進めれば、ローカルアカウントに影響なくPCだけがサーバーに登録されるということなんだろうと思います。もしかすると3.は不要かも知れません(てことは1も?)。4はこれも情報がなくてわかりづらいですが、ブラウザから「http://(サーバーのIPアドレス)/connect/」にアクセスすることでダウンロードできます。この際、サーバーのWindows Updateが正しく完了して最新状態になってないとWindows10で使えない古いコネクターソフトウェアが振ってきてエラーになります(1803ではこちらの更新も必要なようです)。

とまぁ予想外に苦戦しましたがようやく1台のPCでバックアップが稼働するところまで漕ぎ着けました。上記でもリンクはりまくった薩摩藩中仙道蕨宿別邸さんの情報には大変お世話になりました。ありがとうございます。様子を見つつ、メインマシン、メインアカウントの移行も進めていきたいと思います。

■AOMEI Centralized Backupperという選択肢…

実はW4810+を買ってから気付いたんですが、フリーでWHSのバックアップに近いことができるソリューションとしてAOMEI Backupperというものが存在するようです。ちょっとショック…

まぁこれを機会にActive DirectoryやIIS※、ASP.NETなどの経験を積みたいと思っていたので、いいんですけども。あとこれ中央サーバーはWindowsでないといけないのでNAS環境ではちょいと厳しいですね。保存先自体はNASでもいいので、どこかに仮想でもいいから常時起動しているWindowsが必要ということになります。実家とかで使おうと思うとちょっとハードルです。使わなくなったWindows10Proが入った初代LIVAがあるからそれでやってみようかな。

※Windows Storage Serverで動いてるIISはバックアップなどの標準機能を提供するためのもので、ユーザがサーバーを公開したりはライセンス的にはできないぽいです。まぁASP.NETもCore版が出てLinuxやMacで動かせるようになったので別にいいんですが。ADもSynologyで互換サーバー組めたし、やっぱりこれ(AOMEI)で良かったんじゃ…

Synology DS1511+のHDDを交換

SynologyのDSMにスクラブ機能があって使ってないことに気付いたので、いっちょ使ってやれと走らせたら不良セクターエラーがドドっと出てやぶ蛇だったでござるの巻。

スクラブとはまぁ経年劣化で磁気信号が劣化してきたのを上書きでしなおすようなもん(と理解しています)。古くなったキャッシュカードの磁気ストライプをATMに入れて復活させるようなもんかと。で、普段アクセスしない領域も含めてフルチェックする為、今回のようなエラーが露呈したというわけでしょう。まぁ突然出るよりは全然いい。実行中はかなり立て続けに通知が来てビビったんですが、終わってから見ると不良セクター数は2。これが代替できたものなのかできなかったものなのか不明。ただ実行中のエラーにI/Oエラーも含まれていて、これは以前にもディスク3,4に同時におきてエラい目にあった時と同じ。RAID5なのでもう一台が逝かないうちに予防的に交換。今月はXPSとかOrbiとかThecusとか出品が大変なんだけども、、

まー、こいつは当時日本の名前を売り込みたかったSynologyさんから光栄にもレビュー依頼された時にいただいたものでその時2011年(タイ洪水より前)に購入したWD GREENなのでさすがに良く保ったわ、、、と思って外してみたらREDでした…あ、これ2014に横浜から千代田区へ引っ越す前段階でコンセントの差し替えのためにほんの数分シャットダウンした時に再起動しなくなって交換したドライブだわ…2011のGREENより先に壊れるとかダメじゃん…。その後2016年に2ドライブを5TBに換装して、結果的に2011年産GREENがあと2台残ってる。うーん、不良セクターの出た2014 REDより先にそっちを交換したい気分だけど、やっぱちょっと金策が難しいので保留。

てことでREDの交換。3TB x 5から既に2台5TBにしているので今回も5TBにしたかったけど、プラッターの関係でコスパが悪いのかどこのメーカーも5TBはもう壊滅。4TBか6TBかとなった時に値段が倍違ったので仕方なく4TBをチョイス。そんだけ違うならむしろ近い将来2台交換した方がいいだろうと。Synologyご自慢のSHRなのでまぁ容量バラバラでも上手いこと使ってくれるはず。

ということで今回はREDを避けてこれまたSynologyのDSMが対応しているSeagateの健康度モニタリング機能目当てでIronwolfをチョイス。

交換してリビルドする負荷で2011年の2台が壊れないか心配だったけどエアコン強めにして放置したら無事換装。HDDは本当にわからん…

そろそろハード自体2011年モデルでDSMの更新対象からも外れるので本体ごとDS1517+辺りに買い換えも検討したいところだけれども、ちょいと別の事情で別メーカーのNASを1台導入することになったのでもう少し頑張ってもらうことに。新NASの件は別記事にて。

わだいのメッシュWi-Fiを導入したぞ!〜NETGEAR Orbi

前の家できばって導入した業務用Wi-FiアクセスポイントYAMAHA WLX202ですが最近ちょっと不安定で、ふとスマホを使おうとするとつながってなかったりして、Wi-Fi OFF/ONしたりWLX202を再起動するととりあえず直す、ということが何度かありました。同居人からも指摘をうけ強度をMaxにしたりチャンネルを調整したりしたんですがかわらず。また先日Mac App StoreでWi-FiアナライザーツールのiStumblerがメジャーバージョンアップを果たし、早速購入して試したところ、仕事部屋での電波状況が割と悪いということが発覚。OSのインジゲーターではフルなんでまぁどっちを信じたらいいかという話ではあるんですが、いずれにせよ以前から興味のあったメッシュWi-Fiシステムをリサーチ。メッシュWi-Fiをはひたすら強い出力のAPを1台置くのではなく、家中のあちこちに分散してを配置し、AP同士の中継制御を賢く行うことであらゆる場所で均一なWi-Fi環境を実現しようというものです。AP同士の通信(バックホール回線)は無線の場合も有線の場合もあります。従来製品でも例えば中継器などを使ったり有線で伸ばした先に別のAPを置いたりして同じ様なことはできてたんですが、それのAP間ローミングをルーター側でインテリジェントに管理してやろうという感じです。遠い方のAPにいつまでもぶら下がってネットワーク全体を遅くしたりという現象が(たぶん)上手く抑えられることが期待されます。ウチは1フロアのアパートなのでアンテナ3,4本生えたゴツイAPで飛ばせば届いちゃうくらいのはずなんですが、実際のところ不都合が起きているので、メッシュなら改善するかもと期待を持ってみたわけです。集合住宅なので無駄に強い電波をご近所まで届かせて迷惑かけるのもなんですし。

ちなみに現在、我が家はリビングにある壁ポートからRTX1210をメインルーターとしてつなぎ、AVラック周りのAV製品やゲーム機は全て有線。Wi-Fi機器はWLX202で2.4GHzと5GHz(11ac/877MHz)、そして仕事部屋へはASUS AC-87UとEA-AC87で別チャンネルの1733MHzの5GHz/11acでつなぎそこからスイッチを経由して有線という感じです。つまりASUSペアによる1733MHzのWi-Fiがバックホールではあるものの、仕事部屋側にはAPは立ててない状態で、Wi-Fi機器は若干環境が悪いという状況でした。またバックホールチャンネルの実際のリンク速度は900〜1000Mbps程度。仕事部屋にNASや一部対外サーバーなどもあるので、この幹線を犠牲にするという選択肢はありません(本当は有線を敷きたいんだけど…)。

■1733MbpsバックホールならOrbi一択

さて、NETGEAR、TP-LINK、ASUS、Googleに続き国内勢でBUFFALOが参入して話題を集めるメッシュWi-Fi界隈ですが、スペック的に気になるのは

  1. 無線バックホールとクライアント向けの5GHz電波(チップ、アンテナなど)を共有してない(=トライバンド)
  2. 無線バックホールが1733MHzである(現状より理論値スペックが落ちない)
  3. アクセスポイント(ブリッジ)モードで使える(せっかくRTX1210があるので)

といった辺り。実ののところもうこれだけでNETGEARのOrgi一択になります。

BUFFALOはトライバンド(5GHz+5GHz+2.4GHz)であるもののバックホールともども最高866Mbps止まり。またGoogle Wi-Fiはアクセスポイントモードに非対応です。ということでお値段的なところで躊躇はしたけど、選定としてはほとんど悩みませんでした。各所のレビューも上々そうだし。

あと機器毎の接続状況が一元管理/監視できる点も好感。WLX202にもあるにはあるんですが、連携しているRTX1210側でこまめに記入した表示名が反映されず素のMACアドレスしか見えないので、どれがなんだかさっぱりわからず実質役に立たなかったのは以前レビューした通りです。だったらYAMAHAで揃えて連携させてる意味も無いも同然だなと。

■設置とベンチ

わかっちゃいたけど親機も子機もデカいです。漫画週刊誌一冊分という感じ。でもまぁ立て置きだし白いし形状もゴツくなくアンテナ内蔵なのでわりと背景に馴染みやすいのかなと。上部にリングランプがついてますが基本的には消灯してるので夜眩しいとかいったことはなさそうです。逆にいうとパット見動いてるかどうか見分けもつかない。

以下はIO-DATAのWi-Fiミレルというアプリでリンク速度基準でヒートマップを作った感じです。下の「5GHz」は引っ越し直後に計測したものですがWLX202での様子。上寄りの洋室2室でイエローになっていました(仕事部屋といっているのは左上の5.5帖)。それが上の「Orbi」の方だとバッチリオールグリーンになっています。

まぁこれはあくまでリンク速度(≒電波強度)基準なので、仕事部屋にAPがあってグリーンになるのは当たり前とも言えます。実際の通信速度が問題。

赤線より下が以前の環境。ちょっとどの部屋で記録したか憶えてないですが23時とか午前1時とかなので比較的混み合う時間とはいえ結構遅いです。それがOrbiだと22時台とはいえかなり改善しています。上の2つが仕事部屋に移動し、サテライト子機にリンクした状態で測ったもの。ステータスをみてると5GHzと2.4GHzが時折自動で切り替わるので、測定した瞬間がどちらだったのか判別できないんですが、時間的にはむしろ2.4GHzの方上だったように思えます。なぜかそっちの方が速い。まずまずの結果だと思います。

■アプリの出来も良い

以下Orbiアプリのスクショを。アクセスポイントモードにするとDisney印のアクセス制限機能が使えなかったりしますが、電波強度の確認など基本的な機能は問題なく利用できます。

これがメッシュの構成を示す「ネットワークマップ」画面。サテライトも「Orbi2」という名前に何度か変えたんだけど反映されないのはまぁご愛敬。AirMacのアプリに似た感じ。特定の端末に障害が出てたらわかります。(いや無線バックホールの場合、親機に障害出たら子機も表示されないかも?)

面白いことに、親機からspeedtest.netへの速度計測ができます。Wi-Fi区間に影響されない回線速度を確認できます(まぁうちはAPモードなのでRTX1210の影響かにあるわけですが、まぁそこがネックになることはまずないでしょうから、ウチのプロバイダの速度はこれくらいということでしょう)。

そしてこれが重要なデバイス一覧画面。(というか我が家、起動してるだけで42デバイスもあんのかよ!Orbiは端末1台に30台が推奨スペックなので片側に集中したら足りないじゃん。)

(i)をタップすると画面の「SRS-HG1」の項目のように展開して詳細が確認できます。親機とサテライトのどちらに、2.4GHzと5GHzどちらでつながっていて、リンク速度はどれだけ出ているかといったことがわかります。残念ながら電波の強さは扇マークでしか確認できませんが、調子が悪い端末をAP側から見てどういう強度でつながっているのかを確認できるのはトラブルシュートに有用だと思われます。これらは「リモート管理」を有効にしておくとWANからでも確認することができますので、将来的にもうちょっと値段がこなれてきたら2F建ての実家に入れてもいいなぁなどと思っています。

その他面白い機能としては、Wi−Fi設定をQRコードにして表示/共有ができたり(最近のiOSなら標準カメラアプリで撮影すればプロファイルが落ちてくると思われる。もちろんAndroidもOK)。ゲストWi-Fiも簡単に作成できるようです(ただし家庭用モデルはWeb認証機能は省略)。

 

基本的に5GHz対応機器ではきっちり5GHzを使いたい派なので、いままで2.4GHzと5GHzでSSIDを一緒にすることには抵抗がありましたが、まぁそこは仕方ないかなと。むしろ上の測定値を見る限りは2.4GHzの方が速いこともあるっぽいので、そこら辺も含めてインテリジェントに選択してくれるならまぁしばらく任せてみるかという感じ。

あと気になってるのはバックホール通信のリンク速度を確認する手段がどうもなさそうだという点。以前の900〜1000Mbpsと比べて落ちてるのか改善しているのか知りたいところです。それを見ながら最適な端末配置を試行錯誤したいんですよね…

AutoHotKeyでWindowsのキーボードアサインをMacに似せる

数年前にMacBook Airを購入し怒濤の勢いでメイン機までMacBook Proにしてしまったおり、慣れたWindowsキーアサイン(ショートカットなど)をMac上でどう再現するかについてリサーチして記事を書きました。そして今回DELL XPS 15 2-in-1(以下XPS9575)を購入し開発作業にもゴリゴリ使っていこうということで、逆にmacOSの馴染んだキーアサインをWindows上で再現する必要性に駆られています。とりあえず現状のまとめ。

■達成目標

現在、macOS側にもWindowsの基本ショートカット(コピペやアンドゥ)を一部取り込んでたり、macOS上で仮想Windowsを使って開発作業をしていたりで、わりとカオス。コピーする時にCtrl+Cを使ったりCmd+Cを使ったり行き当たりばったり。さらにエディタではEmacs的なキーバインドも使うので、Ctrl+Aが「全選択」な時もあれば「カーソルを行頭に移動」だったり自分でもあんまり明確なルールがありません。結果として色々なところで意図しない結果となって「ちっ」とか思いつつ根本解決にじっくり取り組んではいない、という状態。

でもまぁとりあえずの目標として、

  • コピペくらいではイラつかないようにしたい
  • エディタ(主にSublime Text 3)ではある程度Emacsキーバインドを採り入れたい
  • WinキーいらないのでmacOSのCmdキー互換で各種ショートカットを使えるようにしたい
  • XPS9575とデスクトップWindows機(キーボードはLogicool CRAFT)でも違和感なく往来できるようにしたい
  • これらのカスタマイズが今後の変更も含め自動で同期してほしい

■解決編

ざっくりいうと、WindowsでAutoHotKeyを使うことで大枠は解決できます。その上でSublime Text 3で細かい追加調整をしています。

AutoHotKeyを使う

2022.12.26追記: AutoHotKeyのスクリプト記法は2.0でリニューアルされました。以下のスクリプトは1.x時代のもので最新版では動かない可能性があります。

AutoHotKeyは常駐型のキーバインド変更ツールです。レジストリ書き換え型と比べると安定性やメモリ消費に不安もありますが定評もあるのであまり先入観に囚われず導入してみることにしました。ソフトウェアでマッピングするので単なるキースワップ以上に、バッチ的なことや文字列入力動作など自由度が格段に高いです。まだ試してないですがアプリケーション毎に設定を変えることもできそう。往年のKarabiner(Elementになる前)を彷彿とさせる万能ツールですね。日本語の詳しい情報はWikiにまとめられています。

設定ファイル(拡張子.ahk)の文法はやや馴染みづらいですが、例えば公式の入門ドキュメンドを引用すると、

で、「Ctrl + Jで”My First Script”」とタイプする、という意味になります。これをエディタに書いて.ahkという拡張子にして保存、ダブルクリックすれば有効になります。Winキーの場合は「^」のかわりに「#」を使います。また送出側にCtrl + Cみたいなキーコンビネーションを指定する場合はこんな感じ。Ctrlを押す->Cを押す->Ctrlを離す、というのを指示してるわけですね。

これでWin+Cを押すとCtrl+C動作をさせることができます。当該のWinキーショートカットがある場合でも、ここで上書きすることで本来の動作を抑止することができるみたいです。たぶん「return」のおかげでOSにシグナルが届かずイベント処理が終了するということでしょう。

とりあえずこんな感じにしました。

ショートカットやアンドゥはCtrlでもCmdでも同じ動作で構わないので先の例のままです。Macでウインドウを閉じるCmd+WはWindowsではCtrl+WではなくCtrl+F4が一般的だと思うのでそちらにアサイン。Cmd+Qがアプリケーション終了でAlt+F4。Ctrl/Cmd+Aはエディタ(Sublime Text)ではCtrl+Aを「カーソルを行頭へ移動」(Emacsキーバインド)、Cmd+Aを全選択と振り分けたかったので、AutoHotKeyでは一旦Alt+Aに割り振り、Sublime側でAlt+Aを全選択にアサインしています。ただしこれだとSublime以外のアプリケーションで全選択できないので、ウインドウ名などで条件分岐するIfWinActiveを使います。ahk_exeはアプリの実行ファイルを使った指定という意味です。Sublime Textは「(ファイル名)-  Sublime Text」のようなウインドウタイトルになるので、部分一致検索するよりは実行ファイル名の方がなんとなく確実かなと。elseブロックがあるのでSublime Text以外ではCtrl+Aになります。将来的にアプリ名を複数ORで指定したくなったらどうすんのとかはまだ調べてません。

AutoHotKeyを自動起動する、設定を同期する

AutoHotKey自体に「ログイン時に起動」のような設定はありません。.exeから起動した場合、同じディレクトリにあるAutoHotKey.ini(書式は.ahkと同じ)を読み込むようですす。

なので、設定は.ahkファイルに書いて、DropboxやOneDriveなどで同期。Windowsのスタートアップフォルダにその.ahkファイルへのショートカットを追加しておけばよさげ。

DELL XPS 15 2-in-1 (9575)届いたった

この文章をあなたが読んでいる頃、私の元にはXPS 9575が届いているでしょう。

ということで8/7早朝に注文。なぜかクレカ不承認でキャンセルされたものの、ちょうど20%OFFクーポンが再開されてラッキー。同日夕方に再注文。すぐに生産完了、出荷になるも船便が長く、8/17に国内で佐川に引き渡されて伝票番号が表示。本日8/18に受け取れました。購入の経緯は以前の記事にて。

あれこれセットアップしながら気付いた点をつらつらとレビューしていきます。

■液晶(4K)

満足のいく綺麗さです。とても鮮やかで明るい。もはやドット欠けとかあっても気付けないんじゃないかとか。デフォルトのスケーリングは250%。かなりフォントが綺麗で見やすいですがもうちょっと作業スペースが欲しいので当面200%で頑張ってみようかなと。中間に225%というのもあります。

明るさ調節がFnキーの中になくて焦りましたが、Fn+カーソル↑↓でした。見付かってしまえばFnキー列よりも直観的で調節しやすい気がします。

■キーボード

最大の期待と不安を抱いていた部分ですが上々です。MacBook Proの第二世代バタフライキーボードと比べて、パチパチ感がなくコリコリした感じ。とても良いです。シリコン膜が入ったという第三世代バタフライもこんな感じなんだろうか。店頭で触った感じあまり違いがわからなかったけど。ともあれ、すごく静かという感じではないけど、2ndバタフライよりは耳障りさが軽減されていると思います。特に心配していたスペースキーがちょっと固いというか引っかかる感じがして「不良品か仕様か展示機が出たら比べないとなぁ。交換だったらイヤだなぁ」とか思ってたレベルでしたが、使ってるうちに気にならなくなりました(いや、やっぱり気になりますわ…)。

動画などでキーボードの中心を押し込んでたわむ映像が出ていて不安でしたが普通にタイプする分には全く不都合のない強度でした。かなり強く押し込めば確かにたわむんですが、そこらへんの安いノートPCみたいなフニャフニャとまではいかないです。

レイアウト的にはEnterが小さいとか言われてますが個人的にはさほど気にならないです。どちらかというと「全/半」と「1」の押し間違いが多いかな。

トータルでみてかなり満足度の高いキーボードです。現物を触らずに特攻したけどまずは安心しました。バタフライが好きな人なら問題なく馴染める系だと思います。

■トラックパッド

デフォルト設定でタッチでクリックする状態だと一番感度を低くしても誤クリック置きまくりで速攻OFFにしました。MacBook Proよりやや面積が小さいですが操作感、精度は上々。二本指で右クリック動作にして、右下のボタンは無効とすることもできるし、三本指左右スワイプに仮想デスクトップ切り替えをアサインすることもできmacOSに馴染んだ人も不満なくスイッチできるんじゃないでしょうか。

■ACアダプター

130Wという出力でさすがに小型とはいえないですが、角が丸くなっていて携帯時はPC側のケーブルを巻き付けておけるのが良いです。またUSB-Cコネクタに通電ランプ(白色LED)があるのも地味に良い。Macはこういうユーザビリティがどんどんないがしろにされていきますが、DELLはまだ気を配ってくれていて嬉しいです。ただしあくまで通電ランプであって、本体の充電状態で色が変わったりはしなさそげ。

コンセント側は久々のミッキーコネクタ。早速ショートケーブルを買おう。アース線が出てないやつだとこの辺ですね。

BUFFALOのはケーブル長が20cmなのでちょっと長い。下のはコネクタ込みで22cmのようです。

■発熱、静かさ

本モデルのウリとしてモーションセンサーで膝の上で使っているのか机上なのかを検知し、前者では発熱を抑えるようです。実際短パンで腿に載せてずっとセットアップ作業していますがほんのり温かくなる程度。

ただしファンは回り出すと盛大に音がします。ジェットエンジンみたいなキュイーーン!という高いめの音がします。あくまで音質がということであって、耳を塞ぐような大音量というわけではないんですが、もし公共の場で鳴りだしたらちょっと耳につきやすい音かも知れません。

まだどんな時にどれくらいファンが回るかわからないですが、それと関係あるのかたまにマウスカーソルの操作がままならないほどレスポンスが落ちる現象があります。サーマルスロットリングなのかどうかは不明(温度どこで見られるんだろ?)。CPUやGPUの負荷はそんなに高くない状態でも発生します。今のところそれが唯一最大の不満というか困り毎です。

■その他備考

回復用ディスクは購入せず、安いUSBメモリで自作。18GBほどになったので用意する人は32GBをチョイスしてください。私はコスパ優先でこれにしました(USB-C端子はないので変換アダプタやハブが必要になります)。

あとApple Storeで買ったBelkinのUSB-C Ethernetアダプタはすんなり使えました。色違いだけど多分これかな。

2018.08.20追記:

Apple純正のThunderbolt 3(USB-C)- Thunderbolt 2アダプタ(A1790)で外部モニタ出力ができました。4Kでは試してないですが、3440 x 1440モニタでは少なくともOKです。もちろん本体左側のポートを使う必要があります。形は同じですが右側はUSBのみでThunderbolt非対応なので。

2018.09.03追記:

Apple純正のHDMIアダプタ(USB-C Digital AV Multiportアダプタ)も使えました。内部的にThunderbolt3なのか、これも左側のポートでしか使えなかったように思います(ちょっと認識に時間がかかってただけかも)。4Kデュアル表示まで確認。USBと充電は試してません。

2018.9.9追記:

ASUSのモバイルバッテリー、ZenPowerMaxで充電ができました(70%程度から100%まで確認)。本製品のUSB-CポートのPower Delivery仕様は最大で20V x 3Aの60Wです。付属の130Wアダプタに比べると半分以下です。実際下記のような警告画面が出ます。ただそれでもWeb閲覧やファイル操作(SDカードの読み書き)などをしながらでも充電は可能でした。さすがに3Dグラフィックをゴリゴリ使いながら、とかだと追いつかないかもは知れませんが、とりあえず手持ち機器がまたひとつ流用できそうでなにより。ただし上記の70->100%でバッテリーの4つあるランプは残り1つにまで減ってしまったので、フル充電一回分には足りなさそうです。

 

タブレットモードやペン、dGPUを酷使するようなゲームなどについてはまだ未評価なので、追々追加レビューをしていきたいと思います。とりあえずMacBook Proのハードはとても気に入っているけれど、都合でどうしてもWindowsも欲しかったという今回のニーズにはとてもマッチした選択肢だったと思います。