dpcblog.hatenablog.com
前回の記事の続きです。
この記事では NAS にするため、samba をインストールして、HDD を共有ストレージ化するところまでを書きます。
筆者は今回の raspberry pi 4 (raspi4) の NAS 化には、 以下の組み合わせで内蔵HDDを外付けHDDに変換して使いました。
HDDもケースももう古いので,
早速設定しましょう。
HDD 設定
まずは HDD の設定を行います。
sudo fdisk -lとコマンドを打つと、ドライブ一覧が表示されるので HDD を見つけてください。 筆者の場合では /dev/sdb となっていました。以下適宜読み替えてください。
sudo mkfs.ext4 -E lazy_itable_init=0,lazy_journal_init=0 /dev/sdbとコマンドを打ち、ext4 で HDD を初期化します。
lazy_itable_init=0,lazy_journal_init=0 は、初期化を一気に終わらせるために必要です。
sudo blkidで、/dev/sdb の UUID を確認します。
sudo nano /etc/fstabを開き、以下を追記します。
UUID="確認したUUID書く" /mnt/hdd/nashdd ext4 defaults,nofail 0 2これで起動時に自動的に HDD が認識されるようになるはずです。/mnt/hdd/nashdd は、/mnt/hdd/sharehdd とかでも良いです。
nofail はつけておかないと設定に不備があったり、 HDD に何かあったりしたとき raspberry pi が起動しなくなるのでつけておいてください。
再起動するために、
sudo rebootとして再起動してください。 起動したら、
cd /mnt/hdd/nashddで /mnt/hdd/nashdd に移動してフォルダを作ります。
今回は、
sudo mkdir shareとして "share" フォルダを作りました。また、だれでもアクセスできるように以下のように共有範囲を設定しました。ここは使い方に応じて設定してください
sudo chmod 777 shareこのフォルダを共有しましょう。
ローカル ip の固定化
ip アドレスでアクセスできるように ip アドレスを固定化しておきましょう。
ip a networkctl statusと2つコマンドを打てば、ip アドレスと、デフォルトゲートウェイの ip などが分かるのでこれをもとに設定します。
sudo nano /etc/dhcpcd.confで設定を開き、
#有線lanのipアドレス固定化 interface eth0 #ipアドレス指定 例 192.168.1.55 など static ip_address="固定化したい ip アドレス" #ルータのip 例 192.168.1.1 static routers="ルーターの ip アドレス" #DNS ip static domain_name_servers="ルーターの ip アドレスと同じでOK"とします。無線lan の場合は、interface eth0 を interface wlan0 にしてください。
ip アドレスは他の機器と重複しないよう注意です。raspberry pi 再起動中にほかの機器の電源など入れると重複しやすいので、 あらかじめ被らなさそうな数字を選ぶのもアリです。 保存して再起動すればOKですが、samba 設定後に再起動しても同じなのでこのまま進めてください。
samba インストール
samba は、簡単に言えば linux で windows のファイルシステムを扱えるようにするソフトです。
念のため、パッケージを更新してから、
sudo apt-get updatesamba をインストールします。
sudo apt-get upgrade
sudo apt-get install samba途中で以下の画面が出ますが、筆者は「いいえ」を選択しました。特に必要ない気がします。たぶん...。
インストールできたら設定を変更します。
sudo nano /etc/samba/smb.confとしてファイルを編集し、先ほどの /mnt/hdd/nashdd/share をパスとして以下を追記します。
[RPI4_NAS] comment = Share folder path = /mnt/hdd/nashdd/share create mask = 0777 directory mask = 0777 inherit acls = yes read only = no writable = yes guest ok = yes guest only = yes browsable = yes force user=pi unix extentions=no一部重複してる内容もありますが、これで誰でもアクセスできます。 再起動しましょう。 パスワードを発行したユーザーだけにしたい場合は guest ok = no にするとよいです。samba の細かい設定は結構ややこしいので、説明を省きますが、日本Sambaユーザ会のサイトが参考になります。
ユーザーにパスワード設定をしたい場合には、
sudo useradd "username"で、raspberry pi 自体にユーザーを追加してから、
sudo pdbedit -a "username"で追加してやると良いです。 デフォルトのユーザー pi は既に raspberry pi 4 にユーザー登録されているので pdbedit でパスワードだけを作ってやれば、iPhone からもアクセスできます。
iPhoneの設定をする場合には、こちらのサイト が参考になると思います。 筆者も iPhone からアクセスできるように設定してあります。
あとは、以下のコマンドで samba を再起動しておきましょう。
sudo service smbd restart
windows からは browsable = yes を設定したので、ネットワーク上に表示されるはずです。
万一、表示されなければ ip アドレスを直接入力してください~。
加えてネットワークドライブとして割り当てしておけば、普通の外付け HDD と同じように使えます。
東京経済大学のHPに詳しく書いてあるのでリンクを貼っておきます。
これで NAS の完成です!!
お疲れさまでした。
同じように新たに share2 などのフォルダを作って smb.conf に追記すれば別々のフォルダを別々に共有できます。便利ですね!
次回の記事には VPN 接続で家の外から接続する記事を書きます。
設定をちゃんと書いたつもりですが、
もしも間違っている、上手くできないなどありましたら、自分の設定等を確認しますので教えていただけると助かります。
読んでいただきありがとうございました!
次の記事は、VPN 接続で家の外から samba にアクセスする記事を書きます。
出来次第アップしますのでお待ちください。
続きの記事を書きました!
dpcblog.hatenablog.com
1 - Raspi4 で NAS 構築 - 初期設定から ssd での起動まで
1.2 - sdカード無し! raspi4 を ssd で usbブートする
3 - Raspi4 で VPN 設定 + 外部からの samba アクセス
4 - どこでも同期! - syncthing の 設定