一.NFS配置
网络文件系统(NFS,NetworkFileSystem),主要用于Linux系统之间的文件共享。
1.1Linux服务器端NFS服务器的配置
以root身份登陆Linux服务器,编辑/etc目录下的共享目录配置文件exports,指定共享目录及权限等。
#vi/etc/exports
/tmp *(rw,no_root_squash)
/home/public 192.168.0.*(rw) *(ro)--这里是对同一个目录分配2个不同的网段
/home/test 192.168.0.100(rw)
/home/linux *.the9.com(rw,all_squash,anonuid=40,anongid=40)
/home/work 192.168.0.*(rw,sync,no_root_squash)
内容表示:允许ip地址范围在192.168.0.*的计算机以读写的权限来访问/home/work目录。
括号内的参数意义描述如下:
rw:可读写的权限;
ro:只读的权限;
sync:资料同步写入存储器中。
async:资料会先暂时存放在内存中,不会立即写入硬盘。
no_root_squash:登入NFS主机使用分享目录的使用者,如果是root的话,那么对于这个分享的目录来说,他就具有root的权限。这个项目极不安全,不建议使用
root_squash:在登入NFS主机使用分享之目录的使用者如果是root时,那么这个使用者的权限将被压缩成为匿名使用者,通常他的UID与GID都会变成nobody那个系统账号的身份。
all_squash:不管登陆NFS主机的用户是什么都会被重新设定为nobody。
anonuid:自行指定UID,这个UID必须存在于/etc/passwd中,一般来说这个UID是一个匿名账户
anongid:同anonuid
insecure:允许从这台机器过来的非授权访问
更多的权限说明:manexports
接着启动端口映射(redhat中默认自启动):
[root@localhost~]#serviceportmapstart
或
[root@localhost~]#/etc/rc.d/init.d/portmapstart
最后启动NFS服务,此时NFS会激活守护进程,然后就开始监听Client端的请求:
[root@localhost~]#/etc/rc.d/init.d/nfsstart
或
[root@localhost~]#servicenfsstart
要注意的一点:在NFS服务器启动后,最好检查Linux服务器的防火墙等设置(一般需要关闭防火墙服务),确保没有屏蔽掉NFS使用的端口和允许通信的主机,主要是检查Linux服务器iptables,ipchains等选项的设置,以及/etc/hosts.deny,/etc/hosts.allow文件。
我们自己做一个回环测试,即在服务器上挂我们共享的文件,如果能挂上,就ok了:
#mount–tnfs192.168.0.20:/home/work/mnt
#ls/mnt
Exportfs命令:
/usr/sbin/exports,可以用来重新共享变更的目录或者卸载目录。如果我们在启动了NFS之后又修改了/etc/exports,这个时候我们就可以用exportfs命令来使改动立刻生效,该命令格式如下:
exportfs[-aruv]
-a:全部挂载/etc/exports文件内的设置
-r:重新挂载/etc/exports的设置
-u:卸载某一目录
-v:把执行过程显示在屏幕上
[root@localhost~]#exportfs-rv--全部重新export一次
exporting192.168.0.100:/home/test
exporting192.168.0.*:/home/public
exporting*:/home/public
[root@localhost~]#exportfs-au--全部都卸载。
1.2嵌入式目标系统NFS客户端的配置
在Linux服务器设置好后,还需要对客户端进行相关配置。在嵌入式目标系统的LinuxShell下,执行如下命令来进行NFS共享目录挂载:
mount-tnfshostname(orIP):/directory/mount/point
具体例子:
Linux:mount-tnfs192.168.0.1:/home/work/mnt/nfs-onolock
Solaris:mount-Fnfs192.168.0.1:/home/work/mnt/nfs-onolock
MountNFS的其它可选参数:
Hardmount:NFSCLIENT会不断的尝试与SERVER的连接(在后台,不会给出任何提示信息,在LINUX下有的版本仍然会给出一些提示),直到MOUNT上。
Softmount: 会在前台尝试与SERVER的连接,是默认的连接方式。当收到错误信息后终止mount尝试,并给出相关信息。
例如:mount-Fnfs-ohard192.168.0.10:/nfs/nfs
对于到底是使用hard还是soft的问题,这主要取决于你访问什么信息有关。例如你是想通过NFS来运行XPROGRAM的话,你绝对不会希望由于一些意外的情况(如网络速度一下子变的很慢,插拔了一下网卡插头等)而使系统输出大量的错误信息,如果此时你用的是HARD方式的话,系统就会等待,直到能够重新与NFSSERVER建立连接传输信息。另外如果是非关键数据的话也可以使用SOFT方式,如FTP数据等,这样在远程机器暂时连接不上或关闭时就不会挂起你的会话过程。
rsize和wsize:文件传输尺寸设定:V3没有限定传输尺寸,V2最多只能设定为8k,可以使用-rsizeand-wsize来进行设定。这两个参数的设定对于NFS的执行效能有较大的影响
bg:在执行mount时如果无法顺利mount上时,系统会将mount的操作转移到后台并继续尝试mount,直到mount成功为止。(通常在设定/etc/fstab文件时都应该使用bg,以避免可能的mount不上而影响启动速度)
fg:和bg正好相反,是默认的参数
nfsvers=n:设定要使用的NFS版本,默认是使用2,这个选项的设定还要取决于server端是否支持NFSVER3
mountport:设定mount的端口
port:根据server端export出的端口设定,例如如果server使用5555端口输出NFS,那客户端就需要使用这个参数进行同样的设定
timeo=n:设置超时时间,当数据传输遇到问题时,会根据这个参数尝试进行重新传输。默认值是7/10妙(0.7秒)。如果网络连接不是很稳定的话就要加大这个数值,并且推荐使用HARDMOUNT方式,同时最好也加上INTR参数,这样你就可以终止任何挂起的文件访问。
Intr:允许通知中断一个NFS调用。当服务器没有应答需要放弃的时候有用处。
udp:使用udp作为nfs的传输协议(NFSV2只支持UDP)
tcp:使用tcp作为nfs的传输协议
namlen=n:设定远程服务器所允许的最长文件名。这个值的默认是255
acregmin=n:设定最小的在文件更新之前cache时间,默认是3
acregmax=n:设定最大的在文件更新之前cache时间,默认是60
acdirmin=n:设定最小的在目录更新之前cache时间,默认是30
acdirmax=n:设定最大的在目录更新之前cache时间,默认是60
actimeo=n:将acregmin、acregmax、acdirmin、acdirmax设定为同一个数值,默认是没有启用。
retry=n:设定当网络传输出现故障的时候,尝试重新连接多少时间后不再尝试。默认的数值是10000minutes
noac:关闭cache机制。
同时使用多个参数的方法:mount-tnfs-otimeo=3,udp,hard192.168.0.30:/tmp/nfs
注意:NFS客户机和服务器的选项并不一定完全相同,而且有的时候会有冲突。比如说服务器以只读的方式导出,客户端却以可写的方式mount,虽然可以成功mount上,但尝试写入的时候就会发生错误。一般服务器和客户端配置冲突的时候,会以服务器的配置为准。
ShowMount命令:
/usr/sbin/showmount:用在客户端查看服务器所共享的文件资源,对于NFS的操作和查错有很大的帮助。该命令有2个参数:
-a:这个参数是一般在NFSSERVER上使用,是用来显示已经mount上本机nfs目录的cline机器。
-e:显示指定的NFSSERVER上export出来的目录。
例如:
showmount-e192.168.0.30
1.3设置开机自动挂载
如果我们手动mount了NFS共享的文件,那么在我们重启之后,挂载点就失效了,需要重新进行挂载。我们可以在/etc/fstab文件里添加相关信息,让系统在开机时,自动挂载。
[root@localhost~]#more/etc/fstab
#Thisfileiseditedbyfstab-sync-see'manfstab-sync'fordetails
LABEL=//ext3defaults11
none/dev/ptsdevptsgid=5,mode=62000
none/dev/shmtmpfsdefaults00
none/procprocdefaults00
none/syssysfsdefaults00
LABEL=SWAP-sda2swapswapdefaults00
/dev/hdc/media/cdromautopamconsole,exec,noauto,managed00
/etc/fstab的格式如下:
fs_spec fs_file fs_type fs_options fs_dump fs_pass
参数解释:
fs_spec:该字段定义希望加载的文件系统所在的设备或远程文件系统,对于nfs这个参数一般设置为这样:192.168.0.1:/NFS
fs_file:本地的挂载点
fs_type:对于NFS来说这个字段只要设置成nfs就可以了
fs_options:挂载的参数,可以使用的参数可以参考上面的mount参数。
fs_dump:该选项被"dump"命令使用来检查一个文件系统应该以多快频率进行转储,若不需要转储就设置该字段为0
fs_pass:该字段被fsck命令用来决定在启动时需要被扫描的文件系统的顺序,根文件系统"/"对应该字段的值应该为1,其他文件系统应该为2。若该文件系统无需在启动时扫描则设置该字段为0。
1.4其他的几个命令:
nfsstat:查看NFS的运行状态,对于调整NFS的运行有很大帮助
rpcinfo:查看rpc执行信息,可以用于检测rpc运行情况的工具。
/var/lib/nfs/*tab: NFS日志文件,etab,主要记录NFS共享出来的目录的完整权限设置值等,xtab,记录曾经连接此NFS主机的相关客户端数据
二.SAMBA配置
Samba主要用于Windows和Linux之间的文件共享。Samba的配置比较多,下面从实用的角度做一些简单的说明。
2.1安装samba
一般的Linux都会安装samba程序,如果没有安装,可以去samba的官网下载安装软件,自己进行安装。网站地址:http://www.samba.org/
2.2简单说明
Samba有两个守护进程:smbd和nmbd,它们是Samba的核心进程。
nmbd进程使其他计算机浏览Linux服务器.
Smbd进程在SMB服务请求到达时对它们进行处理,并且为使用或共享的资源进行协调.
Samba的的配置文件信息写在:/etc/samba/smb.conf文件中,如果我们要共享某些文件夹,可以在这个文件里添加相关的内容,在重启一下samba服务即可。先看一下文件的内容:
[root@localhost~]#more/etc/samba/smb.conf
......中间是一些其他的配置,我们就不看了,我们看最后一个配置....
#============================ShareDefinitions==============================
idmapuid=16777216-33554431
idmapgid=16777216-33554431
templateshell=/bin/false
winbindusedefaultdomain=no
[homes]
comment=HomeDirectories
browseable=no
writable=yes
;validusers=%S
;validusers=MYDOMAIN/%S
[printers]
comment=AllPrinters
path=/var/spool/samba
browseable=no
guestok=no
writable=no
printable=yes
#Un-commentthefollowingandcreatethenetlogondirectoryforDomainLogons
;[netlogon]
;comment=NetworkLogonService
;path=/var/lib/samba/netlogon
;guestok=yes
;writable=no
;sharemodes=no
#Un-commentthefollowingtoprovideaspecificrovingprofileshare
#thedefaultistousetheuser'shomedirectory
;[Profiles]
;path=/var/lib/samba/profiles
;browseable=no
;guestok=yes
#Apubliclyaccessibledirectory,butreadonly,exceptforpeoplein
#the"staff"group
;[public]
;comment=PublicStuff
;path=/home/samba
;public=yes
;writable=yes
;printable=no
;writelist=+staff
这段是关于添加共享的一些配置。
重启Samba服务
[root@localhostoracle]#/etc/rc.d/init.d/smbrestart
或
[root@localhostoracle]#servicesmbrestart
2.32个实例
2.3.1windows访问Linux共享
在samba的配置文件(/etc/samba/smb.conf)里添加/u01的共享。把如下代码添加到sbm.conf就可以了:
[global]
workgroup=DAVIDDAI--这个自己随便写
sercurity=share--这里要注意,因为默认是USER
[public]--这个是设置的共享名,如果写其他的,你看到的共享名就是其他的
path=/u01
public=yes
writable=yes
guestok=yes
browseable=yes
重启Samba服务:
[root@localhostoracle]#servicesmbrestart
ShuttingdownSMBservices:[OK]
ShuttingdownNMBservices:[OK]
StartingSMBservices:[OK]
StartingNMBservices:[OK]
最后在window平台下输入://IP,如//192.168.1.21就可以访问Linux的共享内容了,并且还具有写的权限。
这里为了方便,没有按用户来进行设置,如果按用户的话要麻烦一点。所以安全性也比较差。
2.3.2Linux访问window的共享资源
这个配置就比较简单。只有2步:
(1)在window下共享某个目录,如Software,这个都是界面操作,就不多说了。
(2)在linux下挂载这个目录
#mount-ousername=administrator,password=12345678//192.168.1.81/Software/mnt
或者
#mount-tsmbfs-ousername=administrator,password=12345678//192.168.1.81/Software/mnt
mount-tsmbfs-ousername=administrator,password=bailing520//192.168.1.81/Software/mnt
挂载成功就就可以在/mnt目录下查看window共享的内容了。
------------------------------------------------------------------------------
Blog:http://blog.csdn.net/tianlesoftware
网上资源:http://tianlesoftware.download.csdn.net
相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
DBA1群:62697716(满);DBA2群:62697977
DBA3群:63306533;聊天群:40132017
<!--EndFragment-->
分享到:
相关推荐
..
..
SAMBA主要的目的就是替换早期NFS服务,SAMBA服务不光是可以在UNIX,LINUX之间共享资 源,还可以与微软产品之间共享资源,主要的好处是它可以出现在微软的网络邻居上面,可以通过访问微软产品的方式访问UNIX和LINUX服务器...
1、samba服务器 Windows与Linux文件共享 (主局域网) 1.1samba服务器介绍 1.2samba服务的启动和进程 1.3Samba 配置 1.4samba服务器端常用命令 1.5Samba应用示例一:linux用户在window端访问宿主目录 1.6Samba应用...
为了实现windows 和 Linux以及其它操作系统之间的资源共享,软件商推出nfs 和samba两种解决方案。因为市场上缺乏象pc-nfs那样的client工具,使得Linux和windows的资源共享变得复杂。Samba的出现攻克了 这一问题,...
不过对于Linux和Linux之间共享文件有更好的网络文件系统NFS,NFS也是需要架设服务器的; 大家知道在Windows 网络中的每台机器即可以是文件共享的服务器,也可以同是客户机;Samba 也一样能行,比如一台Linux的机器...
Linux现有比较成熟的解决方案有两种,一种是NFS远程挂载,另一种是Samba共享目录。 4、其他说明: 目录的挂载于共享是基于RPC协议进行的,所以B服务器作为挂载方,也应同时具备RPC的应用功能,所以也应同时安装对应...
Linux找到微软,也想把该协议用在window和Linux的文件共享上,可微软没有同意,于是Linux通过逆向方法实现了SMB协议,为了与SMB区分并将其取名为SAMBA协议。 ...
一、NFS的安装与配置 共享/nfs/a1, 使192.168.28.0/...共享目录/samba/b2,仅用户bys和组gd成员可以访问,仅bys有可写的权限; 共享目录/samba/b3,任何人可以读写,但不同的用户只能访问创建的文件夹。 三、DHCP的使用
不过对于Linux和Linux之间共享文件有更好的网络文件系统NFS,NFS也是需要架设服务器的; 大家知道在Windows 网络中的每台机器即可以是文件共享的服务器,也可以同是客户机;Samba 也一样能行,比如一台Linux的机器...
Samba最大的功能就是可以用于Linux与windows系统直接的文件共享和打印共享,Samba既可以用于windows与Linux之间的文件共享,也可以用于Linux与Linux之间的资源共享,由于NFS(网络文件系统)可以很好的完成Linux与...
02-CentOS7-搭建Samba文件共享服务器,完成 Linux 与 windows 之间的共享;Linux 与 Linux 之间的共享 NFS;
Samba 即可以用于Windows和Linux之间的共享文件,也一样用于Linux和Linux之间的共享文件;不过对于Linux和Linux之间共享文件有更好的网络文件系统NFS,NFS也是需要架设服务器的; 大家知道在Windows 网络中的每台...
本书详细介绍如何在个人电脑上安装配置Caldera和Red Hat两种发行版本的Linux操作系统,并能帮助用户解决安装和配置过程中出现的各种问题。本书既能指导你进行基本的安装步骤,也能指导你定制独具特色的Linux 操作...
Linux三大共享文件的方法 Samba、NFS (Network File Service)、tftp
2.5.1 Linux客户端访问Samba共享 2.5.2 Windows客户端访问Samba共享 2.6 Samba的打印共享 2.7 Samba企业实战与应用 2.7.1 企业环境及需求 2.7.2 需求分析 2.7.3 解决方案 2.8 Samba排错 2.9 本章习题 2.10 smb.conf...
全书内容包括Linux概述、Linux安装、Linux基本配置、桌面环境基本操作、Shell基本命令、文件和目录管理、软件包管理、磁盘管理、用户与用户组管理、进程管理、网络配置、浏览网页、收发邮件、文件传输和共享、远程...
全书内容包括Linux概述、Linux安装、Linux基本配置、桌面环境基本操作、Shell基本命令、文件和目录管理、软件包管理、磁盘管理、用户与用户组管理、进程管理、网络配置、浏览网页、收发邮件、文件传输和共享、远程...
windows与windows之间,windows与linux之间进行文件共享是一个非常重要的应用,以往都用samba服务或者第三方的nfs软件,现在win2008上自带nfs功能,本文详细介绍nfs的配置。