samba(转)

简介: 配置虚拟机和主机之间的文件共享之所以配置虚拟机和主机之间的文件共享,是因为我们用惯了WINDOWS操作系统下的很多工具,比如编辑工具UltraEdit,souce insight等。我们可以在windows系统中编辑源码,然后在虚拟机系统下编译,下载,运行,调试。

配置虚拟机和主机之间的文件共享
之所以配置虚拟机和主机之间的文件共享,是因为我们用惯了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

 

相关文章
|
JavaScript Apache 前端开发
|
Ubuntu 网络协议 安全
|
网络协议 Ubuntu 安全
|
安全 Linux Shell
|
安全 数据库 数据安全/隐私保护
|
安全 网络协议 Linux
|
存储 Ubuntu Linux