今天walfred做了件比较挫的事情,现在想想还是蛮好笑的,当初在redhat上建samba的时候,熟的连配置文件(smb.conf)都不需要参考就可以直接更改,可今天在ubuntu下就不行了。好在网络时代的友好,搜索引擎总是能帮你很多,但零7零8的,还需要我好好补上这么一记了。待看完这篇文章,你就知道我为什么这么yd的笑而不语了。
这篇文章首先教会你如何在ubuntu下,创建samba服务器。下一篇 ubuntu创建samba服务器,实现不同系统之间的互访(二)将会介绍通过不同的方法实现不同系统之间的互访。
有了apt-get这玩意,事情总会解决的很快;
1、既然这么说,那首先是得安装上samba啦,
sudo apt-get install samba smbfs
看到安装samba还知道是怎么回事,但是后面这个smbfs是神马东西呢,你先甭管,下篇文章我会眷顾她的。
2、创建一个文件夹用来收尸,嘿嘿,逗你玩呢,这个文件夹就是传说中的用来共享、传递、读写文件内容的地方,我这边是个例子,大家对号入座就行。
mkdir -p ~/share
chmod 777 ~/share
这里假设你的共享文件夹是在用户主目录下的share目录。
3、对samba的配置文件进行动刀啦,不要怕,但是如果你确实感到有那么一点点害怕,那你对配置文件做个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
(2)同样请搜寻到[global]把
workgroup = MSHOME 改成
workgroup = WORKGROUP
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936
utf-8web大侠应该认识它吧,对就是防止出现中文目录乱码的情况。
(3)接着请跳到配置文件下的最后一行(命令模式下,按G)将下列几行新增到文件的最后面,假设允许访问的用户为:huyi。而文件夹的共享名为第二步设置的~/share:
[Share]
comment = Shared Folder with username and password
path = ~/share
public = yes
writable = yes
valid users = huyi
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
available = yes
browseable = yes
(4)现在要添加huyi这个网络访问帐户。如果系统中当前没有这个帐户,那么注意这边的用户添加请使用下述命令:(假设用户为huyi,密码为123456)
sudo useradd huyi
要注意,上面只是增加了huyi这个用户,却没有给用户赋予本机登录密码。所以这个用户将只能从远程访问,不能从本机登录。而且samba的登录密码可以和本机登录密码不一样。
现在要新增网络使用者的帐号:
sudo smbpasswd -a huyi
sudo vim /etc/samba/smbusers
在新建立的文件内加入下面这一行并保存
huyi = "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
起来了吗,那就享受吧,今天就写到这,明天会继续 ubuntu创建samba服务器,实现不同系统之间的互访 二。
将主要介绍xp访问ubuntu,以及ubuntu访问ubuntu。呵呵,这里需要首尾呼应了,说办了件挫事就是ubuntu下,我搭了半天给别人用,又是smbclient又是mount的,最后还不如使用ssh的scp来的快。
上一篇文章ubuntu创建samba服务器,实现不同系统之间的互访(一)已经教会你如何在ubuntu下建立samba服务器,这里假设你已经阅读过上篇文章。
本文将会告诉你如何在不同系统之间互访samba。
说在前面:
1.如果你只是为了拷贝东西,那我说没有必要去建这么复杂,你完全可以使用ssh。
关于ssh你可以查看这篇文章: Ubuntu SSH的使用
说白了,就是两条命令:
sudo apt-get install ssh
scp 目标机机IP:文件目录 目的机IP
2.如果你是为了实时更新你的版本库,那samba可能会让你失望啦,samba只是一个单纯的用来做一个临时共享文件的仓库,还达不到版本控制器的功能。
如要使用版本控制器,推荐使用svn或者git,walfred曾经写过一篇关于git比较简单的文章,你可以参考 使用git建立远程仓库,让别人git clone下来
进入正题:
一。在windows下访问ubuntu搭建的samba。应该是最简单不过的了。
\\搭有samba的ubuntu机子的IP,enter之后你就一目了然了。
二。下面重点说下在ubuntu和ubuntu下共享文件。
如果没有上述两点的羁绊,那我们就来认真学习如何在ubuntu和ubuntu下共享samba服务器。
方法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
smb:\>
这里有许多命令和ftp命令相似,如cd 、lcd、get、megt、put、mput等。通过这些命令,我们可以访问远程主机的共享资源。
方法2:使用mount进行挂载
除了使用smbclient,还可以通过mount和smbcount挂载远程共享文件夹
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