[RHEL5企业级Linux服务攻略]--第1季 Linux服务器的搭建与测试

简介:
1 Red Hat Enterprise Linux 5 的安装
安装Red Hat Linux的硬件要求如下,一般现在的电脑配置都可以满足这些要求了哈: 
CPU Pentium以上处理器。文本模式推荐配置:200MHz奔腾或更高,图形模式推荐配置:400MHz奔腾II或更高。 
内存:文本模式最小内存值128MB,图形模式最小内存值:192MB,推荐使用256MB以上的内存。 
硬盘:RHEL5安装需要3GB以上的硬盘空间,完全安装全部软件包需大约5GB的硬盘空间。 
显卡:VGA兼容显卡。 
光驱:CD-ROM/DVD-ROM。 
其他设备:如声卡、网卡和Modem等。 
软驱:可选
Red Hat网站提供了经过兼容性测试和认证的“硬件兼容性列表”,在得到系统硬件设备的具体型号后,最好访问 [url]http://bugzilla.redhat.com/hwcert/[/url]来查看用户的配置是否在清单之中 
image 
Linux 支持在一台计算机中安装多个操作系统,它通过使用GRUB多重启动管理器来支持多操作系统并存,GRUB可以引导FreeBSD、OpenBSD、DOS 和Windows等操作系统。计算机启动时,用户可以使用GRUB提供的菜单选择需要启动的系统,所以不必担心出现安装了Linux后,导致其他操作系统不能使用的问题。
Redhat支持不同的安装方式(如光盘安装、硬盘安装及网络安装),我们首先以最基本、最常用的光盘安装开始哈。有关Linux介绍及Redhat5.1基础可以参考 【51CTO_RHCE讲座】RHCE课程笔记专题。
不可与root分区分开的目录: /dev,/etc,/sbin,/bin,/lib,系统启动时,核心只载入一个分区,那就是/,核心启动要加载/dev,/etc,/sbin,/bin,/lib五个目录的程序,所以以上几个目录必须和/根目录在一起。 
最好单独分区的目录: /home,/usr,/var,/tmp,出于安全和管理的目的,以上四个目录最好要独立出来,比如在samba服务中,/home目录我们可以配置磁盘配额quota。
我们以40G硬盘为例: 
/boot 100MB 
/         10GB 
swap  512MB 
/home 10GB 
/usr     8GB 
/var     5GB 
/tmp    3G
1.1 Red Hat Enterprise Linux 5光盘安装
这样我们就到了RHEL5安装界面,点回车是以图形截面安装,输入linux text是用CLI安装 .
image
这里我们选语言为简体中文。
image
按OK
image
这里选美式键盘US
image
这里可以输入RHEL5.1的序列号,也可以跳过不填,对安装应用没关系。 
RHEL 5安装序列号哈 
Server: 
* Red Hat Enterprise Linux (Server including virtualization): 
2515dd4e215225dd  
* Red Hat Enterprise Linux Virtualization Platform: 
49af89414d147589 
Client: 
* Red Hat Enterprise Linux Desktop: 
660266e267419c67  
* Red Hat Enterprise Linux Desktop + Workstation Option: 
da3122afdb7edd23  
*Red Hat Enterprise Linux Desktop + Workstation + DualOS Option 
(Virtualization): 
7fcc43557e9bbc42 
*Red Hat Enterprise Linux Desktop + DualOS Option (Virtualization): 
fed67649ff918c77
image
提示要初始化硬盘,选YES继续。
image
这里分区我们选择自定义
image
我们进行硬盘分区: 
New     就是建立新的分区 
EDIT    就是更改已有的分区 
DELETE  就是删除已建立的分区 
RESET   就是把你刚才的设定全部取消。恢复到现在的样子 
RAID    是磁盘阵列 
LVM     是逻辑卷
image
/boot 100MB, 记住,boot需要放在磁盘的第一个分区上,怎么看是不是在第一个分区上?看开始的块是不是1
image
/ 根目录 10G
image
swap 512MB 一到两倍内存容量
image
/home 10G 存放普通用户信息
image
/usr 8G linux系统所在位置
image
/var 5G 默认服务器的登录文件(邮件与WWW默认路径)
image
/tmp 3G
image
最后分区结果如下,按OK继续:
image
选择Use GRUB Boot Loader
image
这步选择默认
image
这里设置GRUB密码,可以设置也可以不设置,如果设置了请记住自己的密码哈。
image
这里点OK就可以了
image
这里我们安装在MBR
image
这里选择YES配置网卡
image
选择启用IPv4支持,IPv6可以不选,一般都没用
image
这里选择手动配置网卡192.168.0.0/24
image
这里输入你的网关及DNS服务器地址
image
输入主机名,我输入的是RHEL5
image
时区选择Asia/Shanghai
image
配置ROOT密码,输入两次, 记住自己输入的口令哦
image
我们去掉Virtualization组件并选择自定义安装软件包。
image
自定义安装软件包时,我们添加Development Libraries和Development Tools组件,保证系统软件开发的库文件和编程工具完整性,然后OK下一步,服务器软件我们以后自己装。
image
LINUX要安装软件都是需要检测依耐关系的
image
开始安装,安装日志在/root/install.log
image
image
image
image
Linux安装已经完成,重启一下计算机
image
选择退出
image
到了Linux登录界面
image
以root帐户登录
image
在CLI界面下我们要启动图形界面可以输入startx,我们如果要修改成一直图形界面启动Linux,可以输入vi /etc/inittab,键入i编辑把id:3改成id:5,保存退出。
image
1.2 Red Hat Enterprise Linux 5 硬盘安装
如果我们没有RHEL5.1的安装光盘,只有它的ISO镜像文件,那我们可以进行RHEL5.1硬盘安装。我们可以把RHEL5.1的ISO镜像文件放在主机的一个可用分区上(比如FAT/FAT32文件系统),NTFS是不行的哈,如果你没有fat32格式,只有NTFS格式,那我就没有办法了,因为好象NTFS格式转化为fat32风险比较大,最好的办法还是把你空余空间分出3GB主分区,作为fat32文件系统。把RHEL5.1镜像文件copy到那个分区也可以。
image
注意: 
划分出来的3G分区最好是分为主分区,也可以是fat32格式的C盘,或者是D盘(也就是/dev/hda5),因为我测试时分成其他逻辑分区后RHEL5硬盘安装时报错。 
总是提示Error informing the kernel about modifications to partition /dev/sda5 - 设备或资源忙。结果光硬盘就格了N次,系统重做N次,汗~~~ 
image 
需要提取RHEL5镜像下isolinux目录里面的两个文件。 vmlinuz 和 initrd.img
isolinux目录下包含了从 CD 启动所需要的文件: 
vmlinux是一个可执行文件,包含静态与Linux内核的可执行文件格式; 
initrd.img映像中包含了支持Linux系统核心两个阶段引导过程所需要的必要可执行程序和系统文件initrd; 
我们把vmlinuz、initrd.img及rhel5镜像文件放到我们划分出来的那个3GB的分区上。
image
先到网上 [url]http://download.gna.org/grub4dos/[/url]下载一个grub-for-dos的工具(附件里的就是),我这里下载的是grub4dos-0.4.4-2008-11-19.zip。
image
下载grub4dos后,解压缩后就可以了。核心文件有下面这几个:grldr和grub.exe,及menu.lst(此为样本,需修改)。如果你需要中文支持,就用chinese子目录中的文件。
通过Windows NT/2000/XP/2003的启动管理器启动GRUB4DOS  
在 Windows NT/2000/XP/2003中,可以把grldr和menu.lst拷贝到C:\。
image
然后在boot.ini的最后加上一行: c:\grldr="Start GRUB4DOS"
如果boot.ini中的timeout值为零,把它设置为大于0的数字,例如timeout=30,然后保存boot.ini。
注意:boot.ini文件一般是隐藏的,你需要在文件夹选项中设置显示所有文件,或者在cmd中使用以下命令来去掉boot.ini的隐藏属性。
编辑boot.ini前,可在cmd下输入: 
attrib -s -r -h c:\boot.ini 
解除boot.ini的只读属性,编辑完后输入: 
attrib +s +r +h c:\boot.ini 
恢复boot.ini的原有属性。 
image
image
image
下一次启动Windows时,你会发现启动画面中多了Start GRUB4DOS这一选项,使用它便可启动GRUB4DOS。
该方案的优点:不需要修改 MBR 和启动扇区
参考,感兴趣的可以自己研究下: 
对于多数没有或很少接触过linux的windows用户来说,刚开始使用grub时离不开菜单。也就是说,使用grub前,我们要准备menu.lst文件。 
下面是一个menu.lst的例子。(以#开始的行,表示注释,不执行) 
# 默认延迟时间(秒) 
timeout 30 
# 第一项为默认值 
default 0 
# 设置图形背景文件 
splashimage (hd0,0)/boot/grub/xp2008.gz 
# 设置中文支持的字体文件 
fontfile (hd0,0)/boot/grub/fonts 
title 使用map启动本地硬盘上的瑞星杀毒软盘镜像文件 
map (hd0,0)/boot/grub/rav.img (fd0) 
map --hook 
chainloader (fd0)+1 
rootnoverify (fd0) 
title 使用memdisk启动本地 Win98 软盘镜像文件 
kernel (hd0,0)/boot/grub/memdisk.gz 
initrd (hd0,0)/boot/grub/win98.img 
title 使用memdisk启动本地硬盘上的瑞星杀毒软盘压缩镜像文件 
root (hd0,0) 
kernel /boot/grub/memdisk.gz c=80 h=12 s=36 floppy 
initrd /boot/rav.zip 
title 启动第一主分区(hd0,0)上的操作系统 
rootnoverify (hd0,0) 
makeactive 
chainloader +1 
title 启动第二主分区(hd0,1)上的操作系统 
rootnoverify (hd0,1) 
makeactive 
chainloader +1 
title 重启 
reboot 
title 关机 
halt 
参考这个例子,我们就可以根据自己需要对菜单进行修改。 
比如从网上下载了效率源的镜像文件,文件名为XLY.IMG。我们只需把 
title 使用memdisk启动本地 Win98 软盘镜像文件 
kernel (hd0,0)/boot/grub/memdisk.gz 
initrd (hd0,0)/boot/grub/win98.img 
改成 
title 硬盘检测修复工具 效率源 (memdisk) 
kernel (hd0,0)/boot/grub/memdisk.gz 
initrd (hd0,0)/boot/grub/xly.img 
或者改成 
title 硬盘检测修复工具 效率源 (map) 
map (hd0,0)/boot/grub/xly.img (fd0) 
map --hook 
chainloader (fd0)+1 
rootnoverify (fd0) 
同时把xly.img文件保存到第一主分区(一般是C:)的boot\grub目录下。 
当然也可以保存到其它路径。 
比如xly.img文件保存到C:\boot下,则menu.lst文件相应改为: 
map (hd0,0)/boot/xly.img (fd0) 
又如xly.img文件保存到D:\test下,则menu.lst文件相应改为: 
map (hd0,4)/test/xly.img (fd0) 
(参看下面的注意d) 
从上面的例子可以看出,启动软盘镜象,有两种方式,即用memdisk或用map。 
用memdisk时,img文件可压缩;在img文件大小为非1.44MB或2.88MB标准镜像时,需要指定CHS参数。img文件的CHS参数可用winimage获得。 
即例子中的: 
title 使用memdisk启动本地硬盘上的瑞星杀毒软盘压缩镜像文件 
root (hd0,0) 
kernel /boot/grub/memdisk.gz c=80 h=12 s=36 floppy 
initrd /boot/rav.zip 
另外,菜单文件中的文件路径可用相对路径(如:/boot/rav.zip)或绝对路径(如:(hd0,0)/boot/grub/xly.img)表示。 
map方式对软盘映像大小没有限制,但要求必须连续存放。改进的map --mem则无此限制。 
比如: 
map --mem /boot/xxx.ima (fd0) 
map --hook 
chainloader (fd0)+1 
rootnoverify (fd0) 
注意: 
a, 菜单文件中所用的memdisk.gz文件,不包括在grub4dos的发行包里,需自行准备。可从gnu grub软件包或从其它基于grub的工具(如一键ghost,本人的gghost)中获得。 
b, 菜单中所用的其它文件如xp2008.gz(背景文件)、fonts(中文字体文件)及各种镜像文件等,均需拷贝到文件中指定路径。 fontfile命令不可单独使用,需与splashimage一起使用。 
c, 菜单文件中的命令全部使用小写。 
d, 
初学者使用绝对路径时要注意GRUB对设备的命名方法。系统的第一个硬盘驱动器表示成(hd0),其上的第一个分区表示为(hd0,0),也就是说对于硬盘,采用(hdx,y)的形式来表示,xy都是从0开始计数的,x表示硬盘号,y表示分区号。 
由于主分区只能有四个,所以第一硬盘的四个主分区分别用(hd0,0)~(hd0,3)来表示;逻辑分区则从(hd0,4)开始算,即第一逻辑分区用(hd0,4),第二逻辑分区用(hd0,5)来表示,依次类推。 
一般机子的硬盘都是一个主分区,其余是逻辑分区。因此C盘用(hd0,0)D盘用(hd0,4)来表示。 光盘用(cd)表示,第一软驱用(fd0)表示。 
下面是我现在使用的菜单效果图及menu.lst文件,供参考。 
color white/green yellow/green 
default 1 
timeout 3 
#fontfile /boot/grub/fonts 
#splashimage /boot/grub/bg.xpm.gz 
#password --md5 $1$8$D0mfzTIQXv2Ma2b5bWH0b. 
title 0, Boot from Hard Drive (hd0,0) 
root (hd0,0) 
chainloader +1 
title 1, GreenGhost [Ghost v8.3/v11] (MAP-HOOK) 
map --mem /boot/grub/gghost.img (fd0) 
map --hook 
chainloader (fd0)+1 
rootnoverify (fd0) 
title 2, GreenGhost [Ghost v8.3/v11] (MEMDISK) 
kernel /boot/grub/memdisk.gz c=200 h=2 s=36 floppy 
initrd /boot/grub/gghost.img 
title 3, GreenGhost [Ghost v8.3/v11] (MAP-HOOK) [disable a20] 
map --mem /boot/grub/gghost.img (fd0) 
map --hook 
chainloader --disable-a20 (fd0)+1 
rootnoverify (fd0) 
title 4, Microsoft Windows NT/2K/XP 
find --set-root /ntldr 
chainloader /ntldr 
title 5, Microsoft Windows Vista 
find --set-root /bootmgr 
chainloader /bootmgr 
title 6, Boot from Hard Drive (hd0,1) 
root (hd0,1) 
chainloader +1 
title 7, Reboot 
reboot 
title 8, Shutdown 
halt
启动菜单如下:
image
Grub4dos界面:
image
执行commandline
image
运行find /vmlinuz(搜索vmlinuz所在分区).显示结果是(hd0,2)
image
运行root (hdx,y) (这是/boot所在的分区,其中括号内的信息,就是上面命令的回显.)
image
执行kernel /vmlinuz (用来指定linux内核)
image
执行initrd /initrd.img (用来指定initrd文件)
image 
执行boot
image
image
语言我们选择简体中文
image
OK继续
image
这里选美式键盘US
image
重点步骤来了哈,安装方式我们选择:Hard drive
image
这里设置ISO镜像文件的分区并指定存放镜像文件的目录,我们选择硬盘分区为/dev/hda3,存放目录为rhel5/dvd哈。
image
单击OK后,出现图形界面的安装。
image
输入序列号
image
选择自定义分区
image
这里我们进行硬盘分区,和光盘安装一样哈: 
新建(W)    就是建立新的分区 
编辑(E)     就是更改已有的分区 
删除(D)   就是删除已建立的分区 
重设(S)     就是把你刚才的设定全部取消。恢复到现在的样子 
RAID(A)    是磁盘阵列 
LVM(L)     是逻辑卷
image
/boot 100MB, 记住,boot需要放在磁盘的第一个分区上,怎么看是不是在第一个分区上?看开始的块是不是1
image
/ 根目录 10G
image
swap 512MB 一到两倍内存容量
image
/home 10G 存放普通用户信息
image
/usr 8G linux系统所在位置
image
/var 5G 默认服务器的登录文件(邮件与WWW默认路径)
image
/tmp 3G
image
最后分区结果如下,/dev/hda3就是我们RHEL5镜像文件所在的分区,按下一步继续:
image
选择Use GRUB Boot Loader
image
这里选择配置网卡信息,选择编辑
image
选择手动配置IPv4支持的IP地址和子网掩码,配置网卡192.168.0.0/24,IPv6可以不选,一般都没用
image
这里输入你的主机名、网关及DNS服务器地址
image
时区选择亚洲/上海
image
配置ROOT密码,输入两次, 记住自己输入的口令哦
image
我们去掉Virtualization组件并选择自定义安装软件包。
image
自定义安装软件包时,我们添加开发工具和开发库组件,保证系统软件开发的库文件和编程工具完整性,然后下一步,服务器软件我们以后自己装。
image
LINUX要安装软件都是需要检测依耐关系的
image
开始安装,安装日志在/root/install.log
image
image
image
image
Linux安装已经完成,重启一下计算机
image
重启后我们直接就进入了图形界面
image
image
这个当然选同意了哈。
image
下面到了防火墙设置,这个选择禁用。 重点,防火墙必须禁用。这是红帽官方帮你配置的,如果开启会出现很多莫名其妙的错误,比如以后,我的服务器怎么ping不出去啊,怎么我的FTP不能访问啊之类的。RHEL5默认安装SSH服务器,只要你有SSH客户端就可以连接上服务器。
image
image
SELINUX选择默认强制
image
这个不用管,直接下一步
image
这里设置日期与时间
image
可以不用更新,省的麻烦
image
image
创建用户帐号
image
测试声卡
image
完成
image
到了Linux登录界面
image
以root帐户登录
image
1.3 Red Hat Enterprise Linux 5 NFS 安装
如果我们没有安装光盘和ISO镜像文件,我们可以使用RHEL5强大的网络安装方式,我们来讲下NFS方式安装的客户端设置(关于NFS,FTP及HTTP服务器的配置我们在后面会讲哈)。
同RHEL5硬盘安装一样,我们引导计算机后执行linux askmethod命令。
image
语言我们选择简体中文
image
OK继续
image
这里选美式键盘US
image
重点步骤来了哈,安装方式我们选择:NFS image
image
配置TCP/IP协议,我们选择手动配置。IPv6现在我们用不到,取消掉。
image
我们手动配置TCP/IP信息。
image
这里配置NFS服务器主机名或IP地址,并且添加ISO镜像文件存放目录(绝对地址)。
image
接下来的安装就和硬盘安装一样了哈,参考1.2 Red Hat Enterprise Linux 5硬盘安装就可以了哈。
1.4 Red Hat Enterprise Linux 5 FTP 安装
通过FTP服务器安装RHEL5步骤和NFS类似。
image
配置TCP/IP协议,我们选择手动配置。IPv6现在我们用不到,取消掉。
image
我们手动配置TCP/IP信息。
image
在FTP设置界面时,配置FTP服务器名称或IP地址,我这里是DVD版本,所以就放在/rhel5/i386/dvd单一目录下,如果是CD-ROM版本,我们就要在FTP服务器设置第一张系统光盘安装文件的目录路径,比如/rhel5/i386/cd1。设置完毕,按OK继续。
image
系统引导images/minstg2.img镜像文件,加载安装程序。
接下来的安装就和硬盘安装一样了哈,参考1.2 Red Hat Enterprise Linux 5硬盘安装就可以了哈。
注意: 
FTP安装方式和NFS不同,不能使用ISO镜像完成网络安装,需要把所有的安装软件包存放在FTP服务器上进行发布。 
DVD版本存放在单一目录。 
CD-ROM版本需要将系统安装文件按照光盘编号存放在不同目录哈,并用“名称+编号”方式命名相应目录(比如cd1,cd2,cd3...)。 
客户端在安装时,必须指定FTP服务器上第一张系统光盘安装文件的位置,以便安装程序加载指定的系统镜像文件。
1.5 Red Hat Enterprise Linux 5 HTTP 安装
我们通过HTTP服务器安装RHEL5,配置方式和FTP安装相似,只是选择安装类型不同,这里选择HTTP安装方式。
image
配置TCP/IP协议,我们选择手动配置。IPv6现在我们用不到,取消掉。
image
我们手动配置TCP/IP信息。
image
在HTTP设置界面时,配置HTTP服务器名称或IP地址,我这里是DVD版本,所以就放在/rhel5/i386/dvd单一目录下,如果是CD-ROM版本,我们就要在HTTP服务器设置第一张系统光盘安装文件的目录路径,比如/rhel5/i386/cd1。设置完毕,按OK继续。
image
接下来的步骤一样哈,参考1.4 Red Hat Enterprise Linux 5 FTP安装哈。
以上我们讲了常用的五种Linux安装方法,下面我们来讲下RHEL5网络的配置哈。
常规网络配置  
2.1  配置主机名
确保主机名在网络中是唯一的,否则通信会受到影响,建议书设置主机名时要有规则地进行设置(比如按照主机功能进行划分).
修改 /etc/hosts文件中主机名rhel5为samba
image
修改后效果:
image
通过编辑 /etc/sysconfig/network文件中的HOSTNAME字段修改主机名。
image
我们修改主机名为samba哈,wanxuan.com是域名。
image
注意:如果hosts里没有设置本地解析,就可以不管,修改主机名后需要重启系统生效哈。
我们设置完主机名生效后,可以使用 hostname查看当前主机名称。
image
:可以使用两个简单的命令临时设置主机名。
1.最常用的是使用hostname来设置哈。
格式:hostname 主机名
image
2.使用sysctl命令修改内核参数。
格式:sysctl kernel.hostname=主机名
image
这样两个设置是临时的哈,重启系统后设置失效哈。
2.2  使用 ifconfig 配置 IP 地址及辅助 IP 地址
大多数linux发行版都会内置一些命令来配置网络,而ifconfig是最常用的命令之一哈。它通常用来设置IP地址和子网掩码以及查看网卡相关配置。
格式:ifconfig 网卡名 ip地址 netmask 子网掩码
我们使用ifconfig命令来设置IP地址哈,修改IP地址为192.168.0.187
image
我们看下修改成功了没?
使用ifconfig命令可以查看网卡配置信息,如IP地址、MAC地址,收发数据包情况等。
image
执行命令后,ifconfig命令会显示所有激活网卡的信息,其中eth0为物理网卡,lo为回环测试接口。每块网卡的详细情况,通过标志位表示。
ifconfig字段解析:
标志位 注释 
eth0                  表示第一块以太网卡 
Link encap        表示该网卡位于OSI物理层(Physical Layer)的名称 
HWaddr             表示网卡的MAC地址(Hardware Address) 
inet addr           表示该网卡在TCP/IP网络中的IP地址 
Bcast                 表示广播地址(Broad Address) 
Mask                  表示子网掩码(Subnet Mask) 
MTU                   表示最大传送单元,不同局域网类型的MTU值不一定相同,对以太网来说,MTU的默认设置是1500个字节 
Metric               表示度量值,通常用于计算路由成本 
RX                     表示接收的数据包 
TX                      表示发送的数据包 
collisions           表示数据包冲突的次数 
txqueuelen        表示传送列队(Transfer Queue)长度 
interrupt            表示该网卡的IRQ中断号 
Base address      表示I/O地址
如果我们要单独查看某块网卡的状况,可以在ifconfig命令后加上指定的网卡名,比如:ifconfig eth0
image
配置虚拟网卡IP地址
在实际工作中,可以会出现一块网卡需要拥有多个IP地址的情况,可以通过设置虚拟网卡来实现。
命令格式: 
ifconfig 网卡名:虚拟网卡ID IP地址 netmask 子网掩码
为第一块网卡eth0设置一个虚拟网卡IP地址为192.168.0.208 子网掩码为255.255.255.0,如果不设置netmask,则使用默认的子网掩码。
image
我们测试下eth0:1虚拟网卡连通性
image
2.3  禁用和启用网卡
对于网卡的禁用和启用,依然可以使用ifconfig命令哈。
命令格式: 
ifconfig 网卡名称 down        #禁用网卡 
ifconfig 网卡名称 up            #启用网卡
使用ifconfig eth0 down命令后,在linux主机还可以ping通eth0的IP地址哈。
image
在其他主机上就ping不通eth0地址了。
image
ifconfig eth0 up 启用eth0网卡
image
image
使用ifdown eth0和ifup命令也可以实现禁用和启用网卡的效果。
命令格式: 
ifdown 网卡名称         #禁用网卡 
ifup 网卡名称              #启用网卡
使用ifdown eth0禁用eth0网卡,我们发现在linux主机也不能ping通eth0的IP地址了哈。
image
image
使用ifup eth0启用eth0网卡。
image
image
2.4  更改网卡 MAC 地址
MAC地址也叫物理地址或者硬件地址。它是全球唯一的地址。由网络设备制造商生产时写在网卡内部。MAC地址的长度为48位(6个字节),通常表示为12个16进制数,每两个16进制数之间用冒号隔开,比如:00:0C:29:EC:FD:83 就是一个MAC地址。其中前6位16进制数00:0C:29代表网络硬件制造商的编号,它由IEEE(电气与电子工程师协会)分配,而后3位16进制数EC:FD:83代表该制造商所制造的某个网络产品(如网卡)的系列号。
更改网卡MAC地址时,需要先禁用该网卡,然后使用ifconfig命令进行修改。
命令格式: 
ifconfig 网卡名 hw ether MAC地址
我们来修改eth0网卡的MAC 地址为00:11:22:33:44:55哈。
image
可以看到eth0的MAC地址已经被修改成00:11:22:33:44:55了哈。
如果我们不先禁用网卡会发现提示错误,修改不生效哈。
image
注意:ifconfig命令修改IP地址和MAC地址都是临时生效的哈,重新启动系统后,设置失效。我们可以通过修改网卡配置文件使其永久生效哈。具体可以看下2.6的网卡配置文件,我们会讲哈。
2.5 route 命令设置网关
route命令可以说是ifconfig命令的黄金搭档,也像ifconfig命令一样几乎所有的Linux发行版都可以使用该命令。route通常用来进行路由设置。比如添加或者删除路由条目以及查看路由信息,当然也可以设置默认网关哈。
route命令格式: 
route add default gw ip地址        #添加默认网关 
route del default gw ip地址         #删除默认网关
我们把Linux主机的默认网关设置为192.168.0.55哈,设置好后可以使用route命令查看网关及路由情况。
image
Flags用来描述该条路由条目的相关信息,如是否活跃,是否为网关等哈,U表示该条路由条目为活跃滴,G表示该条路由条目要涉及到网关哈。
route命令设置网关也是临时生效的哈,重启系统后失效。我们发现重启系统后,刚刚设置的路由条目没有了哈。
image
2.6  网卡配置文件
在更改网卡MAC地址时我们说过,ifconfig设置IP地址和修改网卡的MAC地址以及后面的route设置路由和网关时,配置都是临时生效的哈。也就是说,在我们重启系统后,配置都会失效哈。怎么样来解决这个问题,让我们的配置永久生效呢?这里我们就要直接编辑网卡的配置文件,通过参数来配置网卡,让设置永久生效哈。网卡配置文件位于/etc/sysconfig/network-scripts/目录下哈。
image
每块网卡都有一个单独的配置文件,可以通过文件名来找到每块网卡对应的配置文件。例如:ifcfg-eth0就是eth0这块网卡的配置文件。我们来编辑/etc/sysconfig/network-scripts/ifcfg-eth0文件来进行配置看看效果哈。
vim ifcfg-eth0
image
每个网卡配置文件都存储了网卡的状态,每一行代表一个样参数值哈。系统启动时通过读取该文件所记录的情况来配置网卡。常见的参数如下哈:
参数 注解 默认值 是否可省略
DEVICE 指定网卡名称 不能
BOOTPROTO 指定启动方式 
static:表示使用静态IP地址 
boot/dhcp:表示通过BOOTP或DHCP协议自动获得IP地址
static 可以
HWADDR 指定网卡的MAC地址 可以
BROADCAST 指定广播地址 通过IP地址和子网掩码自动计算得到 可以
IPADDR 指定IP地址 可以  
当BOOTPROTO=static时不能省略
NETMASK 指定子网掩码 可以 
当BOOTPROTO=static时不能省略
NETWORK 指定网络地址 通过IP地址和子网掩码自动计算得到 可以
ONBOOT 指定在启动network服务时,是否启用该网卡 yes 可以
GATEWAY 指定网关 可以
修改过网卡配置文件后,需要重新启动network服务或重新启用设置过的网卡,使用配置生效哈。
2.7 setup 命令
RHEL5支持者文本窗口的方式对网络进行配置,CLI命令行模式下使用setup命令就可以进入文本窗口。
image
image
移动光标选择网络配置选项,按回车确认进入对网络设置的界面。
image
现在我们Linux主机有一块网卡eth0哈,选择它后可以按回车进行配置。
image
2.8  修改 resolv.conf 设置 DNS
Linux中设置DNS客户端时可以直接编辑/etc/resolv.conf,然后使用namserver参数来指定DNS服务器的IP地址。
image
image
192.168.0.1是首选DNS服务器地址,如果下面还有nameserver字段的话为备用DNS地址,也可以指定更多的DNS服务器地址在下面,当指定的DNS服务器超过三台以上时,只有前三台DNS服务器地址是有效的哈。客户端在向服务器发送查询请求时,会按照文件中的顺序依次发送,当第一台DNS服务器没有响应时,就会去尝试向下一台DNS服务器查询,直到发送到最后一台DNS服务器为止哈。所以建议将速度最快、稳定性最高的DNS服务器设置在最前面,以确保查询不会超时哈。
网络环境测试  
3.1 ping 命令检测网络状况
ping命令可以测试网络连通性,在网络维护时使用非常广泛哈,相信我们搞IT的人没人没用过ping吧?嗯?你说你没胜过,倒~~~当我没说哈。在网络出现问题后,我们通常第一步使用ping测试网络的连通性,ping命令使用ICMP协议,发送请求数据包到其他主机,然后接受对方的响应数据包,获取网络状况信息。我们可以根据返回的不同信息,判断可以出现的问题哈。
ping命令格式: 
ping 可选项 IP地址或主机名
ping命令支持大量可选项,功能那是相当的强大哈。
选项 说明
-c <完成次数> 设置完成要求回应的次数
-s <数据包大小> 设置数据包的大小
-i <间隔秒数> 指定收发信息的间隔时间
-f 极限检测
-I <网络界面> 使用指定的网络界面送出数据包
-n 只输出数值
-p <范本样式> 设置填满数据包的范本样式
-R 记录路由过程
-q 不显示指令执行过程,开头和结尾的相关信息除外
-r 忽略普通的路由表,直接将数据包送到远端主机上
-t <存活数值> 设置存活数值TTL的大小
-v 详细显示指令的执行过程
-l <前置载入> 设置在送出要求信息之前,先行发出的数据包
使用ping命令简单测试下网络的连通性,我们ping下我们blog.51cto.com哈。
image
image
倒~~~现在51cto论坛和blog整合升级后是不是加了防ping功能了哈,网页是可以打开的哈。我们再试试google哈。
image
向g.cn(IP地址为:203.208.39.104)的主机发送请求后,203.208.39.104主机以64字节的数据包回应,说明两节点间的网络可以正常连接。
每条返回信息会表示响应的数据包的情况。 
icmp_seq:数据包的序号,从1开始递增。 
ttl:Time To Live,生存周期。 
time:数据包的响应时间,即发送请求数据包到接收响应数据包的整个时间,该时间越短说明网络的延时越小,速度越快。
在ping命令终止后,会在下方出现统计信息,显示发送及接收的数据包,丢包率及响应时间,其中丢包率越低,说明网络状况良好、稳定哈。
注意哈:Linux与Windows不同,默认不使用任何参数,ping命令会不断发送请求数据包,并从对方主机获得响应信息,如果测试完毕可以使用Ctrl+C终止哈,或者使用参数-c设置指定发送数据包的个数哈。
3.2 netstat 命令
netstat(network statistics)主要用于检测主机的网络配置和状况,可以查看显示网络连接(进站和出站)、系统路由表、网络接口状态。netstat支持Unix、Linux及Windows系统,功能也是非常滴强大哈。
netstat命令格式: 
netstat [可选项]
netstat常用的可选项:
选项 说明
-r或--route 显示路由表
-a或--all 显示所有连接信息
-t或--tcp 显示TCP传输协议的连接状况
-u或--udp 显示UDP传输协议的连接状况
-c或--continuous 持续列出网络状态,监控连接情况
-i或--interfaces 显示网络界面信息表单
-l或--listening 显示监控中的服务器的Socket
-n或--numeric 使用数字方式显示地址和端口号
-p或--programs 显示正在使用Socket的程序识别码和程序名称
-s或--statistice 显示网络工作信息统计表
(1)查看端口信息
网络上的主机通信时必须具有唯一的IP地址,以标示自己的身份,计算机通信时使用TCP/IP协议栈的端口,主机使用“IP地址:端口”与其他主机建立连接并进行通信。计算机通信时使用的端口从0~65535,共有65536个,数量非常滴多哈,对于一台计算机,可能同时使用很多协议,为了标示它们,相关组织为每个协议分配了端口号,比如HTTP协议的端口号为80,SMTP协议的端口号为25,TELNET协议的端口号为23等等哈。网络协议就是网络中传递、管理信息的一些规范,计算机之间的相互通信需要共同遵守一定的规则,这些规则就称为网络协议。
使用netstat命令以数字方式查看所有TCP协议连接情况: netstat -atn
image
选项中-a表示显示所有连接 
Proto协议类型,因为使用-t选项,这里就只显示TCP协议了哈,要显示UDP协议可以使用-u选项,不设置则显示所有协议哈。 
Local Address本地地址,默认显示主机名和服务名称,使用选项-n后显示主机的IP地址及端口号。 
Foreign Address远程地址,与本机连接的主机,默认显示主机名和服务名称,使用选项-n后显示主机的IP地址及端口号。  State连接状态,常见的有以下几种哈: 
LISTEN 表示监听状态,等待接收入站的请求。 
ESTABLISHED 表示本机已经与其他主机建立好连接。 
TIME_WAIT 等待足够的时间以确保远程TCP接收到连接中断请求的确认。
(2)查看路由表
netstat使用-r参数,可以显示当前主机的路由表信息。
image
(3)查看网络接口状态
灵活运用netstat命令,还可以监控主机网络接口的统计信息,显示数据包发送和接收情况。
image
MTU字段:表示最大传输单元,即网络接口传输数据包的最大值。 
Met字段:表示度量值,越小优先级越高。 
RX-OK/TX-OK分别表示接收、发送的数据包数量。 
RX-ERR/TX-ERR表示接收、发送的错误数据包数量。 
RX-DRP/TX-DRP表示丢弃的数量。 
RX-OVR/TX-OVR表示丢失数据包数量。
通过这些数据可以查看主机各接口连接网络的情况。
3.3 nslookup 测试域名解析
nslookup工具可以查询互联网域名信息,检测DNS服务器的设置。如查询域名所对应的IP地址等。nslookup支持两种模式:非交互式和交互式模式。
(1)非交互式模式
非交互式模式仅仅可以查询主机和域名信息。在命令行下直接输入nslookup命令,查询域名信息。
命令格式: 
nslookup 域名或IP地址
我们还是查下我们51cto网站对应的DNS信息哈:nslookup  [url]www.51cto.com[/url]
image
[url]www.51cto.com[/url]对应的IP地址为:211.103.156.229。
这是Google中国网站的DNS信息哈。
image
注意:通常访问互联网时,输入的网址实际上对应着互联网上的一台主机。这里只介绍nslookup工具的使用方法,关于域名方面的知识点,我们在后续的DNS服务中会详细讲下哈。
使用nslookup命令将IP地址解析成主机名哈
image
IP地址192.168.0.1对应的主机名为server.wanxuan.com。
2)交互模式
交互模式允许用户通过域名服务器查询主机和域名信息或者显示一个域的主机列表。用户可以按照需要,输入指令进行交互式的操作。
交互模式下,nslookup可以自由查询主机或者域名信息。
image
我们一开始是提交了server.wanxuan.com主机名,系统返回了主机名对应的ip地址哈。反过来我们也可以提交IP地址来查询对应的主机名,这涉及到DNS的正向和反向解析哈。
OK,这季内容就到这里哈,下季我们来讲讲Samba服务哈。
##################################################################








本文转自redking51CTO博客,原文链接:http://blog.51cto.com/redking/117523 ,如需转载请自行联系原作者
相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
15天前
|
Java Linux
Springboot 解决linux服务器下获取不到项目Resources下资源
Springboot 解决linux服务器下获取不到项目Resources下资源
|
18天前
|
Linux
linux下搭建tftp服务器教程
在Linux中搭建TFTP服务器,需安装`tftp-server`(如`tftpd-hpa`)。步骤包括:更新软件包列表,安装`tftpd-hpa`,启动并设置开机自启,配置服务器(编辑`/etc/default/tftpd-hpa`),添加选项,然后重启服务。完成后,可用`tftp`命令进行文件传输。例如,从IP`192.168.1.100`下载`file.txt`: ``` tftp 192.168.1.100 &lt;&lt;EOF binary put file.txt quit EOF ```
28 4
|
23小时前
|
监控 安全 Linux
Linux系统之安装ServerBee服务器监控工具
【4月更文挑战第22天】Linux系统之安装ServerBee服务器监控工具
14 2
|
1天前
|
Ubuntu Linux 测试技术
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试(下)
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试
12 1
|
5天前
|
网络协议 安全 Linux
IDEA通过内网穿透实现固定公网地址远程SSH连接本地Linux服务器
IDEA通过内网穿透实现固定公网地址远程SSH连接本地Linux服务器
|
8天前
|
安全 Java 网络安全
对象存储oss使用问题之使用oss上服务器后显示服务异常如何解决
《对象存储OSS操作报错合集》精选了用户在使用阿里云对象存储服务(OSS)过程中出现的各种常见及疑难报错情况,包括但不限于权限问题、上传下载异常、Bucket配置错误、网络连接问题、跨域资源共享(CORS)设定错误、数据一致性问题以及API调用失败等场景。为用户降低故障排查时间,确保OSS服务的稳定运行与高效利用。
12 0
|
8天前
|
存储 关系型数据库 MySQL
Linux服务详解
Linux服务详解
22 0
|
9天前
|
网络协议 Ubuntu Linux
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
|
11天前
|
Linux 数据安全/隐私保护
Linux基础与服务器架构综合小实践
【4月更文挑战第9天】Linux基础与服务器架构综合小实践
1234 8
|
12天前
|
网络协议 Java 物联网
阿里云服务器上搭建 MQTT服务
阿里云服务器上搭建 MQTT服务