linux文件服务器 NFS和 Samba(8)

NFS 服务器

@NFS 服务器介绍
NFS network file system 网络文件服务器
最初由SUN 公司发展起来,一种简单的文件服务器,NFS允许一个系统在网络上与他人共享目录和文件
@配置NFS 服务器
1、NFS 的配置相关文件

/etc/exports
NFS 服务的管理
service nfs start(stop,restart)
检查 NFS服务是否开机启动
chkconfig - - list nfs
检查 NFS包是否安装
rpm -qa |grep nfs
NFS 的安装
rpm -ivh /media/cdrom/RedHat/RPMS/nfs-utils-1.0.6-46.i386.rpm
rpm -ivh /media/cdrom/RedHat/RPMS/portmap-4.0-63.i386.rpm(nfs相关服务进程)

2、vi /etc/exports 编辑NFS 的服务器配置文件
在配置文件中以行为单位写入共享信息,格式如下:

directory client (option1,option2)
directory代表共享目录     client 代表授权主机       ()内的内容代表常用操作选项
操作选项
    rw 可读写权限
    ro 只读权限
    all_squash 所有用户登陆都以匿名用户身份访问
    anonuid 指定匿名用户的UID(默认以 nobody的身份登陆)
    anongid 指定匿名用户的GID(默认以 nobody的身份登陆)
    sync 数据同步写入硬盘
    async 数据先存放在内存中,不直接写入硬盘
example:
/nfs/share *(async)
将/nfs/share共享给所有人访问,默认是只读,数据不直接写入硬盘
/nfs/sh1 192.168.1.*(ro,all_squash,async)
将/nfs/sh1目录共享给 192.168.1.0 网段的客户端访问,访问时以只读,匿名用户,数据不直接写入硬盘
/nfs/sh2 192.168.1.100(rw,sync,anonuid=500,anongid=500)
将/nfs/sh2目录共享给指定 IP192.168.1.100,访问以UID和 GID500的用户的身份登陆,读写权限,数据直接写入硬盘.

3、NFS 客户端的访问
查看 NFS共享

showmount -a 在server 上应用,查看已经mount上本机 NFS共享目录的机器
showmount -e NFS服务器的 IP 地址
查看指定 NFS 服务器上的共享目录
mount 192.168.1.1:/nfs/sh2 /mnt/nf2
将 NFS服务器 192.168.1.1 上的/nfs/sh2 共享目录挂载到本机的/mnt/nf2目录下
如果指定文件系统类型
mount -t nfs 192.168.1.1:/nfs/sh2 /mnt/nf2

samba服务器

@samba服务器介绍
SMB 协议
SMB(Server MessageBlock,服务信息块)协议可以看作是局域网上的共享文件/打印机的一种协议,它可以为网络内部的其它Windows 和 Linux 机器提供文件系统、打印服务或是其他一些信息。
samba
Samba 是用来实现 SMB 的一种软件,由澳大利亚的Andew Tridgell 开发,是一种Linux(Unix)环境下运行的免费软件。Samba 整合了 SMB 协议及 Netbios协议,使其用做在 TCP/IP上。能够让Unix based的机器与 windows 互动,采用的是服务器/客户端的架构,执行Samba客户端序,我们就可以访问 Windows主机上的共享资源。而运行Samba 服务器,Windows主机也可以访问Linux 上的共享资源。

SAMBA 服务有两个进程:
    smbd:SMB服务器
    nmbd:netbios名字服务器。

smbd 为SMB 客户机,诸如 Windows 9x/NT 等提供Windows NT 和Lan Manager风格的文件和打印服务。
nmbd 提供浏览支持,使采用 Linux 操作系统的计算机用户可以融入使用netbios 协议的windows 网络。
Samba 服务能够做什么
- 在网络上共享目录,就好像一台文件服务器一样。
- 在网络上共享打印机。
- 决定每一个目录由谁来使用,可以让一个人、某些人、组和所有人访问。
- 决定打印机由谁来使用,可以让一个人、某些人、组和所有人使用。
可以看出,安装和配置好了Samba 服务器后,Linux就可以使用Windows 网络中的文件和打印服务器了。
@图形化界面配置samba 服务器
1、访问 Samba 服务器配置工具
依次单击“主菜单→系统设置→服务器设置→Samba服务器”,即可打开 Samba服务器配置窗口。
注意:
- 1.必须以root 用户身份才可以对 Samba服务器进行配置。
- 2.也可以在终端窗口输入redhat-config-samba 命令打开配置窗口。

2、进行服务器设置这里首先要对Samba 服务器的基本设置和安全选项进行配置,单击配置窗口上的“首选项→服务器设置”,即可打开服务器设置对话框(图2)。
1)基本设置

  • 在对话框的“基本”标签页,我们可以指定Linux 主机所在的工作组名称,需要注意的是,此处的工 作组 名称不一定非得与Windows主机所在的工作组名称一致。

2)安全设置
Samba 服务器安全设置,这里一共有四个选项,分别介绍如下:
A. 验证模式:如果Windows 主机不是位于 NT域里,此处应该选择“共享”验证模式,这样只有在连接Samba 服务器上的指定共享时才要求输入用户名、密码;
B. 验证服务器:对于“共享”验证模式,无须启用此项设置;
C. 加密口令:应该选择“是”,这样可以防止黑客用嗅探器截获密码明文;
D.来宾账号:当来宾用户要登录入 Samba服务器时,他们必须被映射到服务器上的某个有效用户。选择系统上的现存用户名之一作为来宾Samba 账号。当用户使用来宾账号登录入Samba服务器,他们拥有和这个用户相同的权限。
3、添加共享目录
添加共享目录,单击Samba 配置窗口工具栏上的“增加”按钮,即可打开一个添加共享对话框。
(1)在该对话框上的“基本”标签页上,指定要共享的目录为某个存在的目录,例如可以指定/tmp,再指定该目录的基本权限是只读还是读/写。
(2)在“访问”标签页上,可以指定允许所有用户访问、或者只允许某些用户访问。
4、添加 samba 共享用户
 添加用户,在首选项中选择samba 用户管理,启动Samba用户管理界面,先要选择一个 linux用户,然后在这个用户下面建立windows 登录时使用的用户和密码。使用这个windows 用户登录时自动继承linux用户的权限,默认有linux 用户的主目录的访问权限。确定后一个新用户就建立好了,添加共享目录时就可以分配每个用户的访问目录来。
5、从 Windows 访问 Samba 服务器
须启动Samba 服务。打开一个终端窗口,键入“service smb start”命令,即可出现以下提示信息,表示 Samba 服务已经启动:

# service smb start

启动 SMB 服务 [确定]
启动 NMB 服务 [确定]
@文本界面下配置samba 服务器
1、samba 相关

后台进程:smbd,nmbd
使用端口:137138139
所需 RPM包:samba,samba-common,samba-client
相关 RPM包:samba-swat
配置文件:/etc/samba/smb.conf
samba 服务的启动/停止/重启
service smb start
service smb stop
service smb restart

2、samba 主配置文件介绍
/etc/samba/smb.conf
使用[]分成几段,每段的含义

[global]:一些全局配置
[homes]:让用户可以访问其主目录
[printers]:定义共享的打印机资源

[global 段的配置

    workgroup 配置工作组
    security 安全模式,共享级别(user,share)

[homes]共享段的配置
example:

[tmp]
comment = Temporary file space 共享描述
path = /tmp 共享目录
read only = no 共享权限
browseable = yes 是否显示(隐藏共享)
public = yes 公开访问,提供给所有用户
配置共享级别的samba
example:
security = share
[share]
comment = share test
path = /media/share
read only = no
browseable = yes
public = yes
添加共享目录/media/share,共享名为share,描述为 test,开放给所有用户访问
配置用户级别的samba
example:
security = user
#smbpasswd -a jake 共享访问用户为jake
password: 共享访问密码为***

@ windows和 linux 下的共享互访
linux 访问 windows
1、使用 mount
mount windowsIP地址/共享名 本机目录 -o username=用户名
2、mount.cifs
mount.cifs windowsIP地址/共享名 本机目录 -o username=用户名
3、使用 mount 加参数 -t cifs
mount windowsIP地址/共享名 本机目录 -o username=用户名
4、使用 sambaclient

你可能感兴趣的:(linux)