御风灰灰
Published on 2025-10-30 / 10 Visits
0
0

smb常用挂载说明

常用系统smb挂载

systemd挂载smb

适用于系统 Ubuntu, Debian,PVE

  1. 新建systemd挂载文件
# 文件命名影响挂载目录,如下则是挂载到 /mnt/nasdisk
vim /etc/systemd/system/mnt-nasdisk.mount
  1. 编辑内容如下
[Unit]
Description=SMB share nasdisk for DSM NAS
After=network-online.target
Wants=network-online.target

[Mount]
What=//192.168.99.3/nasdisk
Where=/mnt/nasdisk
Type=cifs
Options=username=<username>,password=<password>@,uid=1000,gid=1000,dir_mode=0775,file_mode=0664,_netdev

[Install]
WantedBy=multi-user.target

如果要修改挂载后的用户归属,修改上述的uid和gid即可。
如果修改目录,则也要同步修改下文中的 Where

  1. 更新systemd并启动
systemctl daemon-reload
systemctl enable --now mnt-nasdisk.mount

init.d启动方式

tips:info 适用于Openwrt
  1. 在/etc/init.d下创建nas-mount.sh
  2. 编辑内容
#!/bin/sh /etc/rc.common
START=99
STOP=15
SERVICE=mnt-nas

##############  只用改这里  ##############
NAS_IP="192.168.99.3"           # 服务器地址
NAS_SHARE="nasdisk"             # 共享名
NAS_USER="username"                 # 用户名
NAS_PASS="xxxxx"               # 密码
MOUNT_PT="/mnt/nasdisk"         # 本地挂载点
SMB_VERS="3.0"                  # SMB 版本(2.1 / 3.0 / 3.1.1)
UID_GID="0"                     # 本地 uid/gid(OpenWrt 用 0)
DIR_MODE="0775"                 # 目录权限
FILE_MODE="0664"                # 文件权限
MAX_WAIT="30"                   # 网络等待秒数
#########################################

start() {
    logger -t $SERVICE "Starting NAS mount..."
    mkdir -p "$MOUNT_PT"

    # 等网络
    for i in $(seq 1 $MAX_WAIT); do
        ping -c 1 -W 1 $NAS_IP >/dev/null && break
        sleep 1
    done

    # 拼装挂载选项
    OPTS="username=$NAS_USER,password=$NAS_PASS,"
    OPTS="${OPTS}uid=$UID_GID,gid=$UID_GID,"
    OPTS="${OPTS}dir_mode=$DIR_MODE,file_mode=$FILE_MODE,"
    OPTS="${OPTS}noserverino,_netdev,rw"

    if mount -t cifs -o $OPTS "//$NAS_IP/$NAS_SHARE" "$MOUNT_PT"; then
        logger -t $SERVICE "NAS mounted successfully"
    else
        logger -t $SERVICE "NAS mount failed, retry in 30 s"
        sleep 30 && start
    fi
}

stop() {
    umount "$MOUNT_PT" 2>/dev/null
    logger -t $SERVICE "NAS unmounted"
}
  1. 启动
chmod +x /etc/init.d/mount-nas
/etc/init.d/mount-nas enable
/etc/init.d/mount-nas start

Comment