欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

linux下Samba服务和NFS服务配置的方法

程序员文章站 2022-05-16 14:00:28
本文着重介绍linux下Samba服务和NFS服务配置... 12-10-21...
linux下samba服务和nfs服务配置
一、samba服务配置过程
samba的功能很简单,就是为了使linux和windows之间能够实现共享。并且利用samba搭建文件服务器,不仅比windows功能强大,而且访问速度快、安全。首先说明,samba服务器需要两个守护进程:smbd和nmbd。smbd进程监听139tcp端口,处理到来的smb数据包;nmbd进程监听137、138udp端口,使其他主机能浏览linux服务器。
1、安装samba服务
首先用命令测试rpm -qi samba看是否安装了samba软件包,若没有可以用yum install samba在线安装(fedora 11环境下)。
2、启动samba服务
安装完成后,使用service smb start 命令启动samba服务。如果想让samba服务开机自动加载,可使用ntsysv命令(或setup命令中的system service选项)打开开机自动加载的服务,并勾选smb,确定后即可实现开机加载samba服务。
3、关闭防火墙
  默认情况下防火墙关闭了139 tcp端口,也关闭了nmbd进程所需要的137、138端口。所以我们使用命令service iptables stop命令关闭防火墙。也可对防火墙进行修改,放行tcp139 udp 137、138端口。
4、配置samba服务
  samba服务的配置文件是 /etc/samba/smb.conf,使用vi编辑器打开vi /etc/samba/smb.conf文件,对samba进行配置
  smb.conf文件中包括4中结构,【global】、【homes】、【printers】、【userdefined_sharename】,其中:
  globa用于定义全局参数和缺省值
  homes用于用户的home目录共享
  printers用于定义打印机共享
  userdefined_sharename用于自定义共享(可有多个)
  说明:文件中开头带有“#”为说明文件,不执行。 开头带有“;”为举例文件,不执行(若想让其执行,去掉“;”)。
配置全局参数【global】
  ◎基本全局参数
  workgroup=mygroup 设置samba要加入的工作组
  server string =samba service 指定浏览列表里的机器描述
  netbios name=fedora 设置samba的netbios名字 (需要自己添加)
  client code page=936 设置客户字符编码 936为简体中文(需要自己添加)
◎日志全局参数
  log file 指定日志文件的名称
  max log size=50 指定日志文件的最大尺寸(kb)
◎安全全局参数
  security 定义samba的安装等级,share--用户不需要用户名和密码即可登陆samba服务器;user--由提供samba服务的samba服务器负责检查帐户及口令;server--检查帐户及口令的工作指定由另一台windowsnt/2000或samba服务器负责;domain--指定windowsnt/2000域控制器来验证用户帐户、密码
  encrypt passwords = yes
  smb passwd file = /etc/samba/smbpasswd
  这两行用于设定是否对samba密码进行加密,并指定加密文件存放路径.
◎配置自定义共享
  自定义共享,只需在文件最后加入【share】,名字随便取。其中一的参数我们来依依介绍
  comment 描述该共享的名称
  path 定义该共享的目录
  browseable 指定共享的目录是否可浏览
  writable 指定共享的目录是否有写入权限
  read only 指定共享的目录为只读权限
  public 指定是否可以允许guest帐户访问
  guest ok 通public相同,yes为允许guest访问
  only guest 指定只有guest用户可以访问
  calid users 指定访问该共享的用户
如:comment =my share
path =/home/share
browseable =yes
read only =yes
public =yes
only guest =yes
◎配置完成后的工作
  在配置完成后,我们只需新建path定义的共享目录mkdir /home/share,
并使用chmod命令设置了其权限为777,chmod 777 /home/share。
  这样在service smb restart重启smb服务后客户端就可以访问该服务器(我修改了全局参数中的security=share,所以进入服务器不需要输入用户名和密码)。在windows下运行中运行://192.168.1.6(linux的ip地址)即可。
二、nfs服务配置过程
1、nfs服务器的安装
检查linux系统中是否安装了nfs-utils和portmap两个软件包,#rpm –q nfs-utils(portmap)
2、查看nfs服务器是否启动
#service nfs status
#service portmap status
如果服务器没有启动,则开启服务(默认服务下nfs没有完全开启)
#service nfs start
#service portmap start
也可以在ntsysv命令下关闭iptable和开启nfs让其自启动。
3、指定nfs服务器的配置文件
nfs服务器的配置文件保存“/etc/”目录中,文件名称是“exports”,该文件用于被指nfs服务器提供的目录共享
#vi /etc/exports
配置“exports”文件格式如下
/tftpboot *(sync,ro)
tftp:共享目录名
* 表示所有主机
(sync,ro) 设置选项
exports文件中的“配置选项”字段放置在括号对(“( )”)中 ,多个选项间用逗号分隔
sync:设置nfs服务器同步写磁盘,这样不会轻易丢失数据,建议所有的nfs共享目录都使用该选项
ro:设置输出的共享目录只读,与rw不能共同使用
rw:设置输出的共享目录可读写,与ro不能共同使用
4、重新输出共享目录
exportfs管理工具可以对“exports”文件进行管理
#exportfs –rv 可以让新设置的“exports”文件内容生效
显示当前主机中nfs服务器的输出列表
# showmount -e
显示当前主机nfs服务器中已经被nfs客户机挂载使用的共享目录
# showmount -d
5、使用mount命令挂载nfs文件系统
#mount 192.168.1.6:/tftpboot /home/share
将主机ip地址为192.168.1.6中的/tftpboot目录挂载到/home/share
卸载系统中已挂载的nfs共享目录
# umount /home/share
卸载的时候不能在/home/share目录下卸载,必须注销系统后卸载。
ps:
如果portmap进程停止了运行或异常终止,那么该系统上的所有rpc服务器必须重新启动。首先停止nfs服务器上的所有nfs服务进程,然后启动portmap进程,再启动服务器上的nfs进程。
但portmap只在第一次建立连接的时候起作用,帮助网络应用程序找到正确的通讯端口,但是一旦这个双方正确连接,端口和应用就绑定,portmap也就不起作用了。但对其他任何第一次需要找到端口建立通讯的应用仍然有用。简单的说,portmap就是应用和端口的婚姻介绍人,双方成事了以后,媒婆就没用了。