Ubuntu搭建Samba使用笔记

安装配置

sudo apt install samba

修改配置文件/etc/samba/smb.conf添加如下配置

[5TB]
comment = 5TB
path = /mnt/569fa0a4-724e-44aa-94a0-cf740b506291
create mask = 0700
directory mask = 0700
valid users = nasm
read only = no
browseable = yes
writable = yes
guest ok = yes

[5TB]

  • 这是共享名称,在网络上访问共享时会显示这个名称。

comment = 5TB

  • 这是对共享资源的描述,会在Windows资源管理器中显示。

path = /mnt/569fa0a4-724e-44aa-94a0-cf740b506291

  • 指定共享目录的实际路径。在这个示例中,共享目录为/mnt/569fa0a4-724e-44aa-94a0-cf740b506291

create mask = 0700

  • 创建文件时的权限掩码。0700表示新创建的文件只有所有者(创建文件的用户)有读写执行权限。

directory mask = 0700

  • 创建目录时的权限掩码。0700表示新创建的目录只有所有者有读写执行权限。

valid users = nasm

  • 指定可以访问该共享的用户。在这个示例中,只有用户nasm可以访问该共享。

read only = no

  • 指定共享是否只读。no表示该共享是可写的,用户可以在其中创建和修改文件。

browseable = yes

  • 指定共享是否在网络浏览时可见。yes表示该共享在浏览网络资源时是可见的。

writable = yes

  • 指定共享是否可写。yes表示用户可以向共享中写入数据。

guest ok = no

  • 指定是否允许未认证的用户访问该共享。no表示不允许匿名用户访问该共享

创建用户

sudo smbpasswd -a nasm

根据提示输入密码

传输配置优化

在全局设置部分添加或修改以下参数:

ini复制代码[global]
   socket options = TCP_NODELAY SO_RCVBUF=65536 SO_SNDBUF=65536
   read raw = yes
   write raw = yes
   max xmit = 65535
   dead time = 15
   getwd cache = yes
   use sendfile = yes
   aio read size = 16384
   aio write size = 16384
   min receivefile size = 16384

这些参数的作用如下:

  • socket options:设置TCP/IP套接字选项,提高传输性能。
  • read rawwrite raw:允许原始读写,提高传输效率。
  • max xmit:设置最大传输块大小。
  • dead time:设置空闲连接的等待时间,单位为分钟。
  • getwd cache:启用路径缓存,提高性能。
  • use sendfile:启用sendfile()系统调用,提高传输性能。
  • aio read sizeaio write size:启用异步I/O,提高大文件传输性能。
  • min receivefile size:设置接收文件的最小大小。