余ってるWindowsから使えるUbuntu 24.04 LTS+Samba ファイルサーバー構築
背景
複数PCを使っていると、ゲーム本体やセーブデータ、設定ファイルなどを「1台に集約して共有したい」と感じることがありました。
そこで Ubuntu 24.04 LTS のマシンをファイルサーバーにし、Windows のエクスプローラーからアクセスできるようにしたいと思いました。用途はローカルネットワーク内のみで、NASのように扱える状態がゴール。
特に今回は、共有先に置いた exeファイルをWindows側から実行し、ゲームなどの場合はセーブデータを同じ共有上に置けることを狙う。
また、今回の構成では HDDを接続すれば、HDDを共有フォルダとして使うこともできます。
この記事の前提
- サーバー:Ubuntu 24.04 LTS
- クライアント:Windows 10/11
- 利用範囲:ローカルネットワークのみ(外部公開しない)
サーバー側の設定
利用したPCについて
今回使用した Ubuntu 24.04 LTS は、新しく購入したマシンではなく、使わなくなっていた Windows PC の Windows 10を削除して入れ直したものです。
本来ならラズベリーパイを買う選択肢もありましたが、ちょうど使っていない Windows PC が余っていたので、Windowsを消して Ubuntu 24.04 LTS を入れ直して再利用しました。どうせWindows11に更新できないPCだったのでちょうどよくもありましたね。
新しく機材を買わずに済むのは、やっぱり楽です。
今回ファイルサーバーとして使ったのは、MINISFORUM U700 というミニPCです。
スペックとしては
- メモリー:8GB
- CPU:Core i5-5257U
正直なところ、最近のPCと比べるとスペックはあまり良くありません。
ただしCPUは末尾が U の省電力モデルなので、長時間起動させる用途としては「まあ十分かな」という印象です。
Ubuntuのインストール
まずは「ミニPC」にUbuntu をインストールします。
インストールには USBメモリ を1本用意します。
最初に、Ubuntu公式サイトから Ubuntu 24.04 LTS の ISO イメージをダウンロードします。
次に、Windows上で Rufus を使って、ダウンロードした ISO からインストール用USBを作成します。
USBメモリができたら、MINISFORUM U700 に挿して起動し、
USBからブートするように設定して Ubuntu をインストールします。
USBから起動するためには BIOS(UEFI)設定を開く必要があります。
一般的には起動時に F2 や Delete キーを連打する方法が知られていますが、今回は
設定 → システム → 回復 → PCの起動をカスタマイズする
から再起動し、ブート設定を変更しました。
インストール自体は画面の指示に従って進めるだけなので、
特別な設定をしなくても問題なく完了します。
Ubuntuインストール後にまず行うこと
Ubuntu のインストールが完了したら、次にいくつか初期設定を行います。
このあたりを最初に済ませておくと、その後の作業がかなり楽になります。
パッケージの更新
まずは、システムを最新の状態にしておきます。
sudo apt update
sudo apt upgrade
更新内容によっては再起動を求められることがあるので、その場合は再起動しておきます。
SSH接続の準備(別PCから操作するため)
ファイルサーバーとして使う場合、毎回モニターやキーボードをつなぐのは面倒なので、
別のPCから操作できるよう SSH接続 を有効にしておきます。
sudo apt install openssh-server
インストール後、サービスが起動しているか確認します。
systemctl status ssh
これで、同じローカルネットワーク内の別PCから SSH で接続できるようになります。
SSH接続ができるようになると、ミニPC側の操作性が多少悪くても、手元の使いやすいPCから作業できるのでかなり楽になります。
ホスト名で接続できるようにする(任意)
IPアドレスではなく、ホスト名で接続できるようにするために avahi-daemon をインストールします。
sudo apt install avahi-daemon
sudo systemctl start avahi-daemon
sudo systemctl enable avahi-daemon
これを入れておくと、例えば次のようにホスト名で接続できます。
ssh ユーザー名@ホスト名.local
IPアドレスを覚えなくて済むので、個人的には入れておくと便利です。
Sambaのインストール
次に、Windows から Ubuntu にあるフォルダへアクセスできるようにするために Samba をインストールします。Samba は、簡単に言うと「Ubuntu のフォルダを、共有フォルダとして見せるための仕組み」です。
これを入れることで、
- Ubuntu 上のフォルダが
- Windows のエクスプローラーから
\\サーバー名\共有名のような形で開ける
ようになります。
Sambaのインストール
まずは Samba をインストールします。
sudo apt install samba
インストールが終わったら、Samba のサービス(smbd)が動いているか確認します。
sudo systemctl status smbd
active (running) と表示されていれば問題ありません。
共有フォルダを置くディレクトリの作成
まず、共有用のディレクトリを作成します。
sudo mkdir -p /data/share/public
今回は、誰でもアクセスできる public フォルダを1つ用意しました。
Samba 用のユーザーと権限の設定
次に、Samba 専用のユーザーを作成します。
通常ログイン用ではなく、Samba 用だけに使うユーザーです。
sudo adduser --system --group --no-create-home samba
作成した samba ユーザーを、共有フォルダの所有者に設定します。
sudo chown -R samba:samba /data/share/public
sudo chmod -R 775 /data/share/public
これで、
- 所有者:
samba - グループ:
samba
状態になります。
共有フォルダの設定(smb.conf の編集)
次に、Samba の設定ファイルを編集して、
先ほど作成したフォルダを共有として公開します。
sudo vim /etc/samba/smb.conf
ファイルの末尾に、次の設定を追加します。
[global]
guest account = samba
[Public]
writeable = yes
path = /data/share/public
force user = samba
force group = samba
guest ok = yes
guest only = yes
create mask = 0775
directory mask = 0775
という構成になっています。
設定を書いたら、書式チェックを行います。
sudo testparm
問題がなければ、設定を反映します。
sudo systemctl restart smbd
Windows から共有フォルダにアクセスする
Samba 側の設定が終わったら、いよいよ Windows から共有フォルダにアクセスしてみます。
ホスト名でアクセスする場合
次のようにホスト名でもアクセスできます。
\\ホスト名
ネットワークドライブとして割り当てる(任意)
さらに便利に使いたい場合は、
共有フォルダを ネットワークドライブとして割り当てることもできます。
「右クリック → ネットワークドライブの割り当て」の流れでできます。
これで、Z: などのドライブとして常に表示されるようになります。
ここまでできれば、
Ubuntu 上のフォルダを、Windows から普通のフォルダと同じ感覚で使える状態になります。


