ubuntu 12.04 配置samba共享服务 实践篇更新中

首先需要修改IPV6的默认属性,UNBUNTU12.04默认使用了IPV6,这样在局域网中PING不到该台主机

Ubuntu 设置ipv4

主要是编辑/etc/network/interfaces和/etc/resolv.conf这两个文件,前者设置了ip地址、网关、子网掩码,后者设置dns等属性

示例(参考http://linux.chinaunix.net/techdoc/net/2008/04/05/989425.shtml):

1. 以DHCP方式配置网卡

编辑文件/etc/network/interfaces:

cp /etc/network/interfaces /etc/network/interfaces.bk(备份一下)

sudo vi /etc/network/interfaces
并用下面的行来替换有关eth0的行:
# The primary network interface - use DHCP to find our address
auto eth0
iface eth0 inet dhcp
用下面的命令使网络设置生效:
sudo /etc/init.d/networking restart
也可以在命令行下直接输入下面的命令来获取地址

sudo dhclient eth0

本人补充:

ifconfig eth0 命令察看IP地址



2. 为网卡配置静态IP地址
编辑文件/etc/network/interfaces:
sudo vi /etc/network/interfaces
并用下面的行来替换有关eth0的行:# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.3.90
gateway 192.168.3.1
netmask 255.255.255.0
#network 192.168.3.0
#broadcast 192.168.3.255
将上面的ip地址等信息换成你自己就可以了.用下面的命令使网络设置生效:
sudo /etc/init.d/networking restart
3. 设定第二个IP地址(虚拟IP地址)
编辑文件/etc/network/interfaces:
sudo vi /etc/network/interfaces
在该文件中添加如下的行:
auto eth0:1
iface eth0:1 inet static
address 192.168.1.60
netmask 255.255.255.0
network x.x.x.x
broadcast x.x.x.x
gateway x.x.x.x
根据你的情况填上所有诸如address,netmask,network,broadcast和gateways等信息.
用下面的命令使网络设置生效:
sudo /etc/init.d/networking restart
4. 配置DNS

首先,你可以在/etc/hosts中加入一些主机名称和这些主机名称对应的IP地址,这是简单使用本机的静态查询.
要访问DNS 服务器来进行查询,需要设置/etc/resolv.conf文件.
假设DNS服务器的IP地址是192.168.3.2, 那么/etc/resolv.conf文件的内容应为:
nameserver 192.168.3.2


按照以上方式成功设置IPV4以后,开始安装ubuntu samba服务(例子中的sam为用户名)

一. samba的安装:

sudo apt-get install samba
sudo apt-get install smbfs

二. 创建共享目录:

mkdir  / home /sam / share
sudo chmod 
777   / home /sam / share

三. 创建Samba配置文件:

1. 保存现有的配置文件

sudo cp  / etc / samba / smb.conf  / etc / samba / smb.conf.bak

2. 修改现配置文件

sudo gedit  / etc / samba / smb.conf

在smb.conf最后添加

[share]
      path 
=   / home /sam / share
      available 
=  yes
      browsealbe 
=  yes
      
public   =  yes
      writable 
=  yes

四. 创建samba帐户

  sudo touch  / etc / samba / smbpasswd
  sudo smbpasswd 
- a sam(此处的用户必须是你已经在本机创建的用户,否则无效)

然后会要求你输入samba帐户的密码

 [如果没有第四步,当你登录时会提示 session setup failed: NT_STATUS_LOGON_FAILURE]

 五. 重启samba服务器

sudo  / etc / init.d / smbd restart

六. 测试

smbclient  - // localhost/share

七,使用

可以到windows下输入ip使用了,在文件夹处输入  " \\ "   +   " Ubuntu机器的ip或主机名 "   +   " \ "   +   " share "

参考文档
http://apps.hi.baidu.com/share/detail/31035795

Ubuntu下配置samba实现文件夹共享


后续补充
1、启动Samba服务器后,可以使用ps命令查看进程:
ps -aux



可以看到Samba服务会同时启动两个服务,其中smbd主要用来管理共享出来的目录,nmbd主要用来解析NetBIOS名。在Windows系统中,主机可以被加入一个组中,这样每个主机都必须有一个名字,这个名字是用于在网上被标志的名,并非机器的主机名,将其称为NetBIOS名。其中nmbd进程是随着smbd进程启动而启动。

2、关闭Samba服务,使用命令:
#smbcontrol smbd shutdown    -----------此命令只关闭smbd

用法: smbcontrol [OPTION...] <destination> <message-type> <parameters>
  -t, --timeout=TIMEOUT              Set timeout value in seconds

<destination> is one of "nmbd", "smbd", "winbindd" or a process ID

3、安装上文配置的实际上文件共享不要用户名登陆密码验证,我们来修改配置文件来达到这一目的

首先打开CONF配置文件
sudo gedit /etc/samba/smb.conf

将默认的 security = share改成security = user
还有将紧接着的passdb backend = tdbsam 改成 passdb backend = smbpasswd

将;   valid users = %S
修改为 valid users = sam(sam就是你的添加的samba服务器用户名)


创建samba帐户(这一步和下一步不要认为是重复的,其实第一次执行的时候由于配置问题实际上是没有写入smbpasswd中的)
  sudo touch  / etc / samba / smbpasswd
  sudo smbpasswd 
- a sam

然后会要求你输入samba帐户的密码

 [如果没有第四步,当你登录时会提示 session setup failed: NT_STATUS_LOGON_FAILURE]


重启samba服务器

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(多个用户或者组中间用空格隔开。)


4、删除WINDOWS上的旧链接,当启动用户验证以后,只要登陆一下就可以一直访问该共享资源
在WINDOWS上输入net use * /delete
就可以删除当前的远程连接,这样再次访问这个资源就又需要输入用户名和验证码了。

参考:
http://blog.sina.com.cn/s/blog_6ee84ccc0100q2vu.html



转载于:https://www.cnblogs.com/shuzui1985/archive/2012/05/21/3020955.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值