2019年10月10日木曜日

ラズパイ17

NAS(物置)を考えた時、転送速度は速い方が便利なのは当たり前。今までルータの簡易NAS機能を使っていたが、我が家のルータASUS RT-AC1200hpはCPU1コアとショボいのでUSBNAS機能は3MB/s程度の速度。それでも役には立つので古いHDD 80GBを繋いで使っていた。でも、ラズパイのSamba共有なら100Mbps有線LANでも10MB/sは出るはずだ。

現在、起動MicroSD内をsamba共有は手動設定している。簡単に設定変更出来るGUIツールは無いのか?と検索し、「Webmin」が見つかった。ブラウザでGUIにアクセスしてSamba設定だけじゃなく、OS基本機能の設定が可能なGUIツールらしいので、今後のためにもWebminを入れる事にした。

【Webminインストール】
以下URLの「webminの設定」を行う。これでapt-get出来るようになるらいし。依存関係があるので、こっちの方がトータルで楽だと思う。
https://qiita.com/sigma7641/items/995c7bb07eab408b9d0e

まず、ファイラーで/etc/aptに行って「現在のフォルダで端末を開く」。そしてsouces.listを編集し、最終行に「deb https://download.webmin.com/download/repository sarge contrib」を追加する。私はいつも通りnanoで編集した。
sudo nano sources.list

上書き保存が終わったら、次のステップ。何も考えずに以下を順繰り実行。
sudo su -
cd /root
wget http://www.webmin.com/jcameron-key.asc
apt-key add jcameron-key.asc
exit
sudo apt-get install apt-transport-https
sudo apt-get update
ここまではエラー無し。

次に「sudo apt-get install webmin」をしたら依存関係が解消できず、apt --fix-broken installしてみたら?って出たので、実行してみた。
sudo apt --fix-broken install

その上でwebminを再度インストール。
sudo apt-get install webmin

無事完了したようなので、他PCからラズパイのポート10000にアクセス。
https://192.168.1.xx:10000/

Firefoxで危険(証明書が無いから)だと言われるかもしれんが突き進むw。そして、ラズパイの管理者アカウントで入ると無事webmin画面が見れた。

【Samba共有までのWebmin設定】
Webmin設定ならラズパイ情報に拘る必要はない。何となく雰囲気は分かった。
http://server-ubuntu.blogspot.com/2007/11/webmin.html

とりあえず、画面を日本語化、Webminユーザーの設定、Webmin権限範囲設定してから使いましょう。あとは、USBHDDを「システム」-「ディスクとネットワーク・ファイルシステム」でUSB接続しているHDDを「使用中ですか?」をクリックし、一度アンマウントします。それから、新たにマウント設定し、その時には起動時にマウントするようにします。その他オプションはルートパーテーションの設定を参考にしましょう。
あとは「サーバ」-「Samba Windows ファイル共有」で共有設定を追加します。
以下、少々癖があったが、Webminで出来る事はWebminでやる事にした。以下、設定手順です。

1.USBHDD接続とGParted
USBHDDを接続し認識されたら、GPartedを使ってUSBHDDを再度領域確保する。その際に、WebminではexFATが選択メニューに無いので、NTFSにした。まぁWindowsに接続して直接ファイル読み書きする上でも都合が良いでしょう。なお、ラベルは「250g」とした。ラベルを付けないとディスクマウント時にUUID名になったりするので、ラベルを付けましょう。

2.UUIDを調べる
一応再起動する。USBHDDが無事マウントされたら、HDDのUUIDを調べる。
sudo blkid

/dev/sda1: LABEL="250G" UUID="14301AC6094957ED" TYPE="ntfs" PTTYPE="dos" PARTUUID="c2834ef2-01"

3.USBHDDの恒久的マウント
Webmin-「システム」-「ディスクおよびネットワーク・ファイルシステム」の画面で/media/pi/250gをクリックしアンマウントする。(今は自動マウントされているため、一度マウント解除する)
そして種類を「Windows File System(NTFS)」で「マウントを追加」ボタンを押す。
「マウントの作成」で、マウントディレクトリに「\media\pi\250g」、Windows NT Filesystemは「ほかのデバイス」とし「UUID=14301AC6094957ED」と入力し「作成」ボタンを押す。(UUIDで指定するのかPARTUUIDで指定するのか、USBHDDのパーテーションの切り方でも変わってくると思う。)
これで恒久的にマウントされることになるハズ。

4.Samba共有
Webmin-「サーバ」-「Samba Windows ファイル共有」の画面で「新規のファイル共有を作成」する。
「共有名」は「250g」、「共有するディレクトリ」は「/media/pi/250g/public」で保存します。
そして「ファイルの許可」で「強制Unixユーザー」に「pi」を入力して保存します。(ここでpiとしたのはラズパイ標準のrootユーザーですが、これは環境により、そのユーザーにすれば良い。)

これで他PCから無事にSamba共有が見えるようになった。もし、HDDのマウントを恒久的にしないとか手順が面倒だというのなら、1~3の手順はスルーしても大丈夫とは思うが、この方が接続は安定すると思われる。

【結局直接編集】
Webminで簡単にうまくいくなら良いのだが、どうも癖があるし、再起動後にUSBHDDが自動マウントされなかった。なので、一度Webminでの設定を削除してから、fstabやsmb.confを直接編集した。直接編集にあたっては、マウントディレクトリが/media/pi以下はOS自動マウント名・HDDラベル名と被るのでやめ、/media以下にユニークなディレクトリ名(下記の例:suzyusbhdd)を指定しマウントする事にした。

sudo blkid
/dev/sda1: LABEL="250G" UUID="14301AC6094957ED" TYPE="ntfs" PTTYPE="dos" PARTUUID="c2834ef2-01"

sudo nano/etc/fstab
# USBHDDをマウント
PARTUUID=c2834ef2-01 /media/suzyusbhdd ntfs defaults,nofail 0 0

sudo nano /etc/samba/smb.conf
[suzyusbhdd]
comment = suzyhdd
path = /media/suzyusbhdd/Public
public = yes
guest ok = yes
read only = no
browsable = no
force user = pi

外付けHDDはUUIDで指定したいけど再起動後自動マウントに失敗した。対処療法?ですが、PARTUUIDで指定したら成功した。
ちなみに、起動時にHDD認識が間に合ってないじゃないかという可能性もあったので、sudo nano /boot/cmdline.txtにrootdelay=5を入れてみたが、やはりUUIDでの指定はダメだった。

何となく釈然としないけど、再起動を何度繰り返しても大丈夫なので、このまま使う事にした。

0 件のコメント: