Debian 使用 systemd 自动挂载 Samba

本文地址:blog.lucien.ink/archives/540

写成了一键脚本,直接执行即可。

需要注意的是,挂载的路径和 systemd service 的名字要对应上,比如挂载的路径为 /mnt/nas 那 service 的文件名应为 mnt-nas.service

shell 复制代码
#!/usr/bin/env bash

SERVER="nas.local"
USERNAME="foo"
PASSWORD="bar"

apt install cifs-utils -y

groupadd -g 17510 nas

cat <<EOF >> /etc/systemd/system/dns-ready.service
[Unit]
Description=Wait for DNS to come up using 'host'
After=nss-lookup.target

[Service]
Type=oneshot
ExecStart=/bin/bash -c "until host ${SERVER}; do sleep 1; done"

[Install]
WantedBy=multi-user.target
EOF

cat <<EOF >> /etc/systemd/system/mnt-nas.mount
[Unit]
Description=Mount NAS
Requires=network-online.target
After=network-online.target dns-ready.service

[Mount]
What=//${SERVER}/Data
Where=/mnt/nas
Type=cifs
Options=username=${USERNAME},password=${PASSWORD},dir_mode=0775,gid=nas,rw,file_mode=0664

[Install]
WantedBy=multi-user.target
EOF

systemctl daemon-reload

systemctl start dns-ready.service
systemctl enable dns-ready.service

systemctl start mnt-nas.mount
systemctl enable mnt-nas.mount
相关推荐
欧云服务器3 天前
怎么让脚本命令可以同时在centos、debian、ubuntu执行?
ubuntu·centos·debian
~远在太平洋~3 天前
Debian系统如何删除多余的kernel
linux·网络·debian
~远在太平洋~3 天前
debian系统已安装python3.12却无法执行python命令
chrome·python·debian
木子欢儿6 天前
在 Debian 13(以及 12)上安装和配置 tightvncserver 并让普通用户使
运维·前端·debian
l1t13 天前
在debian 13.1容器中安装使用redrock postgresql
运维·postgresql·debian
木子欢儿14 天前
debian 13 安装配置ftp 创建用户admin可以访问 /mnt/Data/
linux·运维·服务器·数据库·debian
地球空间-技术小鱼14 天前
搜罗Linux桌面环境(Desktop Environments)列表
linux·运维·服务器·笔记·学习·ubuntu·debian
木子欢儿15 天前
Debian挂载飞牛OS创建的RAID分区和Btrfs分区指南
运维·debian
政安晨15 天前
政安晨【人工智能项目随笔】OpenClaw(AI人工智能助手)集成SMB服务器实现自动化音效素材处理实战
运维·自动化·自动化运维·samba·ai-agent·openclaw·音频素材openclaw处理
市安16 天前
基于Debain构建Ngxin镜像
运维·nginx·docker·云原生·容器·debian·镜像