Centos7 使用 rclone 和cifs-utils 挂载远程smb到本地

前言

  本教程提供了在CentOS 7系统上挂载SMB共享的两种方法:使用rclone工具和原生SMB挂载。rclone方法提供了更好的跨平台兼容性和网络恢复能力,适合需要访问多种云存储或网络不稳定的环境;而原生SMB挂载则提供了更高的性能和更低的系统资源占用,适合稳定的内网环境。可以根据实际需求选择适合的方法。
(1)性能对比
指标 原生SMB挂载 Rclone挂载
传输速度 ★★★★★ ★★★☆☆
CPU占用 ★★☆☆☆ ★★★★☆
内存占用 ★★☆☆☆ ★★★☆☆
小文件操作 ★★★★☆ ★★☆☆☆
大文件传输 ★★★★★ ★★★★☆
网络恢复能力 ★★☆☆☆ ★★★★☆
(2)推荐选择

对于Linux环境,如果:

  • 是稳定的内网环境且需要高性能 → 选择原生SMB挂载
  • 需要更灵活的管理或网络不稳定 → 选择Rclone挂载
  • 需要访问多种云存储 → 选择Rclone
  • 是长期持久化挂载 → 原生SMB可能更合适

方法一:使用rclone挂载SMB共享

一、安装rclone及依赖

yum install epel-release -y
yum install fuse fuse3 fuse3-libs -y
curl https://rclone.org/install.sh | bash

二、配置 rclone 连接 smb

方法一,直接创建配置文件

mkdir -p /root/.config/rclone
vi /root/.config/rclone/rclone.conf

[mysmb]
type = smb
host = 192.168.24.29
pass = hIiMTo***********3l_Q
关于密文,可以手动加密后写入配置
使用 rclone obscure 加密密码:
rclone obscure your_password

方法二,使用配置向导(1)进入 rclone 配置模式

(1)进入 rclone 配置模式

rclone config

(2)添加新的 smb 远程存储

  1. 选择 n(新建远程)
  2. 输入远程名称(如 mysmb
  3. 选择存储类型 smb:47  
  4. 输入 SFTP 服务器地址(如 example.com 或 192.168.1.100):192.168.24.29
  5. 输入用户名:root
  6. 输入密码:
  7. 其他选项默认(直接回车):
  8. 确认配置:
    y) Yes this is OK
    e) Edit this remote
    d) Delete this remote
    y/e/d> y
  9. 退出配置模式:
q) Quit config
e/n/d/q> q

三、测试 smb 连接

先查看配置文件 (记下远程名称mysmb,后面都要使用)
cat /root/.config/rclone/rclone.conf
# 列出远程目录(验证连接)
rclone lsf mysmb:/

四、 挂载SMB共享

(1)创建本地挂载点

sudo mkdir -p /mnt/smb_share

(2)使用 rclone mount 挂载

# 前台运行测试
rclone mount mysmb:home /mnt/smb_share --allow-other --vfs-cache-mode full
# 新开窗户验证
df -h|grep mysmb

# 如果测试正常,可以后台运行
rclone mount mysmb:home /mnt/smb_share --allow-other --vfs-cache-mode full --daemon

(3)验证挂载

df -h | grep mysmb
ls /mnt/smb_share

(4)开机自动挂载(Systemd 服务)

具体见另一篇文章
Centos7 使用 rclone 挂载远程sftp到本地 https://blog.hx99.net/Tech/2831.html


五、其它

(1)常见问题解决

  1. 权限问题
    • 确保挂载点目录有正确的权限
    • 使用--allow-other选项允许其他用户访问
  2. 连接问题
    • 检查防火墙是否放行了445端口
    • 确认SMB服务器允许来自CentOS的访问
  3. 性能优化
    • 可以调整--buffer-size--vfs-cache-mode参数提高性能
    • 对于大量小文件,可以增加--dir-cache-time

方法二:原生SMB挂载(快速参考)

1. 安装软件包并创建挂载点

yum install -y cifs-utils
sudo mkdir -p /mnt/smb_home

2. 创建凭据文件 /etc/smb_credentials

# 内容
username=root
password=*****

# 设置权限
chmod 600 /etc/smb_credentials

3. 手动挂载共享

mount -t cifs //192.168.24.29/home /mnt/smb_home -o credentials=/etc/smb_credentials,vers=2.0

4. 设置开机自动挂载

编辑/etc/fstab

//192.168.24.29/home /mnt/smb_home cifs credentials=/etc/smb_credentials,vers=2.0 0 0