ArmbianにSambaをインストール

こちらの記事でコメントを頂いた、huskyさん向けの記事になります。

この記事を作成した当時は Armbian Ubunut + OpenMediaVault は動いていたのですが、長期安定性は正直疑問があります。NASとして長期安定動作を狙う場合には、OpenMediaVaultを使うよりも素のSambaを使うほうが安定しています。
自宅にはNanoPi Neo2+NASキットが3台あるのですが、1台は素のSambaで数年間の長期運用ができています(しかも、18.04LTSから20.04LTSへのアップグレードも乗り越えました)。それより後でインストールしたOpenMediaVaultは持って1年という印象です。そして比較的最近(半年以内だったと思います)OpenMediaVaultを再インストールしたところhuskyさんの書かれている現象(インストールした後再起動すると起動してこない)に遭遇しましたので、このときは素のSambaをインストールしました。

ここでは、残っているメモから簡単(易しいという意味ではなく肝しか書いてないということです)なSambaの設定方法を紹介します。Armbian UbuntuをNanoPi Neo2+NASキットにインストールして、armbian-configからシステムをNASキット上のHDDに移動するのは完了しているものとします。(なお、システムをHDDに移動した後も、確か最初のブートローダ自体はmicroSDから読みますので、microSDは抜いてはいけません)
なお、システムをNASキットのHDDに移動しないままSambaで運用すると、先にMicroSDが死んたことがありますので、システムはHDDに移動しておいたほうがいいと思います。

ここでは、Sambaをインストールして armbian という共有ディレクトリを作る方法を記載します。Ubuntuのバージョンはarmbian ubuntu 20.04 LTS です。ホスト名はarmbianに設定しています。

1.Sambaのインストールと共有ディレクトリ準備

以下の手順でSambaをインストールして、共有ディレクトリ /home/armbian を作ります。

1$ sudo apt update
2$ sudo apt upgrade
3$ sudo apt install samba
4$ cd /home
5$ sudo mkdir armbian
6$ sudo chmod 777 armbian

2.Sambaの設定ファイルの準備

/etc/samba/smb.conf の編集

[global]セクションに以下のような箇所があるので編集します。Ubuntu側の文字コードはUTF-8、Windows側は日本語なのでCP932を指定します。ワークグループ名を使っている場合には、その下のWORKGROUPを修正します。

1[global]
2   
3## Browsing/Identification ###
4   
5unix charset = UTF-8  ←この行を追加
6dos charset = CP932   ←この行も追加
7   
8# Change this to the workgroup/NT-domain name your Samba server will part of
9   workgroup = WORKGROUP  ←この行もワークグループに書き換え

ネットワーク設定の部分を探して編集します。下記の例では、NanoPi Neo2のeth0 インタフェースを使用し、192.168.0.0/16と172.16.1.0/24からのみアクセスできるように設定しています。

1#### Networking ####
2   
3# The specific set of interfaces / networks to bind to
4# This can be either the interface name or an IP address/netmask;
5# interface names are normally preferred
6interfaces = 127.0.0.0/8 eth0
7hosts allow = 192.168.0.0/16 172.16.1.0/24 127.0.0.0/8
8   
9# Only bind to the named interfaces and/or networks; you must use the
10# 'interfaces' option above to use this.
11# It is recommended that you enable this feature if your Samba machine is
12# not protected by a firewall or is a firewall itself.  However, this
13# option cannot handle dynamic or non-broadcast interfaces correctly.
14bind interfaces only = yes

smb.conf の最後にUbuntu側の/home/armbianディレクトリの共有の設定を追加します。

1[Armbian]
2   path = /home/armbian
3   writable = yes
4   guest ok = no
5   guest only = no
6   create mode = 0777
7   directory mode = 0777

3.Sambaユーザーの追加

SambaのユーザーはUbuntu上にアカウントがあるユーザーである必要があります。現在ログインしているユーザーをSambaのユーザーとしてpdbeditで登録します。(注:このユーザー追加は、もっと前にインストールした際のスクショです)
pdbeditコマンドを入力したら、Windowsから共有をかける際のパスワードを入力します。Ubuntu側と同じパスワードである必要はありません。(pdbeditコマンドのオプションでUbuntu側のユーザー名とWindows側のユーザー名を違う組み合わせにもできるのではなかったかと思いますが、自分はややこしくなるので統一しています)

1$ sudo pdbedit -a `whoami`
2new password: (Windowsから共有する際のパスワードを設定)
3retype new password: (Windowsから共有する際のパスワードを設定)
4Unix username:        xxxxxxx
5NT username:         
6Account Flags:        [U          ]
7User SID:             xxxxxxxxxxxxxxxxx
8Primary Group SID:    xxxxxxxxxxxxxxxxx
9Full Name:           
10Home Directory:       \\armbian\xxxxxxx
11HomeDir Drive:       
12Logon Script:        
13Profile Path:         \\armbian\xxxxxxx\profile
14Domain:               ARMBIAN
15Account desc:        
16Workstations:        
17Munged dial:         
18Logon time:           0
19Logoff time:          Thu, 07 Feb 2036 00:06:39 JST
20Kickoff time:         Thu, 07 Feb 2036 00:06:39 JST
21Password last set:    Sat, 18 May 2019 21:39:42 JST
22Password can change:  Sat, 18 May 2019 21:39:42 JST
23Password must change: never
24Last bad password   : 0
25Bad password count  : 0
26Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

4.Sambaの起動

1$ sudo systemctl restart smbd
2$ sudo systemctl enable smbd

Sambaを起動します。

初めて設定する場合には、systemctl status smbd で正常に起動できているか確認したほうがいいです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)