人生セルフ人体実験

何をするにしても自分で試すのが一番

ボロノートにLubuntu入れてSambaでファイルサーバーにしてみた(おまけつき)

先日、Dockerコンテナまわりの設定をしていて、接続設定やなんやらに非常に苦労するという場面がありまして。
これはもうTCP/IPの基礎が足りてないな…と痛感したわけです。
その上で、ある人から
LinuxでSamba使ってファイルサーバー組んだこととかあるでしょ? え? ないの? マジ?」
などと痛いところを突かれたので、これはもう4連休で時間あるし、いっちょやってみるしかないと思い立ったが吉日。
いつぞやのgrub rescue問題以来封印されていたレッツノートCF-W5を引っ張り出してきたのでした。

まずはブート問題をどうにかする

出してきたはいいものの、前述の通りこいつはLubuntuを入れるとブートがうまくいかない問題を抱えています。
今回はやりたいのはそこではないので、とりあえず一旦SSD全フォーマットからのLubuntuクリーンインストールで対応することに。
これで治らなかったらもう知らん、という姿勢で。
モニタが小さいせいでインストール時の設定ウィンドウが見切れるため、外部モニタに出力しないと全部見えないという新たな問題が判明したのはご愛敬。

Sambaの準備

さて、Lubuntu18.04LTSのインストールがおわりまして。
これにSambaを入れてセットアップなりなんなりしていくわけですが、なにぶんやりたいことに関するナレッジの分散が激しい。 おまけに記述方法も結構バラバラ。
このへんはおま環で動いたり動かなかったりなんでしょうかね。
実際私も設定したら動かなくてSamba再インストール、を2、3回やりました。
今回はそのへんも経験から再構築して記述しておきます。

Sambaインストール

左下スタートメニューのシステムツールから、LXTerminal(Windowsコマンドプロンプトに相当)を起動。
そしたら、

sudo apt-get update 
sudo apt-get install samba

とりあえずこれでSambaが入ります。ここまでは簡単。
バージョンの確認もしておきましょう。

sudo samba --version
Version 4.7.6-Ubuntu

でした。

Sambaにユーザー登録

SambaはOSとは別にユーザー登録が必要です。
どうもサーバーとSabmaで別々にユーザー管理をしているからだとか。
というわけで以下を実行。

sudo pdbedit -a [ユーザー名] # []ははずしてユーザー名を入力
New SMB password:     # 任意のパスワード入力
Retype new SMB password: # もういっかいパスワード

ファイル共有準備

共有するにしても、共有するフォルダ指定が必要になります。
今回は/home/shareにフォルダをひとつ作っておきました。 その上で、設定ファイルの書き換えを行います。
その前に、Lubuntuにデフォで入っているviは個人的に使い勝手が悪いので、vimをインストールしておきます。

sudo apt-get install vim

入ったら、vimでSamba設定ファイルを起動。

sudo vim /etc/samba/smb.conf

[global]セクションの一番上に以下を記述。

unix charset = UTF-8 #Lubuntu側文字コード
dos charset = CP932 #Windows側文字コード

[global]内の#### Networking ####にあるinterfacesをコメント解除(「;」をはずす)して、アクセスを許可させたいマシンのIPアドレスを記述。
今回は仮に192.168.10.xとしてサンプルを載せます。

interfaces = 127.0.0.0/8 192.168.10.0/24

そこからすぐ下にある、

bind interfaces only = yes

のコメントを解除。
ファイルの一番最後に、以下の記述を追加。

[share] # これが他PCから見える共有フォルダの名前になります
    path = /home/share # さっき作った共有用フォルダのパス
    writable = yes
    guest ok = yes
    guest only = yes
    create mode = 0777
    directory mode = 0777
    browseable  = yes

許可設定やらパーミッションは共有レベルをどうしたいかで変わってくるので、ここでの説明は割愛します。ググってください
書き終わったら内容を保存し、vimを終了。

Sambaを再起動

/etc/samba/smb.confを書き換えた内容を反映させるには、Sambaの再起動が必要です。
なので以下のコマンドを入力。

sudo service smbd restart
sudo service nmbd restart

確認として両サービスのステータスも見ておきましょう。

sudo service smbd status
sudo service nmbd status

状態がactive(running)になっていれば起動しています。

LubuntuのIPを固定する

他PCからの参照はLAN内のIPで行うので、これが毎回自動割り当てで変わると困りますから固定してあげます。
nmtuiを使って、今回は192.168.10.3に固定してみます。

sudo nmtui

このやり方はちょっと説明が長くなりそうなので、こちらの記事を参考にしてみてください。
NetworkManager 使用方法(nmtui編)-server-memo.net

Windowsから見てみる

いよいよWindowsから共有フォルダを参照してみます。 エクスプローラーを開いて、アドレスバーに

\\192.168.10.3\share

と入れて、ユーザー名とパスワードを求められるウィンドウが出たら、さっき登録したユーザー名とパスを入力。
shareフォルダの内部にアクセスできるようになれば成功です。
おつかれさまでした。

次にやりたいこと

無事CF-W5でファイルサーバーを起動できましたが、問題はこの子のSSD容量(以前換装済み)が64GBしかないこと。
これじゃあさすがにファイルサーバーとしては不十分です。
というわけで、次回はUSBメモリやらPCについているSDカードスロットにマウントしたSDカードやらを共有フォルダにしてみます。
長くなってきたので、今回はここまで。

参考サイト

Ubuntu 18.04 Samba : アクセス権付の共有フォルダ作成 - Server World
Sambaへのユーザー登録 - renoji.com
NetworkManager 使用方法(nmtui編)-server-memo.net
Ⅸ. ファイルサーバーの構築 - まーちゃんの趣味のIT