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

时间:2021-07-31 17:43:33

linuxSamba服务和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就是应用和端口的婚姻介绍人,双方成事了以后,媒婆就没用了。