ラズベリーパイで共有フォルダ作成

ラズベリーパイで共有フォルダ作成

今回は「家庭内LANのみで閲覧・書き込みができる共有フォルダの作成」を行う。

1. Sambaのインストール

ラズベリーパイのターミナルにて以下のコマンドを入力し、Sambaをインストールする。

sudo apt update
sudo apt install samba samba-common-bin -y

(-yをつけると「Yes/No」を自動でYesにして進む)

※ダウンロードに失敗したとき

sudo apt update
sudo apt --fix-broken install
sudo apt install samba samba-common-bin -y

(更新→途中で止まったインストールを修復→改めてSambaをインストール)

※ロックファイルが残っている場合

(ex.”Could not get lock /var/lib/dpkg/lock”)

sudo rm /var/lib/dpkg/lock-frontend
sudo rm /var/lib/dpkg/lock
sudo dpkg --configure -a

2. 共有用ディレクトリの作成

共有したいフォルダを作る。

<例> /home/pi/shared を共有する場合:

mkdir -p /home/pi/shared

権限を設定する。
Sambaからアクセスできるように、所有者をpi(自身)にしておく。

sudo choun -R pi:pi /home/pi/shared

pi:piの部分には、自身のユーザ名を入力する。
/以降は、共有したいパスを入力する。

※755とは
共有フォルダの権限
700:ユーザのみアクセス(ユーザにのみフル権限)
755:ユーザのみアクセス(誰でも中を見られる)
777:誰でもアクセス可能

※所有者、パーミッションを確認する方法

共有フォルダが/home/pi/sharedの場合

ls -ld /home/pi/shared

出力例:
drwxrwxr-x 2 pi pi 4096 9月 23 10:00 /home/pi/shared
読み方:
pi pi →左が所有者、右がグループ(どちらもユーザになっているのが理想)
・drwxrwxr-x →権限の部分
r=読む(read)
w=書く(write)
x=実行(実際は「中に入れる」)

3. Sambaの設定

設定を開く。

sudo nano /etc/samba/smb.conf

最下部に以下を追記する。

[Share]
path = /home/pi/shared	※共有したいパス
browseable = yes
writable = yes
read only = no
guest ok = no
valid users = pi	※ユーザ名
force user = pi		※ユーザ名
create mask = 0644
directory mask = 0755

[Share]→ネットワークで見える共有名
path→実際のフォルダの場所
writable = yes→書き込み許可
guest ok = no→ゲストアクセス禁止(セキュリティ強化)
valid users = pi→アクセスできるユーザ

testparm

設定ファイルにタイプミスや余分なスペースがないかチェックできる。
必須ではないが、行っておくとよい。

Samba用にユーザを登録する。(ex.pi)

sudo smbpasswd -a pi

パスワードを聞かれるので、ラズベリーパイ用とは別に、Samba用のパスワードを設定する。

設定を反映させるためSambaを再起動させる。

sudo systemctl restart smbd
sudo systemctl enable smbd

4. Windows PCにて接続テスト

今回は接続テストにWindowsを使用する。

Sambaに対応するために設定(とインストール、再起動)が必要。
①設定
コントロールパネル→プログラム→Windowsの機能の有効化または無効化
「SMB 1.0/CIFS ファイル共有のサポート」にチェックを入れる。
②インストール
自動的にインストールが始まる。
③Windows再起動
メッセージに従って再起動する。
再起動完了後、接続テストを試みる。

エクスプローラーのアドレスバーに入力:

\\raspberrypi\Share

もしくは:

\\ラズベリーパイのIPアドレス\Share

設定したユーザ名、パスワードを入力すると接続できる。

5. Tips

ターミナルの出し方(ショートカット)
Ctrl+Alt+T

ターミナル入力画面
↑キーにて以前入力したコマンドを参照することができる。

ターミナル入力画面にて

cd ../

一階層上に移動

ls

現在いるディレクトリの中身(ファイルやフォルダ一覧)を表示するコマンド。
何も表示されない=その場所にファイルがない(ということもある)。

IPアドレスの調べ方

ターミナルに以下を入力

hostname -I

毎回変わる可能性があるが、設定次第で固定にできる。

→ dhcpcd.confを編集して固定

sudo nano /etc/dhcpcd.conf

※何も表示されない場合は、dhcpcdがインストールされていない(代わりにNetworkManagerが管理している可能性がある)ため、別の方法を試す。

確認方法:

systemctl status NetworkManager

もしNetworkManagerが有効なら、固定IPはNetworkManagerの設定から行うのがよい。

dhcpcd.confの最下部に以下を入力

interface wlan0 ※Wi-Fiの場合。有線なら「interface eth0」
static ip_address=192.168.1.50/24 ※「192.168.1.50」は空いていそうなアドレスにするのが安全。
static routers=192.168.1.1
static domain_name_servers=192.168.1.1

保存(Ctrl+O → Enter → Ctrl+X)して再起動(sudo reboot)すれば固定される。
再起動後に以下を入力し、設定したIP(上記なら「192.168.1.50」)になっていればOK。

hostname -I

→ NetworkManagerを設定

GUIの設定にて簡単に固定できる。

ファイアウォールが有効な場合は、ポート445を開放する必要がある。

sudo ufw allow 445

ラズパイの多くはデフォルトでファイアウォール無効のため、特に設定していなければ気にしなくて大丈夫。
コマンドがない場合:ラズパイOSにufw(Uncomplicated Firewall)がインストールされていない

①ufwをインストールする場合

sudo apt update
sudo apt install ufw -y
sudo ufw allow 445
sudo ufw enable

②そもそもファイアウォールが不要な場合

家庭内LANだけで使う場合、ラズパイはデフォルトでファイアウォール無効のため、何もしなくてもWindowsなどからアクセスできることが多い。

この記事が気に入ったら
フォローしてね!

share
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする