直接用mount -t cifs挂载即可,核心是确保协议兼容、凭证有效、权限可读写:先确认Windows共享已启用并放行445端口;再安装cifs-utils工具;接着创建挂载点并设置属主;最后执行mount命令,推荐指定vers=3.1.1、使用credentials文件存储凭据,并配置uid/gid与file_mode/dir_mode确保本地访问权限。

直接用 mount -t cifs 命令挂载即可,核心是确保协议兼容、凭证有效、权限可读写。下面分四步说清楚怎么稳稳挂上。
确认Windows共享已就绪
在Windows端检查三件事:
- 目标文件夹已右键→“属性”→“共享”→添加用户(如 Everyone 或指定账号),并勾选“读取/写入”权限
- 网络发现和文件共享在“高级共享设置”中已启用
- 防火墙放行 445 端口(TCP),否则Linux连不上
安装CIFS支持工具
Linux必须有 cifs-utils 才能识别Windows共享。根据系统选命令:
- Ubuntu/Debian:
sudo apt update && sudo apt install cifs-utils -y - RHEL/CentOS 7:
sudo yum install cifs-utils -y - RHEL 8+/Fedora:
sudo dnf install cifs-utils -y
装完运行 modprobe cifs && echo "OK",不报错就说明模块就位。
创建挂载点并执行挂载
先建一个空目录当本地入口:
sudo mkdir -p /mnt/winshare-
sudo chown $USER:$USER /mnt/winshare(避免后续操作被权限卡住)
再挂载(以 Windows IP 192.168.1.100、共享名 data、账号 admin、密码 123 为例):
- 基础命令:
sudo mount -t cifs //192.168.1.100/data /mnt/winshare -o username=admin,password=123,vers=3.0,uid=$UID,gid=$GID,file_mode=0777,dir_mode=0777 - 如果挂载失败提示
permission denied,大概率是SMB版本不匹配——把vers=3.0换成vers=3.1.1再试 - 不想明文写密码?先建凭据文件:
echo -e "username=admin\npassword=123" | sudo tee /etc/samba/cred && sudo chmod 600 /etc/samba/cred,然后用-o credentials=/etc/samba/cred,vers=3.1.1
验证与常用维护
挂完立刻验证:
-
df -h | grep winshare—— 看是否列出CIFS类型挂载 -
ls -l /mnt/winshare—— 能列出内容且归属是你自己的UID/GID,说明权限配置对了 - 试着
touch /mnt/winshare/testfile,再到Windows里看文件是否存在
要开机自动挂载?把这行加进 /etc/fstab:


















