先日、知人のPCを組み立てた手間賃として、HPのワークステーション「Z240」を譲ってもらいました。
何かに使おうか、売っちゃおうかって悩んでたんですが。。
そこで思いついたのが、以前から興味のあった自宅サーバーです。
ちょうどGoogleフォトの代わりに導入したImmichを24時間使えるようにしたいと思っていたので、専用機として活用することにしました。
しかし、LinuxはImmich導入でしか使ったことありません。
コマンドもろくにわからない状態だったので、AIに聞きながら少しずつ構築していきました。
最終的にはImmichだけでなく、Home AssistantによるPCの状態監視や、SwitchBotを使った消費電力の確認までできるようになりました。

今回はその第一歩として、HP Z240へのUbuntuのインストールから、WindowsのPowerShellを使ったSSH接続までを紹介します。
古いワークステーションを自宅サーバーに使ってみる
今回使用するHP Z240は、一般的なデスクトップPCとは少し違う、業務向けのワークステーションです。

搭載されているCPUはIntel Xeon E3-1270 v5。
2015年に登場したSkylake、第6世代のCPUで、4コア8スレッド、定格3.6GHzのモデルです。
最新のCPUと比べれば性能は見劣りしますが、普段使っているメインPCとは用途が違います。
今回はゲームも動画編集もしないので、まずは手元にある構成のままで試してみることにしました。
HP Z240のスペック
| 項目 | 構成 |
|---|---|
| メーカー | HP |
| 型番 | Z240 Tower Workstation |
| CPU | Intel Xeon E3-1270 v5 |
| コア・スレッド | 4コア8スレッド |
| メモリ | DDR4 ECC 32GB(8GB×4) |
| GPU | NVIDIA Quadro M2000 |
| ストレージ | SATA SSD |
| OS | Ubuntu Desktop 26.04.1 LTS |
| ネットワーク | 有線LAN |
| 主な用途 | Immich・Home Assistant |
メモリは32GBあるので、当面は増設せずに使います。
Quadro M2000も搭載されていますが、今回の用途では特にGPU性能を求めていません。
CPUのE3-1270 v5には内蔵GPUがないため、まずは搭載されたまま利用することにしました。
なぜ自宅サーバーを作ろうと思ったのか
きっかけは、以前WindowsメインPCに導入したImmichでした。
Immichは、自分で写真や動画を管理できるGoogleフォトのようなソフトです。
以前から使っていたGoogleフォトの代わりとして、Windows 11にDocker DesktopとWSL2を導入して動かしていました。

実際に使ってみるとかなり便利だったのですが、ひとつ気になっていたことがあります。
メインPCをシャットダウンすると、当然Immichにもアクセスできなくなるんですよね。
私のPCはCore Ultra 9 285KとRTX 3080 Tiを搭載した構成なので、写真管理のためだけに24時間動かしておくのも気が進みません。
アイドル状態でも200W以上常時消費します。
それなら、古いZ240を専用サーバーにしてしまえばいいんじゃないか。
そんな流れで今回の構築が始まりました。
WindowsメインPCにImmichを導入したときの手順はこちらで紹介しています。
ImmichをNASなしでWindowsメインPCに導入する方法|Docker Desktop+WSL2+Ubuntu
GoogleフォトからImmichへ移行した経緯についてはこちら。
Googleフォト2TBユーザーが脱Googleを決意した結果、地獄を見た話
完成後はこんなこともできるようになった

最初はImmich専用にするつもりでしたが、その後はHome Assistantも導入しました。
現在はHome Assistantを使い、メインPCのCPUやGPUの状態、Z240サーバーのCPU使用率や温度、通信速度などを確認できるようにしています。
メインPCの3枚目のディスプレイには、専用の監視ダッシュボードも表示しています。
さらにSwitchBotプラグミニを連携し、Z240 Workstationの消費電力もリアルタイムで確認できるようになりました。
最初からここまで作るつもりだったわけではないんですが、24時間つけっぱなしにするならもっとやれる事あるだろ…と思い、ひとまずこんな形に。
ひとつ動くようになると、また別のことを試したくなるんですよね。
OSはWindowsをやめてUbuntuにすることに
今回のZ240にはもともとWindowsが入っていましたが、サーバー専用機にするためLinuxを導入することにしました。
選んだのはUbuntu Desktop 26.04.1 LTSです。
Linuxにはいろいろな種類がありますが、Ubuntuなら日本語の解説記事も多く、わからないことがあっても調べやすそうです。
また、以前Windows上でImmichを動かしたときにもWSL2でUbuntuを使っていたので、名前だけは馴染みがありました。
Ubuntu DesktopとServerのどちらにする?
Ubuntuには、通常のデスクトップ画面があるDesktop版と、サーバー向けのServer版があります。
| Desktop | Server | |
|---|---|---|
| デスクトップ画面 | あり | 基本なし |
| マウス操作 | 可能 | 基本はコマンド |
| SSH操作 | 可能 | 可能 |
| Docker | 利用可能 | 利用可能 |
| 主な用途 | 普段使い・開発 | サーバー運用 |
サーバー専用機ならServer版でもいいのですが、今回はDesktop版を選択しました。
ていうかServer版があるよなんて聞いてない。
Linuxの操作に慣れていないこともあり、最初からコマンドだけで操作するより、画面があったほうが安心という気持ちは確かにありました。
しかし、実際に構築を進めるとSSHでの操作が中心になり、Ubuntuの画面を直接触る機会はほとんどなくなりました。
最終的にモニターなしで運用するなら、Server版でもよかったかもしれません。
UbuntuのインストールUSBを用意する
Ubuntuをインストールするには、まず起動用のUSBメモリを用意します。
UbuntuのISOファイルは公式サイトからダウンロードできます。
今回はUbuntu Desktop 26.04.1 LTSを使用しました。
LTSは長期サポート版のことで、サーバーのように長く使う環境にも向いています。
USBメモリは16GB以上のものがあれば十分です。
インストール用に使うだけなので、高価なものを用意する必要はありません。
UbuntuのインストールUSB作成に。 USB 2.0より高速なデータ転送に対応。
USBメモリからUbuntuを起動する
ダウンロードしたISOファイルを、起動用USB作成ソフトを使ってUSBメモリへ書き込みます。
WindowsではRufusなどが利用できます。
書き込み時にはUSBメモリの中身が消去されるので、必要なデータが残っていないか確認しておきます。
USBメモリの準備ができたらZ240に接続し、電源を入れます。
HP Z240では起動時にEscキーを押すとスタートアップメニューが表示され、F9キーから起動デバイスを選択できます。
ここでUSBメモリを選び、Ubuntuのインストーラーを起動します。

UbuntuをSSDにインストールする
インストーラーが起動したら、言語やキーボードの設定を進めます。
今回は日本語環境を選択し、必要な設定を行いました。
ソフトウェアは「既定の選択」
インストール途中には、最初から導入するソフトウェアを選ぶ画面があります。
今回は「既定の選択」を選びました。
サーバーとして使う予定なので、最初から大量のアプリを入れる必要はありません。
必要になったソフトウェアは、あとから追加していけば十分です。

インストール方法はディスク全体を使用
今回はWindowsを使わず、Ubuntuだけを動かすLinux専用環境にすることにしました。
既存のWindows環境を残す必要もないため、ディスクを消去してUbuntuをインストールする方法を選びました。
なお、複数のSSDやHDDを接続している場合は注意が必要です。
インストール先のデータは消去されるため、必要なファイルが残っていないか事前に確認しておきましょう。

写真では「他のパーティションと共存」が選択されていますが、今回はLinux専用機にするため「ディスクを削除してUbuntuをインストールする」を選びました。
ユーザー名とパスワードを設定する
インストール中には、Ubuntuで使用するユーザー名とパスワードを設定します。
この情報はあとでSSH接続するときにも必要になります。
特にユーザー名は、Windowsから接続する際のコマンドにも使います。
設定が終わったらインストールを実行し、完了後に再起動します。
Ubuntuのデスクトップ画面が表示されれば、ひとまずOSの導入は完了です。
Z240を有線LANでルーターに接続する
今回はZ240をルーターへ有線LANで接続しています。
当初はメインPCとのLAN直結やWi-Fi子機の利用も考えていましたが、最終的には通常の有線LAN接続にしました。
これなら同じ家庭内ネットワークに接続しているWindows PCやスマートフォンからアクセスできます。
また、Wi-Fi子機を追加する必要もないので、余計な出費もありません。
サーバーは基本的に同じ場所に置いておくものですし、LANケーブルを引ける環境なら有線接続のほうが扱いやすいと思います。
SSHを導入してWindowsから操作できるようにする

Ubuntuをインストールしたら、次はSSHの設定です。
SSHは、ネットワーク経由で別のPCを操作するための仕組みです。
これを使えば、Ubuntu側にモニターやキーボードを接続しなくても、普段使っているWindows PCから操作できるようになります。
OpenSSH Serverをインストール

Ubuntuでターミナルを開き、次のコマンドを実行します。
sudo apt install openssh-server
インストールが完了したら、次のコマンドでSSHを起動し、PC起動時にも自動起動するように設定します。
sudo systemctl enable --now ssh
SSHが正常に起動しているか確認するには、こちらのコマンドを使います。
sudo systemctl status ssh
実行結果に active (running) と表示されていれば、SSHサービスが動いています。
なお、UbuntuでUFWファイアウォールを有効にしている場合は、SSHの通信を許可する設定も必要です。
sudo ufw allow OpenSSH
今回は家庭内ネットワークで使用するだけなので、SSH用のポートをインターネットへ公開する必要はありません。
UbuntuのIPアドレスを確認する
SSHで接続するには、Ubuntuの入ったPCのIPアドレスを確認する必要があります。
Ubuntuのターミナルで次のコマンドを実行します。
hostname -I
私の環境では、Z240 Workstationに次のIPアドレスが割り当てられていました。
192.168.1.33
このアドレスは家庭内ネットワークで使用するプライベートIPアドレスです。
ルーターの設定やネットワーク環境によって異なるので、それぞれの環境で表示されたものを使用します。
なお、IPアドレスが変わってしまうとSSHの接続先も変わってしまいます。
常時稼働するサーバーなら、ルーターのDHCP予約機能でIPアドレスを固定しておくと管理が楽になります。
WindowsのPowerShellからSSH接続する
ここまでできたら、メインPCからZ240 Workstationへ接続してみます。
WindowsでPowerShellを起動し、次のコマンドを入力します。
ssh hodoyoku@192.168.1.33
hodoyoku はUbuntuで設定したユーザー名で、192.168.1.33 はZ240のIPアドレスです。
初回接続時には、接続先を信頼するか確認される場合があります。
接続先が正しいことを確認して yes を入力し、Ubuntuで設定したパスワードを入力します。
パスワードを入力しても画面に文字が表示されませんが、これは正常な動作です。

無事に接続できると、WindowsのPowerShell上でUbuntuのコマンドを実行できるようになります。
これが思っていた以上に便利でした。
わざわざZ240の前に移動する必要もなく、普段使っているメインPCからほとんどの作業を進められます。
なお初回接続時には、接続先のホスト鍵を信頼するか確認されます。
接続先が正しいことを確認したら、yes と入力してEnterキーを押します。
ここでは y だけでは受け付けられず、yes と最後まで入力する必要がありました。
その後、Ubuntuで設定したパスワードを入力すると接続できます。
SSH接続を終了するときは、次のコマンドを入力します。
exit
SSHの接続を終了しても、Z240自体の電源は切れません。
サーバーはそのまま動き続けます。
モニターなしで24時間稼働させる
SSHで操作できるようになったので、Z240にモニターを接続しておく必要はなくなりました。
あとは、勝手にスリープしてしまわないように電源設定を確認しておきます。
Ubuntu Desktopの場合は、設定画面の電源関連の項目から自動サスペンドを無効にできます。
サーバーがスリープしてしまうとImmichなども利用できなくなるので、24時間稼働させるなら確認しておきたい設定です。
電気代はどのくらい?
自宅サーバーを作るにあたって、気になっていたのが消費電力です。
ワークステーションというと電気を大量に使いそうな印象がありますが、実際に測ってみると、私の環境では通常稼働時で約30Wでした。
ImmichやHome Assistantなどを稼働させた状態でも、軽い操作なら35W程度です。
30Wで24時間365日稼働した場合の電気代を、31円/kWhで計算してみます。
| 項目 | 電力量・料金 |
|---|---|
| 1日 | 0.72kWh |
| 1か月(30日) | 約670円 |
| 1年間(365日) | 約8,147円 |
※消費電力30W一定、31円/kWhで計算した参考値です。実際の電気料金は契約や使用状況によって変わります。
思っていたよりも低い消費電力だったので、これなら常時稼働させても十分現実的です。
現在はSwitchBotプラグミニを導入し、Home Assistantから消費電力を確認できるようにしています。

Ubuntuの導入とSSH接続まで完了!
今回は、譲ってもらったHP Z240を自宅サーバーとして使うために、UbuntuのインストールからSSH接続までを行いました。
Linuxを本格的に扱うのはほぼ初めてでしたが、AIに聞きながら少しずつ進めて、無事にWindowsのメインPCから操作できるようになりました。
最初は何をするにもコマンドを調べるところから始まるので、なかなか思うようには進みません。
それでも、今までWindowsしか触ってこなかった私には新鮮で、思っていた以上に楽しめました。
ここまでできれば、あとはDockerを導入して好きなサービスを動かしていく段階です。
次回はDockerとImmichを導入して、WindowsメインPCで使っていた写真管理環境をZ240へ移していきます。
古いワークステーションがどこまで使えるのか、しばらく遊んでみようと思います。
参考リンク
Ubuntu公式サイト
https://ubuntu.com/
Ubuntu Desktopダウンロード
https://ubuntu.com/download/desktop
Ubuntu公式インストールガイド
https://ubuntu.com/tutorials/install-ubuntu-desktop
OpenSSH公式ドキュメント(Ubuntu)
https://documentation.ubuntu.com/server/how-to/security/openssh-server/
Rufus公式サイト
https://rufus.ie/ja/
Immich公式サイト
https://immich.app/



コメント