$ sudo apt-get install samba
$ sudo apt-get install samba-common
$ sudo apt-get install samba-common-bin
$ sudo apt-get install system-config-samba
2. 配置
$ sudo system-config-samba (图形)
配置文件:/etc/samba/smb.conf
3. 启动
$ sudo smbd start
默认的 smb.conf 文件内容繁多,这里主要关心 smb.conf 文件的一些主要配置内容:
[global] : 表示以下的内容为全局配置,此项必须要有。
workgroup : 用来定义工作组,这里的工作组和 Windows 中的工作组一样概念。
server string : 用来定义 Samba 服务器的说明信息,内容随意。
log file : 用来定义 Samba 用户日志文件。比如在默认的配置文件中有:
引用log file = /var/log/samba/log.%m
上面,%m 代表客户端的主机名(代替 netbios name),Samba 服务器会在指定的目录中为每个登录主机建立不同的日志文件。
max log size : 用来定义日志文件的大小,设置为 0 代表不限制,默认单位为 KB。
security : 用来定义数据共享的方式,此项有多个可选值,常用的有 user 和 share。user 表示需要密码验证后才能共享数据,share 表示可以直接共享数据,无需输入密码。
encrypt passwords : 用来设定用户密码是否加密,yes 表示需要加密,否则不加密。由于现在的 Windows 系统都以加密的形式发送 SMB/CIFS 口令,所以一般会选择 yes 。
socket options : 用来设定 Samba 服务器和客户端之间会话的 Socket 选项,此项的设置可以优化数据传输速度。
path : 用来指定共享的目录,此为必选项。
writable : 用来设置是否可写,yes 为可写,no 为不可写。
browseable : 用来定义是否可以在 Windows 工作组下看到共享文件夹,如果需要隐藏共享文件夹,则选择 no 。
guest ok : 用来定义匿名用户是否可以登录,如果 security 设置为 user,则此选项默认为 no 。
comment : 对共享目录的说明文件,可以自定义说明信息。
valid user : 用来定义可以访问该 Samba 服务器的用户。
create mask : 用来定义客户端用户创建文件的默认权限,如 664 表示对用户组可读可写,对其他用户仅只读。
directory mask : 用来定义客户端用户创建目录的默认权限,如 755 表示对用户可读可写可执行,其他用户可读可执行。
一个简单的共享例子如下:
引用[samba]
path = /home/beyes/samba
writeable = yes
browseable = yes
guest ok = yes
如果设定了用户登录(非匿名),则这些用户是系统里的用户,也就是客户端连接服务器时所需要的用户。可以用 smbpasswd 命令来设置 samba 的用户名密码,这些密码可以和系统用户的密码相同,也可以不同。比如:
引用$sudo smbpasswd -a beyes
上面, -a 参数说明,给指定用户创建的密码会保存在本地的 smbpasswd 文件中。