挂载 Windows 共享
把 Windows 共享目录挂到 Linux 本地目录,用 mount 的 cifs 类型即可完成:手动挂载一行命令,长期使用写进 fstab 并配合凭据文件避免明文口令。适用于从 Windows 文件服务器取放资料、迁移期间临时访问源端共享等场景。
基本信息
| 所需包 | cifs-utils |
|---|---|
| 临时挂载 | mount -t cifs //地址/共享 /本地目录 -o 选项 |
| 凭据文件 | credentials=/etc/cifs-creds,权限 600 |
| 开机挂载 | /etc/fstab |
| 常用选项 | iocharset、vers、_netdev |
典型使用场景
- 迁移期间访问原 Windows 文件服务器的共享目录
- 业务系统读取 Windows 侧的报表与附件目录
- 备份任务把归档写入共享存储
- 临时取数做比对,用完即卸载
- 跨平台协作中作为过渡方案使用
临时挂载
临时挂载
dnf install -y cifs-utils # 安装工具包,DEB 系用 apt
mkdir -p /mnt/win
mount -t cifs //10.0.0.5/share /mnt/win -o username=user,iocharset=utf8,vers=3.0
ls /mnt/win # 确认能看到内容
df -h /mnt/win # 确认容量
umount /mnt/win # 临时使用后卸载凭据文件与 fstab
凭据文件与 fstab
# 写入 /etc/cifs-creds 三行内容:username、password、domain
chmod 600 /etc/cifs-creds # 权限必须是 600,否则挂载会报错
# /etc/fstab 追加:
//10.0.0.5/share /mnt/win cifs credentials=/etc/cifs-creds,iocharset=utf8,vers=3.0,_netdev 0 0
mount -a && df -h /mnt/win # 验证条目生效
dmesg | tail -20 # 失败时看内核报错码常用选项
| 选项 | 作用 | 注意点 |
|---|---|---|
| username | 登录共享的账号 | 含域时用 domain 单独指定 |
| credentials | 从文件读取账号口令 | 文件权限设为 600 |
| vers | 协议版本 | 与服务端支持范围匹配 |
| iocharset | 字符集 | 中文文件名乱码时调整 |
| uid 与 gid | 映射本地属主 | 便于本地服务读写 |
| _netdev | 等网络就绪再挂载 | 避免启动阶段卡住 |
故障排查顺序
- 确认网络可达与共享服务端口开放
- 确认共享名与账号口令正确
- 确认协议版本与服务端支持一致
- 确认凭据文件权限与内容格式
- 查看内核报错信息定位具体错误码
中文文件名乱码先核对服务端文件系统编码再调整本地字符集;挂载失败时内核报错信息比挂载命令的输出更有参考价值。
与 NFS 怎么选
- 服务端是 Windows 或 Samba 时用 cifs
- 纯 Linux 环境优先用 NFS
- 需要本地权限映射时核对挂载选项
- 临时取数场景用完及时卸载