Chienomi

ミニPCと少し前の中古PCの話 (hp ProDesk 600 G2 Desktop Mini)

製品・サービス::computer

防音室に入れるためにhp ProDesk 600 G2 DMを購入した。

防音室は1.7畳ほどのサイズで、ここに生ドラムに近いサイズ感のVAD506を入れている。 これでかなりらぎちぎちなのだが、空いたスペースにバーテーブルを入れて、この上に21.5インチのディスプレイを置くことで、譜面や動画を確認しながら演奏したり、楽曲を流したりできるようにしている。

従来、ThinkPadを持ち込んで接続していたのだが、かなり面倒なので、固定でPCを入れることにした。 そこで選んだのが、比較的お買い得なミニPCのProDesk 600 G2 DMの中古だった。

これをモニターの下に設置し、モニターとはVGA接続(ProDesk側はDPもあるが、モニターがVGAとDVIで、DP-DVIケーブルのストックがなかったのでVGAにした)し、トラックパッドつきの無線キーボード(K400Plus)とUSB無線NIC(Logicool LAN-W150N/U2)を接続して使用している。LAN-W150N/U2は安価な上に古いものであるため、対応している規格はIEEE 802.11 b/g/nと限定的だが、Linux上での動作は非常に安定しており、Dr-35の防音室の中からでも問題なく接続できる。

ハードウェア構成

容量1Lほど、サイズ的には18cmほどのミニデスクトップPC。

CPUはIntelのSkylake世代のプロセッサ。私のはCore i5。 SkylakeはQSVでH.265がサポートされるが、VP8/VP9はサポートされない。VP9はKabylake(7世代目)から。

このプロセッサはラップトップ用の省電力版が搭載され、65Wのアダプタで動作する。 メモリはDDR4 SO DIMMスロットが2つ、最大32GB。

ストレージはHDDが標準。2.5インチの7mm厚で、ケージになっており、着脱は工具レスで可能。 HPの業務用PCユーザーならおなじみ、ショックマウントボルトをディスクにつけるタイプだ。 このマウンタの裏にM.2スロットがある。2280 M.2 B Keyで、PCIeのみ(SATAはサポートなし)。2230 M.2もあるが、こちらはWLANオプション用。

なお、アンテナ、M.2用固定ネジなどはオプションを選択していなければ付属していない。 ただし、筐体内にWLANアンテナはあるようだ。

ディスプレイはDPがふたつとVGAがひとつ。 DPなのでケーブルの用意がちょっとめんどいが、複数出力があり、大画面も出せるのでなかなか良い。VGA含めた3画面には、あまりしないと思うが(A10もVGAを混ぜての3画面はちょっと気持ち悪い)。

ポートはUSB3.0 x4(うち1つはPD出力可能), USB2.0 x2, USB 3.0 Type-C, ヘッドフォン, ヘッドフォン/マイク(選択式), WLANアンテナ, DP, VGA, DP/シリアル/HDMI(いずれかオプション)。 小さいが、インターフェイスぎっしりで意外と多い。 筐体はトルクスネジ1本で留まっているが、これはつまみになっており、きつく締めなければ指で回せる。ネジを外せばカバーをスライドするだけ。筐体を開けられないようにする南京錠用のループがあり、またそれとは別にケンジントンロックスロットもある。

インプレ

仕様を見て思うのは「タコ部屋仕様だ…」ということだが、それは置いておこう。

当時のラップトップ並(私が持っているThinkPad X1 Carbon Gen5とだいたい同じ)ではあるが、なかなか良い性能で、インターフェイスが豊富なことと、SO DIMMによるメモリ拡張が可能なこと、そしてストレージが2スロットあることから使い勝手はかなり良い。

hpの業務用デスクトップのハードウェアは本当に良い。メンテナンス性がよいし、無駄に工具を使わせない。 最近、hpのサポートがひどいので(オペレーターにつなぐといいつつ別のページに飛ばして最初からやり直させたり)、hpを使わなくなって久しいが、ハードウェアは良いな、と思う。

今までストレージが載ることや性能を優先することが多かったため、大型のものばかり買っていたが、小さいのは小さいのでなかなか使いどころがある。 簡単に持ち運べるし、設置も簡単。ラップトップよりも設置条件に柔軟性があり、ディスプレイが設置されている条件がすでにあるなら使いどころは多そうだ。1 現状、寝室にはP720があるがあるし、リビングのテレビの横にはDefine R4ケースのPC (A10)があるので、なかなか存在感があるが、これが小型のものに置き換わるなら悪くない話であるように思う。2

また、省電力で静かであることから、サーバーなどヘッドレス運用もしやすい。2万円程度ならWindowsライセンス程度の金額だから、LinuxやUnixに関心があって、しかし普段使っているPCでやる勇気はない、という人が手を出すにも良いと思う。 「普段使い」というと微妙な言葉になってしまうが、Skylakeくらいになるとwebくらいなら基本的にストレスはない。Kabylakeになれば動画再生もものともしないから、それで完全に満足してしまう一般の人は多いだろう。 考えてみればMac Miniに満足している人もいるわけだし。

この手の最新型でいうとhpにはProDesk 400 G6とEliteDesk 800 G6がある。 が、これはそんなに魅力的なわけではない。KabyLake以降でIntelのCPUが劇的に変わっていない、というのが主な理由だ。 それよりはLenovoのThinkCentre M75q Tiny Gen2が惹かれる。 というのは、これはZen2プロセッサを積んでいて(先代はIntelだった)、処理性能が相当高い。Athlonはさすがに微妙だが、Rzyen PRO 3/5/7はそれぞれ順当に性能が伸びていて、「欲しい分だけ」という選び方ができる。最も高性能なRyzen PRO 7 4750GEはTDP 35Wでありながらデスクトップ用のRyzen 7 3700X (65W)に迫る処理能力を持っており、常識的な「ラップトップには重い処理は難しい」みたいな感覚をぶちこわすような性能である。 お弁当箱くらいのサイズのPCがガチ演算ができる性能を持っている、というのはなかなかロマンがあるし、何より小型であることによって妥協せざるをえない部分がかなり少ない。ディスクリートビデオカードが載らないのは制約と考えられるだろうが、2つのSO DIMMスロット、M.2 PCIeと2.5インチのストレージ、DP/HDMI/VGAのディスプレイ出力、GbEと揃っていて、計算能力も高い、となると、これを不足とするのはなかなか難しいように思われる。 加えて、Zen2 APUは4GBものビデオメモリを確保することができる。Intelは512MBが最大で、4k出力はかなり重いし、4kデュアルディスプレイは無理があるのだが、4GBというのはなかなか心強い。

私が買ったProDesk 600 G2はそのような処理能力はない。だが、処理能力が重い計算をさせるのは重さをダイレクトに感じる(AURパッケージのビルドを含む)程度にとどまる、という点(処理能力自体はZen2 Athlonよりも低い)以外はあまり変わらず、というかUSBポートが多いのでむしろ使い勝手は良いとすら言える。 「古めの中古」といってもPCIe 3.0のM.2 SSDスロットを持っているわけで、「小型だから」も「中古だから」もあまりない非常に良好な使い勝手を持っている。

ただ、HDDで「MBRテーブル、レガシーブート」という仕様であるのには参ってしまった。 当時でもGPTテーブルでUEFIブートが普通だったように思うのだが、500GB HDDということもあってかそのような仕様で、Linuxとの共存が難しい。また、VP9に対する支援がないのはYouTubeで重さを感じる原因になるため、全包囲無敵みたいな感じではない。 もう1, 2世代新しいものならまるで気にならなくなるだろう。

私は手持ちにPCIe M.2 SSDで回せるものがなかったので、結局SATA M.2 2280 SSDを2.5インチエンクロージャに入れてHDDと交換で使う、という方法をとった。小さいディスクなので、Windowsは一旦使わない形だ。 当時と比べるとSSDの容量も大きくなっているので、使いではより増しているだろう。

また、せっかく使い方がおとなしく、かつベーシックなハードウェアを使うことができるので、OpenIndianaを試してみたが、こちらはLightDMが始動できないという問題に当たってしまい、あまり時間をかけられなかったため断念した。 また、代えてDragonflyBSDも試してみたが、少し手間がかかるのと、小さいディスク(128GB)で運用するのには適さない様子だったので、こちらも断念して、いつも通りManjaro Linuxを使用することとなった。

本来の使い方としては防音室の中に入れて使うのだが、ディスプレイの下に置く本当のデスクトップの使い方になっている。 もはや少しレトロと言っていい21.5インチのFHDディスプレイだが、そのためディスプレイ自体がかなり軽く、小さくて軽いProDesk DMの上に置いてもあまり無理がない。SFFだとテーブルからはみ出してしまうため、DMである必要があった。 ちなみに、ディスプレイがVGAとDVIしかサポートしていないものなので、VGAで接続している。DP-DVIのケーブルには空きがなかった。

内容的に秘匿されるべきデータがまるでないものになるため、ディスク暗号化なし、自動ログイン有効にしており、電源ボタンを押すと立ち上がるようにした。 ずっとLUKSありで使ってきたため、あまりにも簡単かつ速いことに驚いている。なお、パスワード自体は結構長くて複雑なものだ。 PCに対するアクセスは当然ながらしやすいわけではないが、電源ボタンを押すくらいはどうということはない。コネクタはだいたい繋ぎっぱなしにできるし、TD-27の電源を入れたり、靴を履いたりしている間にボタンをぽちっと押せばもう準備はできている。 やはり特定用途に特化して組み上げると強い。

Linuxでの工夫

128GBという非常に限られたディスク容量に、ドラム演奏で使う動画や画像、音声のファイルを入れることになるため、できるだけstripしたいところだが、現行のManjaro Cinnamonはパッケージが非常に厳選されており、Officeをインストールしなかった場合、簡単に外せるパッケージはほとんどない。

あるとすれば

  • Firefox
  • Thunderbird
  • Pidgin
  • Lollypop
  • X-Apps

である。今回の場合、メールやメッセージングはしないため、ThunderbirdやPidginは削除し、mpvを使うためLollypopを削除したが、X-AppsやFirefoxを含めて代替ソフトウェアはない形になっているため、単純な削除は割と難しい。

本当にミニマムに構成したいならArch Linuxでイチから組んだほうが楽だろう。 どちらかというと、Manjaro Linux Cinnamonはそのような余地がないくらい厳選されている、と考えてもいい。 (個人的にはXPlayerとXReaderは外しても良いが、汎用性のため一応残している)

完全に専用にするならばひたすらstripしてmpvだけ入れておけば良い、のだが、私はもう少し応用できるようにしたいと思い、Leafpad(Windowsのテキストファイルの取り扱い用)を入れた。

日本語フォントとしてIPAフォントを入れた。 サイズは大きく、最小限であればさざなみのほうが小さく、AURもありならVLゴシックが良いが、単一パッケージで必要なフォントファミリータイプをカバーできるという点でこういうときはIPAを入れるようにしている。

日本語入力はfcitx5+fcitx5-kkcを入れた。 Mozcと比べ小さく軽く、これで最低限入力はできる。

AURパッケージはyayを使う。 Pamacがあるので入れなくてもいいのだが、使い勝手からyayを選んだ。 普段はTrizenを使っているが、Goのシングルバイナリであるyayのほうがコンパクトな環境作りに適している。

ドラムで必要なものはほとんどmpvである。 だからデフォルトアプリはmpvになるが、単に再生するときにmpvを開くだけだと、ドラムを叩く用意が間に合わない。 そこで、mpvの設定に次のように記述した。

osd-font="IPAPGothic"
osd-font-size=24

fullscreen
pause

hwdec=auto
vo=gpu

加えて、プレイリストマネージャも追加している。 さらに、このディレクトリをmpvで再生したい、というケースは多いことから、Nemo Actionsを追加した。

[Nemo Action]
Name=Play this directory
Comment=Play this directory with mpv.

Exec=/usr/bin/mpv "%P"

Icon-Name=mpv

Selection=Any
Extensions=any;

SSHの設定は、あまりケアされないこと、自動ログインされることから、LAN内に限定し、かつpublickey認証に限定した。 このマシンで直接メンテナンス作業するのはしんどいので、SSHログインはできるようにsshdを有効化する。

Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
AuthenticationMethods publickey
DenyUsers *

Match Address 192.168.1.*
  DenyUsers root
  AuthenticationMethods publickey

Linuxだと良いか

当然である。

Windowsではハードウェアや用途に最適化するのは非常に難しい。 そもそも、現在のWindows 10は128GBのSSDで動作するようなものではない(果てしなくWindowsが消費するディスク容量が増えるから)。

Linuxではそのような問題がなく、古いハードウェアやリソースが限られるPCでも安心して使うことができる。

こうした中古PCをLinux入門に使うのも良いかもしれない。 Linuxの勉強と称してVPSを使ったり、仮想環境を使ったりする人はかなりいるが、私は「日常的に使えるメイン環境として手元の物理マシンにLinuxを入れるべき」だと考えている。

今回のProDeskはだいたい2.5万円というところであったが、中古で1.5万円程度で第3〜4世代のCore i3/5あたりで、メモリ4GBみたいなマシンが手に入る。 「メモリ4GBなんて産廃」みたいにいう人もいるが、Linuxならこれくらいのリソースでもちゃんと動かすことができるし、それでもメモリ4GBが嫌ならDDR3モジュールは数百円程度で中古品が買えるため、「勉強と称するくらいならそれくらいの出費はするだろう」と思う。

今回、限られたリソースの中で構築したが、それ専用の機械であるかのように理想的に動作する。 Windowsではこうはいかない。そこまで細かな挙動の調整ができないし、して欲しい動作以外の挙動を排除することもできない。

もちろん、この点はIllumos, FreeBSD, DragonflyBSD, NetBSD, OpenBSDを使っても実現可能な範疇である。 ただし、ファイルシステムの選択の余地などを考えると、やはりLinuxのほうが要求にフィットさせやすいだろう。