VM中 Ubuntu14.04 中Samba的安装配置和使用

以前都是在Redhat 上搭建samba,现在改成在ubuntu12.04 上搭建发现 sudo /etc/init.d/samba restart 始终不行,原来,现在ubuntu下,启动服务要用 sudo service smbd restart,一律都改成了service 这种形式来启动。

1、首先安装 samba

sudo apt-get install samba

2、创建一个文件夹,这个文件夹就是用来共享、传递、读写文件内容的地方。

mkdir -p /home/cxw/share

chmod 777 /home/cxw/share

这里假设你的共享文件夹是在用户主目录下的share目录。

3、配置samba的配置文件smb.conf, 对配置文件做个backup。

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

sudo vim /etc/samba/smb.conf

下面请注意在以下几处动刀子。

(1)请搜索查找到 #security = user的地方,然后以下面这几行取代

security = user(前面有#号去掉)

username map = /etc/samba/smbusers

这是Samba 服务器的安全模式,有5种安全模式:Share、User、Server、Domain和Ads。用来适应不同的企业服务器需求,默认情况下为User。

(2)同样请搜寻到[global]把 workgroup = MSHOME 改成

workgroup = WORKGROUP

display charset = UTF-8

unix charset = UTF-8

dos charset = cp936

后面三行是为了防止出现中文目录乱码的情况。

(3)接着请跳到配置文件下的最后一行(命令模式下,按G)将下列几行新增到文件的最后面,假设允许访问的用户为:cxw。而文件夹的共享名为第二步设置的/home/cxw/share:

[Share]

comment = Shared Folder with username and password (注释信息)

path = /home/cxw/share (我自己用一般设置为path = / 便是整个根目录)

# public = yes (允许匿名访问)

writable = yes (可写)

# readyonly = yes (只读)

valid users = cxw (用户名,设备可访问组可用valid users =@组名)

create mask = 0700

directory mask = 0700

force user = nobody

force group = nogroup

available = yes

browseable = yes (表示可见隐藏)

(4)现在要添加cxw这个网络访问帐户。如果系统中当前没有这个帐户,那么注意这边的用户添加请使用下述命令:(假设用户为cxw,密码为123456)

sudo useradd cxw

要注意,上面只是增加了cxw这个用户,却没有给用户赋予本机登录密码。所以这个用户将只能从远程访问,不能从本机登录。而且samba的登录密码可以和本机登录密码不一样。

现在要新增网络使用者的帐号:

sudo smbpasswd -a cxw

sudo vim /etc/samba/smbusers

在新建立的文件内加入下面这一行并保存

cxw = "network username"

(5)测试并启动samba

sudo testparm

注意老的命令用不了啦

sudo /etc/init.d/samba restart

肯定会提示sudo: /etc/init.d/samba: command not found

请使用下面的命令:

sudo service smbd restart

sudo service nmbd restart

如何在不同系统之间互访samba。

1.如果你只是为了拷贝东西,那我说没有必要去建这么复杂,你完全可以使用ssh。

sudo apt-get install ssh

2.如果你是为了实时更新你的版本库,那samba可能会让你失望啦,samba只是一个单纯的用来做一个临时共享文件的仓库,还达不到版本控制器的功能。

如要使用版本控制器,推荐使用svn或者git,walfred曾经写过一篇关于git比较简单的文章,你可以参考使用git建立远程仓库,让别人git clone下来

一、在windows下访问ubuntu搭建的samba。应该是最简单不过的了。

只需使用win+R调出明令框,然后输入\\搭有samba的ubuntu机子的IP。

二、下面重点说下在ubuntu和ubuntu下共享文件。

方法1:使用smbclient

建有samba的主机肯定已经安装过samba来。其他客户机同样需要安装samba。

sudo apt-get install samba smbfs

安装ok之后,那就正式开始使用smbclient吧。

(1),列出某个IP地址所提供的共享文件夹

smbclient -L 198.168.0.1 -U username%password

(2),像FTP客户端一样使用smbclient

smbclient //192.168.0.1/tmp -U username%password

执行smbclient命令成功后,进入smbclient环境,出现提示符: smb:\>

这里有许多命令和ftp命令相似,如cd 、lcd、get、megt、put、mput等。通过这些命令,我们可以访问远程主机的共享资源。

方法2:使用mount进行挂载

除了使用smbclient,还可以通过mount和smbcount挂载远程共享文件夹

这边就需要用到你的fstype来,所以就应征来当初apt-get install smbfs是必须的。

mount -t smbfs -o username=administrator,password=123456 //192.168.0.1/tmp /mnt/tmp

smbmount //192.168.0.1/tmp /mnt/tmp -o username=administrator