Samba服务器的搭建

Samba简介

硬件环境

从左到右分别是

  1. Windows主机
  2. 交换机
  3. 香蕉派BPI-M64 (Ubuntu Server 16.04)
  4. 320GB磁盘


    硬件环境

Linux挂载ntfs磁盘

https://www.tuxera.com/community/open-source-ntfs-3g/
https://zoomadmin.com/HowToInstall/UbuntuPackage/ntfs-3g

# 安装
sudo apt install -y ntfs-3g
# 使用
sudo mount -t ntfs-3g /dev/sda1 /mnt/windows
# 启动时自动mount磁盘
vi /etc/fstab
/dev/sda1 /mnt/windows ntfs-3g defaults 0 0

安装Samba服务器

sudo apt install samba

安装完成后,samba服务生产的相关的程序及配置文件如下:

  • 主配置文件:/etc/samba/smb.conf
  • 主程序:nmbd:NetBIOS name server 及smbd:SMB/CIFS services
  • Unit文件:smb.service和nmb.service

配置Samba服务器

主配置文件/etc/samba/smb.conf, 由samba-common程序包提供.
配置这块可直接看这篇文章
简单地在原来的文件末尾添加一个section即可,如下。

[samba_dir]
    comment = This is a new share directory
    path = /samba_dir
    guest ok = Yes
    read only = No

更多内容可以看 Samba 电子书或者Ubuntu Server Guide的Samba章节。

创建samba用户

samba帐号必须要存在于Linux系统中(/etc/passwd),但其密码的却是单独维护的。pdbedit命令是用于管理smb服务的账号信息数据库其用法格式为:

pdbedit [options] account
-a USERNAME:创建samba用户;
-x:删除samba用户;
-L:列出samba用户列表;
-Lv:列出用户详细信息列表;

除了pdbedit命令之外,我们也可以使用smbpasswd命令来管理创建samba用户,其语法格式如下:

smbpasswd [options] USERNAME
-a:添加账号
-x:删除账号
-d:禁用账号
-e:启用账号

具体创建命令

useradd samba  # 创建samba用户
pdbedit -a samba  # 在此步配置密码

启动与停止smb服务

service smbd start
service smbd stop
service smbd restart

访问Samba磁盘

  1. Windows 文件浏览器中\\192.168.1.123\\HostName
  2. Linux 略
  3. macOS 略

其它要注意的

需要防火墙放开端口,或者配置IP白名单。

测试

传输速度只有11MBpb,实属坑爹。作为对比同样是传输视频,我手头的USB2.0设备可以跑38MBps,USB3.0设备可以跑390MBps。不过这个速度已经可以满足我下载视频和流式观看视频的需求了。
传输速度慢的原因分析:

  1. 磁盘太旧,生产日期为2009年12月,性能老化
  2. USB2.0接口限制了传输速度
  3. 百兆网线,极速也只能跑12.5MBps...
测试传输速度

你可能感兴趣的:(Samba服务器的搭建)