debian からwindows共有フォルダにアクセスする方法

はじめに

samba自体は昔からあるのですが、古い情報も多くあるわけで、メモがてら

パッケージのインストール

sudo apt update
sudo apt upgrade
sudo apt install cifs-utils

マウントの方法

まずはマウント先のフォルダを作成します

sudo mkdir /mnt/winshare

linux上のユーザーをuserとし、windows上のユーザーをwin,パスワードをpassとすると以下のコマンドになります。

sudo mount -t cifs -o uid=user,gid=user,vers=3.0,username=win,password=pass //IPアドレス/共有フォルダ名 /mnt/winshare/

正常にマウントされると、以下のコマンドでフォルダ内を確認する事ができます。

ls -l /mnt/winshare

自動マウントの方法

上記で実行できたコマンドのシェルスクリプトを作成します。

cat  /usr/local/bin/samba_mount.sh
#!/bin/bash
sleep 2
sudo mount -t cifs -o uid=user,gid=user,vers=3.0,username=win,password=pass //IPアドレス/共有フォルダ名 /mnt/winshare/ 

次にsystemdの設定ファイルを作成します。

cat /usr/local/bin/samba_mount.sh
[Unit]
Description = samba mount daemon
[Service]
ExecStart = /usr/local/bin/samba_mount.sh
Restart = always
Type = simple
[Install]
WantedBy = multi-user.target

スクリプトに実行権限を付与し、起動時に実行されるようにします。

sudo chmod +x /usr/local/bin/samba_mount.sh
sudo systemctl enable samba_mount.service 
Created symlink /etc/systemd/system/multi-user.target.wants/samba_mount.service → /etc/systemd/system/samba_mount.service.

これで自動でマウントされるようになりました。