古いPCを自宅サーバーに再利用!HP Z240にUbuntuをインストールしてSSH接続するまで

HP Z240を自宅サーバーに再利用し、UbuntuのインストールからSSH接続までを紹介する記事のアイキャッチ画像 Immich・自宅サーバー
古いHP Z240ワークステーションをUbuntuで自宅サーバー化。WindowsからSSHで遠隔操作できる環境を構築しました。
広告を含む場合があります。
⏱ この記事は約14分で読めます(約7,900字)

先日、知人のPCを組み立てた手間賃として、HPのワークステーション「Z240」を譲ってもらいました。
何かに使おうか、売っちゃおうかって悩んでたんですが。。

そこで思いついたのが、以前から興味のあった自宅サーバーです。
ちょうどGoogleフォトの代わりに導入したImmichを24時間使えるようにしたいと思っていたので、専用機として活用することにしました。

しかし、LinuxはImmich導入でしか使ったことありません。
コマンドもろくにわからない状態だったので、AIに聞きながら少しずつ構築していきました。

最終的にはImmichだけでなく、Home AssistantによるPCの状態監視や、SwitchBotを使った消費電力の確認までできるようになりました。

トリプルモニター環境でHome AssistantのPC監視ダッシュボードを上段に表示したデスク周り
使わなくなったHP Z240を自宅サーバーに再利用し、Home AssistantでPCの稼働状況を可視化。上段のウルトラワイドモニターに監視画面を常時表示し、メインPCでゲームをしながらシステムの状態を確認できるようにしました。

今回はその第一歩として、HP Z240へのUbuntuのインストールから、WindowsのPowerShellを使ったSSH接続までを紹介します。

古いワークステーションを自宅サーバーに使ってみる

今回使用するHP Z240は、一般的なデスクトップPCとは少し違う、業務向けのワークステーションです。

自宅サーバーとして再利用したHP Z240 Tower Workstation
自宅サーバーとして24時間稼働しているHP Z240。メインPCの隣に設置し、有線LANでネットワークに接続しています。

搭載されているCPUはIntel Xeon E3-1270 v5。
2015年に登場したSkylake、第6世代のCPUで、4コア8スレッド、定格3.6GHzのモデルです。

最新のCPUと比べれば性能は見劣りしますが、普段使っているメインPCとは用途が違います。
今回はゲームも動画編集もしないので、まずは手元にある構成のままで試してみることにしました。

HP Z240のスペック

項目構成
メーカーHP
型番Z240 Tower Workstation
CPUIntel Xeon E3-1270 v5
コア・スレッド4コア8スレッド
メモリDDR4 ECC 32GB(8GB×4)
GPUNVIDIA Quadro M2000
ストレージSATA SSD
OSUbuntu 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を導入して動かしていました。

自宅サーバーで稼働するImmichの写真管理画面。PCパーツやグラフィックボードの写真を一覧表示
HP Z240の自宅サーバーで稼働しているImmichの管理画面。ブラウザから写真や動画を一覧表示でき、撮影日ごとの整理や検索も行えます。

実際に使ってみるとかなり便利だったのですが、ひとつ気になっていたことがあります。
メイン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を決意した結果、地獄を見た話

完成後はこんなこともできるようになった

HP Z240自宅サーバーで構築したHome Assistantの監視ダッシュボード
古いワークステーションを自宅サーバーに再利用し、Home AssistantでPCの稼働状況やネットワーク通信速度などを可視化しました。

最初はImmich専用にするつもりでしたが、その後はHome Assistantも導入しました。

現在はHome Assistantを使い、メインPCのCPUやGPUの状態、Z240サーバーのCPU使用率や温度、通信速度などを確認できるようにしています。
メインPCの3枚目のディスプレイには、専用の監視ダッシュボードも表示しています。

さらにSwitchBotプラグミニを連携し、Z240 Workstationの消費電力もリアルタイムで確認できるようになりました。

最初からここまで作るつもりだったわけではないんですが、24時間つけっぱなしにするならもっとやれる事あるだろ…と思い、ひとまずこんな形に。
ひとつ動くようになると、また別のことを試したくなるんですよね。

SwitchBot プラグミニ
RECOMMENDED ITEM
SwitchBot プラグミニ

自宅サーバーの消費電力を手軽にチェック。 Home Assistantとの連携にも。

Amazonで商品を見る
広告・Amazonアソシエイトリンク

OSはWindowsをやめてUbuntuにすることに

今回のZ240にはもともとWindowsが入っていましたが、サーバー専用機にするためLinuxを導入することにしました。

選んだのはUbuntu Desktop 26.04.1 LTSです。
Linuxにはいろいろな種類がありますが、Ubuntuなら日本語の解説記事も多く、わからないことがあっても調べやすそうです。

また、以前Windows上でImmichを動かしたときにもWSL2でUbuntuを使っていたので、名前だけは馴染みがありました。

Ubuntu DesktopとServerのどちらにする?

Ubuntuには、通常のデスクトップ画面があるDesktop版と、サーバー向けのServer版があります。

DesktopServer
デスクトップ画面あり基本なし
マウス操作可能基本はコマンド
SSH操作可能可能
Docker利用可能利用可能
主な用途普段使い・開発サーバー運用

サーバー専用機ならServer版でもいいのですが、今回はDesktop版を選択しました。
ていうかServer版があるよなんて聞いてない。

Linuxの操作に慣れていないこともあり、最初からコマンドだけで操作するより、画面があったほうが安心という気持ちは確かにありました。
しかし、実際に構築を進めるとSSHでの操作が中心になり、Ubuntuの画面を直接触る機会はほとんどなくなりました。

最終的にモニターなしで運用するなら、Server版でもよかったかもしれません。

UbuntuのインストールUSBを用意する

Ubuntuをインストールするには、まず起動用のUSBメモリを用意します。

UbuntuのISOファイルは公式サイトからダウンロードできます。

Ubuntu公式ダウンロードページ

今回はUbuntu Desktop 26.04.1 LTSを使用しました。
LTSは長期サポート版のことで、サーバーのように長く使う環境にも向いています。

USBメモリは16GB以上のものがあれば十分です。
インストール用に使うだけなので、高価なものを用意する必要はありません。

USB 3.0対応 USBメモリ
RECOMMENDED ITEM
バッファロー USBメモリ 32GB USB3.2(Gen1)/3.1(Gen 1)/3.0/2.0 充実サポート RUF3-K32GA-WH/N

UbuntuのインストールUSB作成に。 USB 2.0より高速なデータ転送に対応。

Amazonで商品を見る
広告・Amazonアソシエイトリンク

USBメモリからUbuntuを起動する

ダウンロードしたISOファイルを、起動用USB作成ソフトを使ってUSBメモリへ書き込みます。

WindowsではRufusなどが利用できます。

Rufus公式サイト

書き込み時にはUSBメモリの中身が消去されるので、必要なデータが残っていないか確認しておきます。

USBメモリの準備ができたらZ240に接続し、電源を入れます。

HP Z240では起動時にEscキーを押すとスタートアップメニューが表示され、F9キーから起動デバイスを選択できます。
ここでUSBメモリを選び、Ubuntuのインストーラーを起動します。

Ubuntu 26.04.1 LTSのインストーラー起動画面
HP Z240をUSBメモリから起動し、Ubuntu 26.04.1 LTSのインストールを開始した画面。

UbuntuをSSDにインストールする

インストーラーが起動したら、言語やキーボードの設定を進めます。

今回は日本語環境を選択し、必要な設定を行いました。

ソフトウェアは「既定の選択」

インストール途中には、最初から導入するソフトウェアを選ぶ画面があります。

今回は「既定の選択」を選びました。
サーバーとして使う予定なので、最初から大量のアプリを入れる必要はありません。

必要になったソフトウェアは、あとから追加していけば十分です。

Ubuntu 26.04.1 LTSのインストール中に表示されるアプリケーション選択画面。「既定の選択」を選択した状態
Ubuntuのインストール時は、Webブラウザーと基本的なユーティリティのみが導入される「既定の選択」を選びました。

インストール方法はディスク全体を使用

今回はWindowsを使わず、Ubuntuだけを動かすLinux専用環境にすることにしました。

既存のWindows環境を残す必要もないため、ディスクを消去してUbuntuをインストールする方法を選びました。

なお、複数のSSDやHDDを接続している場合は注意が必要です。
インストール先のデータは消去されるため、必要なファイルが残っていないか事前に確認しておきましょう。

Ubuntu 26.04.1 LTSのインストール方法選択画面。ディスクの削除や既存OSとの共存を選択できる
Ubuntuのインストール方法を選ぶ画面。
写真では「他のパーティションと共存」が選択されていますが、今回はLinux専用機にするため「ディスクを削除してUbuntuをインストールする」を選びました。

ユーザー名とパスワードを設定する

インストール中には、Ubuntuで使用するユーザー名とパスワードを設定します。

この情報はあとでSSH接続するときにも必要になります。
特にユーザー名は、Windowsから接続する際のコマンドにも使います。

設定が終わったらインストールを実行し、完了後に再起動します。

Ubuntuのデスクトップ画面が表示されれば、ひとまずOSの導入は完了です。

Z240を有線LANでルーターに接続する

今回はZ240をルーターへ有線LANで接続しています。

当初はメインPCとのLAN直結やWi-Fi子機の利用も考えていましたが、最終的には通常の有線LAN接続にしました。
これなら同じ家庭内ネットワークに接続しているWindows PCやスマートフォンからアクセスできます。

また、Wi-Fi子機を追加する必要もないので、余計な出費もありません。
サーバーは基本的に同じ場所に置いておくものですし、LANケーブルを引ける環境なら有線接続のほうが扱いやすいと思います。

SSHを導入してWindowsから操作できるようにする

WindowsからUbuntuサーバーにSSH接続し、Docker ComposeでGlancesコンテナを起動・稼働確認しているターミナル画面
WindowsのPowerShellからHP Z240のUbuntuサーバーにSSH接続し、Glancesコンテナを起動。docker ps で正常稼働を確認できました。サーバー本体を直接操作せず、メインPCから管理できます。

Ubuntuをインストールしたら、次はSSHの設定です。

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

OpenSSH Serverをインストール

Ubuntu 26.04.1 LTSでOpenSSH Serverをインストールし、SSHサービスの自動起動を設定したターミナル画面
OpenSSH Serverをインストール後、sudo systemctl enable –now ssh でSSHサービスの起動と自動起動を設定しました。これでWindowsからSSH接続する準備が整いました。

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からHP Z240のUbuntu 26.04.1 LTSにSSH接続し、ログインに成功した画面
WindowsのPowerShellからssh hodoyoku@192.168.1.33を実行し、UbuntuへのSSH接続に成功。メインPCからサーバーを遠隔操作できるようになりました。

無事に接続できると、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から消費電力を確認できるようにしています。

Home AssistantでHP Z240自宅サーバーのCPU使用率・温度・メモリ・消費電力・通信速度・HDD使用率を監視するダッシュボード
Home AssistantでZ240の稼働状況を可視化。CPU使用率や温度、通信速度、HDD容量に加え、SwitchBotプラグミニで取得した消費電力33Wもリアルタイムで確認できます。
SwitchBot プラグミニ
RECOMMENDED ITEM
SwitchBot プラグミニ

自宅サーバーの消費電力を手軽にチェック。 Home Assistantとの連携にも。

Amazonで商品を見る
広告・Amazonアソシエイトリンク

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/

コメント