共计 2606 个字符,预计需要花费 7 分钟才能阅读完成。
1. 安装 Samba 及相关包
$ sudo apt-getinstall samba samba-common smbfsPython-glade2system-config-samba
2. 创建共享目录
$ mkdir /home/kevin/share
$ sudo chmod 777/home/kevin/Share
3. 创建 Samba 配置文件
1) 保存现有配置文件
$ sudo cp/etc/samba/smb.conf /etc/samba/smb.conf.backup
2) 修改配置文件
$ sudo gedit/etc/samba/smb.conf
在文件末尾添加
[share]
path = /home/kevin/Share
available = yes
browseable = yes
public = yes
writable = yes
找到[global],添加
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936
———————————— 分割线 ————————————
相关阅读:
VMWare 虚拟机 Ubuntu 双网卡 访问 samba 速度 翻倍 http://www.linuxidc.com/Linux/2013-06/85445.htm
Samba 文件共享服务器加入 Windows Server 2003 域 http://www.linuxidc.com/Linux/2013-06/86391.htm
Samba 安装配置 http://www.linuxidc.com/Linux/2013-06/86101.htm
CentOS 6.2 下 Samba 服务的配置 http://www.linuxidc.com/Linux/2013-01/78390.htm
Win7+VMware+Fedora18 Samba 服务器的搭建图解 http://www.linuxidc.com/Linux/2013-01/78234.htm
———————————— 分割线 ————————————
4. 创建 Samba 帐户
$ sudo touch /etc/samba/smbpasswd
$ sudo smbpasswd -a kevin (该用户必须是已经在本机上创建的用户)
删除网络使用者的账号的命令是把上面命令的 - a 改成 -x
5. 重启 Samba 服务器
$ sudo/etc/init.d/smbd restart
6. 测试使用
在 Windows 下输入 ip 使用,在文件夹下输入”\\”+”Ubuntu 机器名或 IP”+”\share”。
$ smbclient -L //localhost/Share
安装上文配置的实际上文件共享不要用户名登陆密码验证,我们可以修改配置实现权限管控。
$ sudo gedit /etc/samba/smb.conf
1、将默认的 security= share 改成 security = user
2、将紧接着的 passdbbackend = tdbsam 改成 passdb backend = smbpasswd
3、将; valid users = %S 改成 validusers = kevin (添加的 samba 服务器的用户名)
4、创建 Samba 帐户
$ sudo touch/etc/samba/smbpasswd
$ sudo smbpasswd -a kevin (该用户必须是已经在本机上创建的用户)
5、重启服务器
$ sudo/etc/init.d/smbd restart
TIPS:
passdb backend = tdbsam
说明:passdb backend 就是用户后台的意思。
目前有三种后台:smbpasswd、tdbsam 和 ldapsam。sam 应该是 security accountmanager(安全账户管理)的简写。
1.smbpasswd:该方式是使用 smb 自己的工具 smbpasswd 来给系统用户(真实用户或者虚拟用户)设置一个 Samba 密码,客户端就用这个密码来访问 Samba 的资源。smbpasswd 文件默认在 /etc/samba 目录下,不过有时候要手工建立该文件。
2.tdbsam:该方式则是使用一个数据库文件来建立用户数据库。数据库文件叫 passdb.tdb,默认在 /etc/samba 目录下。passdb.tdb 用户数据库可以使用 smbpasswd–a 来建立 Samba 用户,不过要建立的 Samba 用户必须先是系统用户。我们也可以使用 pdbedit 命令来建立 Samba 账户。pdbedit 命令的参数很多,我们列出几个主要的。
pdbedit –a username:新建 Samba 账户。
pdbedit –x username:删除 Samba 账户。
pdbedit –L:列出 Samba 用户列表,读取 passdb.tdb 数据库文件。
pdbedit –Lv:列出 Samba 用户列表的详细信息。
pdbedit –c“[D]”–u username:暂停该 Samba 用户的账号。
pdbedit –c“[]”–uusername:恢复该 Samba 用户的账号。
valid users = 允许访问该共享的用户
说明:valid users 用来指定允许访问该共享资源的用户。
例如:valid users =bobyuan,@bob,@tech(多个用户或者组中间用逗号隔开,如果要加入一个组就用“@+ 组名”表示。)
invalid users = 禁止访问该共享的用户
说明:invalid users 用来指定不允许访问该共享资源的用户。
例如:invalid users = root@bob(多个用户或者组中间用空格隔开。)
启动 Samba 服务器后,可以使用 ps 命令查看进程:
$ ps -aux
可以看到 Samba 服务会同时启动两个服务,其中 smbd 主要用来管理共享出来的目录,nmbd 主要用来解析 NetBIOS 名。在 Windows 系统中,主机可以被加入一个组中,这样每个主机都必须有一个名字,这个名字是用于在网上被标志的名,并非机器的主机名,将其称为 NetBIOS 名。其中 nmbd 进程是随着 smbd 进程启动而启动。
![post-qrcode](https://www.xgss.net/wp-content/uploads/2023/07/二维码-微信公众号256x256.jpg)