ubuntu 建立samba

Samba 是一个工具套件,在 Unix/Linux 上实现 SMB 协议。SMB 协议通常是被Windows 系列用来实现磁盘和打印机共享。目前 Samba 多数用于 Windows 和Unix/Linux 资源共享,主要是共享文件和打印机,类似 windows 上的网上邻居。Samba服务器启动后主要有两个守护进程,分别是 smbd 和 nmbd。smbd 提供文件和打印机、授权与被授权服务。nmbd 提供名字解析、浏览服务 ,使主机(或工作站)能浏览 Linux 服务器。
一:安装 Samba 服务器
Ubuntu10.04 只安装了 smbclient 客户端,并没有安装 Samba 服务器,所以需要下载和更新软件,如果什么都没装,从第三条命令开始。
执行下了命令进行下载和更新:
$ sudo apt-get remove samba-common
$ sudo apt-get remove smbclient
$ sudo apt-get install samba
$ sudo apt-get install smbclient
安装后可以查看到 samba 服务器已经在后台运行, /etc/init.d/ 下多了 smbd 和nmbd 服务软链接且开机会自动运行。
二:配置 Samba 服务器(使用配置文件)

Samba 服务器默认配置文件是 /etc/samba/smb.conf ,并且可以将 NetBIOS 名与主机的对应关系写在/etc/samba/lmhosts 中。

方案二:在 Windows 中使用密码访问 Linux 共享目录
Step1:(创建共享目录)
在 linux 里建立一个文件夹作为共享,保证该文件夹对来访者具有 rwx 权限。在自己的主文件夹下建是个不错的选择。这里在/home/下建立 workshare 目录,任何人具有读写
访问权限。
$ sudo mkdir -m 777 /home/workshare
Step2:(配置 samba)
1. 对 samba 配置文件进行备份,这是一个比较好的习惯。
$cd/etc/samba
$ sudo cp smb.conf smb_backup.conf
2. 运行文本编辑器对 smb.conf 进行编辑
$ sudo gedit /etc/samba/smb.conf
3. 查找security 关键词,找到下面语句,如下
注意: samba 配置文件 # 和 ; 都作为注释,不起作用

####### Authentication #######
# ...............
# ...............
# ...... .........
# security = xxxxx
将 security = xxxxx 修改为security = user 并去掉前面的 # 号以使配置生效。
在 security = user 下一行添加下述语句:
# passdb backend = tdbsam
smb passwd file = /etc/samba/smbpasswd
encrypt passwords = yes

4. 在文件最后一行后面添加以下语句:
[WorkShare]
comment = share directorys using log name and password
#valid users = %S
valid users = jack
path =/home/workshare
browseable = yes
writable = yes
create mode = 0666
directory mode = 0777
path 改为你自己的共享目录。mode 读写权限根据安全需要自己设定。
valid users 修改为你linux 系统中的一个用户名。
valid users 必须是linux 系统已存在的一个用户账户。

说明:
[WorkShare] --------------------------是远程访问 samba 时看到的共享文件夹名
comment = ---------------------------------------------对该目录的说明性文字
valid users = jack---- 允许访问的 Samba 用户,必须是 Linux 系统账户
path = /home/workshare ------------------------Linux 系统共享目录的绝对路径
writable = yes ----------允许用户在此目录下可写,前提该目录具有其他组写权限
create mode = 0666 -------------如果有可写权限,建立的文件默认的权限掩码
directory mode = 0777 --建立的目录默认的权限掩码,这里权限为 RWXRWXRWX
当然还有其他许多参数可以加,这里不是必须的,就没贴出来。

5. 保存退出,检查是否语法有误。
$testparm
若输出类似下面,表示没有语法错误,可正常运行,否则回去检查。
Processing section "[printers]"
Processing section "[print$]"
Processing section "[WorkShare]"
Loaded services file OK.
Server role: ROLE_STANDALON
Step3: 在 /etc/samba 下创建smbpasswd 文件
$ sudo touch /etc/samba/smbpasswd
添加 samba 用户:
$ sudo smbpasswd -a jack
注:Samba 用户必须是在系统中已经存在的用户,这里使用笔者登陆用户也是 Step2 中的用户

输入 Samba 用户密码 并再次确认即可。

Step4: (重启 samba 使配置生效)
$ sudo /etc/init.d/smbd restart
至此 Samba 服务已经正常运行,在 windows 网络或开始 --> 运行位置输入“\\Ubuntu 虚拟机 IP 地址 ”,并输入刚才设置的 Samba 账户和密码即可对共享文件夹进行访问,据图请看本文后面,windows 访问 Samba 一节。


三:访问 Samba 服务器(Windows)

在 windows 上,点击,开始 --> 运行,输入\\Linux 的 IP 地址 , 这里示例为\\192.168.0.128
注:linux IP 地址可用 $ ifconfig eth0 查询弹出对话框,输入用户(Samba 用户,即本例中的 yaoyaowugui)和密码(刚才设置的 samba 密码,非 linux 登录密码)即可访问 linux 共享出来的目录 WorkShare,进入既可对文件进行访问。注意 linux 对 workshare 权限的设置和每个文件的权限设置,否则可能无法访问或修改。

断开连接:(不是必须)
基本不用显式断开,有时候需要硬性断开,因为 windows 在一次访问之后就会记住这个访问链接,特殊情况当 samba 用户或密码改变时,它就傻了,需要显式断开或重启。
windows 下运行 cmd , 输入命令 net use 查看远程连接,用net use 访问地址 /d /y 命令断开相应连接


四、映射网络文件或驱动器:(这部分不是必须,但是方便使用)

创建网络位置。
Win7 下有,XP 不知道,打开我的电脑(计算机),右键 --> 添加一个网络位置参照网络驱动器 填写 Linux 共享地址(IP+绝对路径)。然后起个名字,完成即可,

看起来比网络驱动器丑一点,不过他有个好处,重启后不会消失,不会拖慢电脑启动速度。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值