samba(转)

  1. 云栖社区>
  2. 博客>
  3. 正文

samba(转)

developerguy 2014-10-17 16:28:00 浏览816
展开阅读全文

配置虚拟机和主机之间的文件共享
之所以配置虚拟机和主机之间的文件共享,是因为我们用惯了WINDOWS操作系统下的很多工具,比如编辑工具UltraEdit,souce insight等。我们可以在windows系统中编辑源码,然后在虚拟机系统下编译,下载,运行,调试。
下面我们来讲讲具体的步骤:
1.       安装samba
首先在shell下输入#rpm –qa |grep samba查看是否有下面三个文件
image
如果没有其中一个的话,就只能安装了。
在windows下把镜像文件放入虚拟光驱,虚拟机会自动挂载,然后进入/mnt/cdrom/RedHat/RPMS下输入rpm -ivh samba*.rpm就可以了。
2.       在Redhat9.0上搭建samba服务
为了操作权限方便,以ROOT用户登录Redhat,同时开启一个shell终端:
image
下面我们来共享群组可读写文件夹,假设你要共享的文件夹为: /home/zengdebiao首先创建这个文件夹
代码:
mkdir -p /home/zengdebiao
chmod 777 /home/zengdebiao 将权限调到最好。
备份并编辑smb.conf允许网络用户访问
代码:
cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
gedit /etc/samba/smb.conf
image
上面最后一行回车进入:
image
搜寻这一行文字
代码:
security = user
用下面这几行取代
代码:
security = user
username map = /etc/samba/smbusers
image
将下列几行新增到文件的最后面,假设允许访问的用户为:zengdebiao。而文件夹的共享名为 Share
代码:
[Share]
comment = Shared Folder with username and password
path = /home/zengdebiao
public = yes
writable = yes
valid users = zengdebiao
create mask = 0664
directory mask = 0775
force user = nobody
force group = nogroup
available = yes
browseable = yes
image
然后顺便把这里改一下,找到[global]把 workgroup = MSHOME 改成
代码:
workgroup = WORKGROUP
image
保存退出。
注意,这里我要特别强调一点:samba帐号并不能直接建立滴,需要先建立Linux同名的系统帐号。比如如果我们要建立一个名为zengdebiao的samba帐号,那Linux系统中必须提前存在一个同名的zengdebiao系统帐号。
现在要添加zengdebiao这个网络samba帐户。由于系统中当前没有同名的系统账户,那么我们采用如下命令先建立zengdebiao这个系统账户:
代码:  useradd zengdebiao
要注意,上面只是增加了zengdebiao这个系统用户,却没有给用户赋予本机登录密码。所以这个系统账户从本机登录不了,只能从远程通过samba账户登录。而且samba的登录密码可以和本机登录密码不一样。
下面我们新增同名的网络使用者的samba帐号:
代码:
smbpasswd -a zengdebiao
 
为了防止账户泄露,我们给samba账户zengdebiao取一个账户映射:
gedit /etc/samba/smbusers
在新建立的文件内加入下面这一行并保存
代码:
zengdebiao = markzeng
image
这样,我们就可以采用markzeng来访问对应的zengdebiao samba账户了。
如果将来需要更改zengdebiao的网络访问密码,也用这个命令更改
代码:
smbpasswd -a zengdebiao
删除网络使用者的帐号的命令把上面的 -a 改成 –x。
检查参数是否正确的命令:
testparm
重新启动smb服务:
/etc/init.d/smb restart
在Windows中点击运行输入\\192.168.1.110\,其中192.168.1.110为RedHat9.0 的IP地址:
image
这是会提示一个对话框输入samba服务器的用户名和密码。输入用户名markzeng和密码即可看到RedHat的共享文件夹了。

http://blog.chinaunix.net/uid-26913704-id-3191758.html

 

 

Samba(SMB是其缩写) 是一个网络服务器,用于Linux和Windows共享文件之用;Samba 即可以用于Windows和Linux之间的共享文件,也一样用于Linux和Linux之间的共享文件;不过对于Linux和Linux之间共享文件有更好的网络文件系统NFS,NFS也是需要架设服务器的;

大家知道在Windows 网络中的每台机器即可以是文件共享的服务器,也可以同是客户机;Samba 也一样能行,比如一台Linux的机器,如果架了Samba Server 后,它能充当共享服务器,同时也能做为客户机来访问其它网络中的Windows共享文件系统,或其它Linux的Sabmba 服务器;

我们在Windows网络中,看到共享文件功能知道,我们直接就可以把共享文件夹当做本地硬盘来使用。在Linux的中,就是通过Samba的向网络中的机器提供共享文件系统,也可以把网络中其它机器的共享挂载在本地机上使用;这在一定意义上说和FTP是不一样的。

Samba 用的netbios协议

 

Samba 两个服务器相关启动程序、客户端及服务器配置文件等;
3.1 Samba 有两个服务器,一个是smb,另一个是nmb;
smb 是Samba 的主要启动服务器,让其它机器能知道此机器共享了什么;如果不打开nmb服务器的话,只能通过IP来访问,比如在Windows的IE浏览器上打入下面的一条来访问;
\\192.168.1.5\共享目录
\\192.168.1.5\opt
而nmb是解析用的,解析了什么呢?就是把这台Linux机器所共享的工作组及在此工作组下的netbios name解析出来;

一般的情况下,在RPM包的系统,如果是用RPM包安装的Samba ,一般可以通过如下的方式来启动Samba服务器;
[root@localhost ~]# /etc/init.d/smb start
启动 SMB 服务:                                            [  确定  ]
启动 NMB 服务:                                            [  确定  ]
如果停止呢?就在smb后面加stop ;重启就是restart
[root@localhost ~]# /etc/init.d/smb stop
[root@localhost ~]# /etc/init.d/smb restart
对于所有系统来说,通用的办法就是直接运行smb 和nmb;当然您要知道smb和nmb所在的目录才行;如果是自己编译的Samba ,您应该知道您把Samba放在哪里了;
[root@localhost ~]# /usr/sbin/smbd
[root@localhost ~]# /usr/sbin/nmbd

查看服务器是否运行起来了,则用下面的命令;
[root@localhost ~]# pgrep smbd
[root@localhost ~]# pgrep nmbd
关掉Samba服务器,也可以用下面的办法,大多是通用的;要root权限来执行;
[root@localhost ~]# pkill smbd
[root@localhost ~]# pkill nmbd

 

http://www.cnblogs.com/my_life/articles/2191474.html

 

网友评论

登录后评论
0/500
评论