samba的配置
2013-10-09 08:50
246 查看
1. Samba的安装
安装Ubuntu时,可能已经安装了samba。如果没有安装,则执行下面的命令:
sudo apt-get install samba
sudo apt-get install smbfs
如果需要使用samba客户端访问其它机器的共享目录,还需要安装smbclient:
sudo apt-get install smbclient
安装完毕后,会在/etc下生成一个samba目录,并在/etc/init.d下生产一个smbd文件(有些版本可能是samba文件)。
2. 建立共享目录
确定需要使用samba共享的目录,或者使用mkdir建立一个目录专门用于共享,如:
mkdir /home/jacky/photo
需要注意目录的所有者和权限。Linux是一个多用户系统,对用户和权限的管理是比较严格的。如果需要将一个文件或目录共享,必须考虑这个文件或目共享的对象,也即会有哪些用户会访问它,以此来设置它的权限。比如,共享一个任何人都可以访问的目录(以刚才建立的share目录为例),且任何人都可以对该目录下的东西进行读写操作,那么就可以设置为:
chmod –R 777 /home/jacky/photo
如果目录共享的对象仅为该目录的拥有者本人(还是以刚才建立的photo目录为例),其他任何人都不可访问,那么可以设置为:
chmod –R 700 /home/jacky/photo
还要注意一点的是,目录必须要有可执行(x)权限,否则进不去。
3. 设置无账号密码的共享目录
所谓无账号密码,也就任何人都可以登录访问,而且赋予每个登录的用户读写和执行权限。
进入/etc/samba目录,先备份smb.conf文件:
sudo cp smb.conf smb.conf.back
打开smb.conf:
sudo vim /etc/samba/smb.conf
找到security这个设置项,默认应该是为user,并被注释掉的,将其更改为:
security = share
下一步就是要设置具体的共享目录了,smb.conf中有一些例子和说明可参考。这里,我们在smb.conf的末尾增加下列语句:
[photo]
comment = share photo
path = /home/jacky/photo
read only = no
guest ok = yes
保存和关闭smb.conf文件,然后重启smba。在ubuntu中有三条命令可重启samba,分别是:
sudo restart smbd
sudo /etc/init.d/smbd restart
sudo service smbd restart
执行其一即可。
完毕后,即可通过其它机器访问ubuntu共享出来的目录了。
4. 设置有账号密码的共享目录
大多数时候,我们需要考虑共享的权限问题,也即要求输入正确的账号密码后才能登录。
首先,需要向samba增加可访问的用户,所增加的用户,必须是当前Linux系统已注册的用户。这里,要用到smbpasswd这条命令,具体用法可以help一下:
sudo smbpasswd –h
比如,增加jacky到samba的用户列表中,执行:
sudo smbpasswd –a jacky
samba会要求输入新的密码,所输入的密码可以与jacky的系统登录密码不一样。可以添加多个用户。有了用户资源后,就可以用户和共享目录捆绑起来了。
打开smb.conf文件:
sudo vim /etc/samba/smb.conf
找到security项,将其设置为user:
security = user
确定下面这项没有被注释:
passdb backend = tdbsam
还是以前面提到的/home/jacky/photo目录为例。在smb.conf末尾重新编写photo目录的参数,如下:
[photo]
comment = share photo
path = /home/jacky/photo
read only = no
valid users = jacky
保存和关闭smb.conf文件,然后重启smba。这时候再登录share目录,就需要输入账号密码了,也就是jacky和它对应的密码。也可以添加多个账号对同一目录的访问,如:
valid users = jacky tonny tom
前面也提到了,共享目录的权限必须设置正确,否则访问会出问题。
本文是以ubuntu 10.04为例
安装Ubuntu时,可能已经安装了samba。如果没有安装,则执行下面的命令:
sudo apt-get install samba
sudo apt-get install smbfs
如果需要使用samba客户端访问其它机器的共享目录,还需要安装smbclient:
sudo apt-get install smbclient
安装完毕后,会在/etc下生成一个samba目录,并在/etc/init.d下生产一个smbd文件(有些版本可能是samba文件)。
2. 建立共享目录
确定需要使用samba共享的目录,或者使用mkdir建立一个目录专门用于共享,如:
mkdir /home/jacky/photo
需要注意目录的所有者和权限。Linux是一个多用户系统,对用户和权限的管理是比较严格的。如果需要将一个文件或目录共享,必须考虑这个文件或目共享的对象,也即会有哪些用户会访问它,以此来设置它的权限。比如,共享一个任何人都可以访问的目录(以刚才建立的share目录为例),且任何人都可以对该目录下的东西进行读写操作,那么就可以设置为:
chmod –R 777 /home/jacky/photo
如果目录共享的对象仅为该目录的拥有者本人(还是以刚才建立的photo目录为例),其他任何人都不可访问,那么可以设置为:
chmod –R 700 /home/jacky/photo
还要注意一点的是,目录必须要有可执行(x)权限,否则进不去。
3. 设置无账号密码的共享目录
所谓无账号密码,也就任何人都可以登录访问,而且赋予每个登录的用户读写和执行权限。
进入/etc/samba目录,先备份smb.conf文件:
sudo cp smb.conf smb.conf.back
打开smb.conf:
sudo vim /etc/samba/smb.conf
找到security这个设置项,默认应该是为user,并被注释掉的,将其更改为:
security = share
下一步就是要设置具体的共享目录了,smb.conf中有一些例子和说明可参考。这里,我们在smb.conf的末尾增加下列语句:
[photo]
comment = share photo
path = /home/jacky/photo
read only = no
guest ok = yes
保存和关闭smb.conf文件,然后重启smba。在ubuntu中有三条命令可重启samba,分别是:
sudo restart smbd
sudo /etc/init.d/smbd restart
sudo service smbd restart
执行其一即可。
完毕后,即可通过其它机器访问ubuntu共享出来的目录了。
4. 设置有账号密码的共享目录
大多数时候,我们需要考虑共享的权限问题,也即要求输入正确的账号密码后才能登录。
首先,需要向samba增加可访问的用户,所增加的用户,必须是当前Linux系统已注册的用户。这里,要用到smbpasswd这条命令,具体用法可以help一下:
sudo smbpasswd –h
比如,增加jacky到samba的用户列表中,执行:
sudo smbpasswd –a jacky
samba会要求输入新的密码,所输入的密码可以与jacky的系统登录密码不一样。可以添加多个用户。有了用户资源后,就可以用户和共享目录捆绑起来了。
打开smb.conf文件:
sudo vim /etc/samba/smb.conf
找到security项,将其设置为user:
security = user
确定下面这项没有被注释:
passdb backend = tdbsam
还是以前面提到的/home/jacky/photo目录为例。在smb.conf末尾重新编写photo目录的参数,如下:
[photo]
comment = share photo
path = /home/jacky/photo
read only = no
valid users = jacky
保存和关闭smb.conf文件,然后重启smba。这时候再登录share目录,就需要输入账号密码了,也就是jacky和它对应的密码。也可以添加多个账号对同一目录的访问,如:
valid users = jacky tonny tom
前面也提到了,共享目录的权限必须设置正确,否则访问会出问题。
本文是以ubuntu 10.04为例
相关文章推荐
- Entity Framework 简单增删改操作
- 对象技术OOA/D
- Xamarin Mono For Android 4.6.07004 完整离线安装破解版(C#开发Android、IOS工具)
- ARM裸机程序开发13汇编语言的基本框架
- CSS3之动画Animation
- C++常对象精讲_const关键字的用法
- android开发虚拟机问题汇总
- localtime返回值造成的一个bug
- 挨踢项目求生法则-需求篇、战略篇以及设计篇
- 排序算法(1):主流排序算法概述
- 使用Apache POI精确设置Excel的行高和列宽
- 便于理解mysql内幕的各种逻辑图组
- unknown software exception(0x80000003)
- pair work-Elevator Schedule附加题
- Deep Learning Tutorials
- C++重载输入和输出操作符以及IO标准库中的刷新输入缓冲区残留字符问题
- 有了malloc/free为什么还要new/delete ?
- Android自定义组件开发之onMeasure使用
- ARM裸机程序开发12指令条件码的使用
- Caused by: org.apache.catalina.LifecycleException:eclipse中的tomcat启动不了解决之一。