第四天(11月29日)
第四天的主要内容是搭建SMB、NFS、NTP、iSCSI存储服务器,除了NTP服务器之外,其余都是RHCE的考试内容。
1、配置samba服务
samba服务主要用于Linux和Windows系统之间的文件共享。
例:通过SMB共享/common目录。
首先安装并启用服务。
# yum install samba
这里安装的是samba的服务端软件,samba的客户端软件samba-client默认已经安装。
启动smb服务:
# service smb start
将smb服务设为开机自动运行:
# chkconfig smb on
创建共享目录:
# mkdir /common
Linux系统用户是不能直接访问samba的,必须为用户设置smb密码以后才可以访问。下面为系统中已有的mike用户设置smb密码:
# smbpasswd -a mike
-a选项意味着将mike添加为samba用户,如果mike已经是samba用户,想要修改mike的smb密码,则不用加-a选项,如“smbpasswd mike”。
编辑samba的主配置文件/etc/samba/smb.conf:
# vim /etc/samba/smb.conf
配置文件中的主要部分:
workgroup = STAFF 用于修改工作组的名字,即在Windows系统中看到的smb共享属于STAFF工作组。
hosts allow = 192.168.0 只有192.168.0.0/24网段的计算机可以访问共享。
security = user 访问samba服务器时必须输入用户名和密码,若将该项的值改为share,则可以无密码访问。
[homes]部分用于设置用户的主目录,即用mike用户访问samba服务时,默认会看到自己的主目录,如果希望用户只能访问公共目录,可以将这一部分前面加“#”注释掉。
同理,[printers]部分用于设置用户能否访问共享打印机,建议也将这部分注释掉。
在文档的最后增加下面的部分,用于设置公共目录common:
[common],共享名。
commnet,注释。
path = /common 指定公共目录的路径
public = yes 允许所有人访问(只要是smb用户就可以)
writeable = yes 允许用户写入
保存退出,重启smb服务:
# service smb restart
此时在Windows系统中通过UNC路径“\\192.168.0.114”就可以访问smb共享了。
如果在Linux系统中要查看samba共享,可以执行下面的命令:
# smbclient -L 192.168.0.114 -U mike
访问共享可以执行下面的命令:
# smbclient //192.168.0.114/common -U mike
更常用的用法是将samba共享挂载到本机的一个目录上:
# mount //192.168.0.114/common /samba -o username=mike
至此,samba共享的操作就基本完成了,但是要注意,上面的操作都是在SELinux已经关闭的前提下完成的,如果启用SELinux,则操作将无法完成,所以这里仍然需要更改共享目录/common的上下文和布尔值。
在配置文件/etc/samba/smb.conf中的“SELINUX NOTES:”部分已经介绍了SELinux上下文和布尔值的修改方法:
首先查看一下/common目录的上下文:
[root@localhost ~]# ls -ldZ /common
drwxrwxrwx. root root unconfined_u:object_r:default_t:s0 /common
按照配置文件中的提示修改/common目录的上下文,这样客户端就可以正常访问/common目录了:
[root@localhost ~]# chcon -t samba_share_t /common
如果要允许客户端能够向/common目录中写入,还必须要开启相应的布尔值:
[root@localhost ~]# setsebool -P samba_export_all_rw on
至此,samba的配置才算是真正结束了。
2、配置nfs服务
nfs服务主要用于Linux系统主机之间的共享,在企业中应用非常广泛。
nfs默认已经安装,可以直接启动。
# service nfs start
# chkconfig nfs on
修改配置文件/etc/exports:
# vim /etc/exports (这个文件是空文件,建议用tab补全的方式写文件名)
增加下面的一行:
/common 192.168.0.0/24(sync,rw)
保存退出。这一行中项目的含义:
/common 指定要共享的目录
192.168.0.0/24 允许访问共享的网段,如果允许所有客户端访问,可以用“*”。
sync 设置NFS服务器同步写磁盘,这样不会轻易丢失数据,建议所有的NFS共享目录都使用该选项。
rw 设置输出的共享目录可读写,ro表示只读。
重启服务:
service nfs restart
在本机进行验证:
[root@localhost ~]# showmount -e 192.168.0.114
Export list for 192.168.0.114:
/common 192.168.0.0/24
在客户端利用autofs进行验证:
# cd /net
# cd 192.168.0.114
# ls
common
验证成功,操作完成。
3、配置ntp服务
NTP,Network Time Service,网络时间服务,用于同步时间,便于日志的统一性。
ntp服务默认已经安装,只需直接启动服务。
# service ntpd start
# chkconfig ntpd on
下面修改配置文件,这里配置非常简单,只需增加一行指定上级ntp服务器即可。这里将192.168.0.254指定为上级ntp服务器:
# vim /etc/ntp.conf
server 192.168.0.254
如果要把当前主机设为网络中的根ntp服务器,只需将server后面的IP设为本机IP即可。
保存退出,重启ntp服务:
# service ntpd restart
执行“ntpq –p”命令可以查看同步情况:
[root@desktop3 ~]# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
instructor.exam LOCAL(0) 11 u 1 64 7 1.045 16.594 9.412
4、配置iSCSI存储服务
数据分操作系统数据和应用程序数据,需要集中存储和备份的主要是应用程序数据。
服务器和存储设备相连有三种方式:DAS、NAS、SAN。
DAS,直连存储,将存储设备直接连接到服务器上,速度快,但是传输距离有限。
NAS,网络附加存储,将存储设备独立出来,存储设备与服务器之间通过交换机相连,解决了传输距离的问题,但效率太低,因为数据通过TCP/IP协议传输,而且普通交换机性能较差。SAMBA以及NFS都属于这种形式。
SAN,存储区域网络,将存储设备和服务器之间用光交换机相连,所有数据通过光纤传输,传输协议使用SCSI协议,速度快,距离远,但是价格昂贵。
iSCSI又称为IP-SAN,是一种基于IP网络的SAN存储,把原来只用于本机的SCSI协议通过TCP/IP网络传送,性能较之NAS要好得多,价格相比SAN要便宜近2/3。
例:连接iSCSI存储服务器。
在网络中已经存在一台iSCSI服务器(IP:192.168.0.254),通过标准端口(3260)提供了一个标准的iSCSI块设备,在客户机上连接此设备,并完成如下要求:
(1)在iSCSI设备上创建一个大小为30MB的分区,并格式化为ext4文件系统,将分区挂载到/mnt/data。
(2)此文件系统在系统启动时自动挂载。
操作过程:
在RHCE考试中,不考察如何搭建iSCSI服务器,只考如何在客户端连接iSCSI服务器上的存储设备。
首先要安装iSCSI管理软件iscsi-initiator-utils:
# yum install iscsi*
iSCSI的管理命令是iscsiadm,该命令的用法过于复杂,所以建议查阅帮助手册,从中复制命令后再进行适当修改。
# man iscsiadm
使用iSCSI的过程可以分为4步:发现(Discover)、登录(Login)、退出(Logout)、删除(Delete)。这里我们只进行前2步即可,分别执行EXAMPLES中的“Discover”和“Login”下面的命令:
首先发现iSCSI设备:
[root@localhost ~]# iscsiadm --mode discoverydb --type sendtargets --portal 192.168.0.254 --discover
192.168.0.254:3260,1 iqn.2010-09.com.example:rdisks.server14
要记住发现的iqn号“iqn.2010-09.com.example:rdisks.server14”。
然后登录,注意把iqn号和服务器的IP地址改过来:
[root@localhost ~]# iscsiadm --mode node --targetname iqn.2010-09.com.example:rdisks.server14 --portal 192.168.0.254:3260 --login
Logging in to [iface: default, target: iqn.2010-09.com.example:rdisks.server14, portal: 192.168.0.254,3260] (multiple)
Login to [iface: default, target: iqn.2010-09.com.example:rdisks.server14, portal: 192.168.0.254,3260] successful.
提示成功登录,此时可以看到iSCSI存储设备,设备名为/dev/sdb:
# fdisk -l
Disk /dev/sdb: 33 MB, 33554432 bytes
2 heads, 32 sectors/track, 1024 cylinders
Units = cylinders of 64 * 512 = 32768 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
下面用fdisk命令将/dev/sdb分出1个分区,分区设备名为/dev/sdb1,分区的过程就不记录了。
将分区格式化:
# mkfs -t ext4 /dev/sdb1
挂载分区:
# mount /dev/sdb1 /mnt/data
最后修改/etc/fstab文件实现永久挂载:
# vim /etc/fstab
在文件中添加最下面的那一行,注意在选项部分要写成“_netdev”,表示系统启动时要等到网络准备好再挂载。
操作至此完成。