跟老男孩学Linux运维:高性能Web集群实践(上)
上QQ阅读APP看书,第一时间看更新

1.4 系统安装后的基本配置

1.4.1 重启系统过程中的引导过程介绍

系统安装结束后,取出用于安装的DVD系统盘(如果是虚拟机镜像文件,此时无法取出),按Reboot键重新启动系统,首先进入如图1-24所示的CentOS7开机菜单引导界面。

图1-24 CentOS7开机菜单引导界面

此时,选择默认选项,然后按下键盘上的回车键,开始启动系统,如图1-25所示。

图1-25 系统启动过程

此时如果按下键盘上的Esc键,可以查看引导过程的细节,如图1-26所示,但截图动作一定要快,因为系统瞬间就启动完了,这是CentOS7并行启动的改进。

图1-26 系统引导过程细节截图

系统引导及程序服务加载完毕后,会出现登录界面,如图1-27所示。

图1-27 系统登录界面

提示:登录界面中的英文内容为CentOS的版本号及内核的当前版本号。

当前Linux内核版本号为:

        [root@www ~]# uname -r
        3.10.0-957.el7.x86_64

这里补充介绍一下各数字和字母代表的含义:第一个数字3表示主版本号,有结构性变化才更改;接下来的数字10表示次版本号,新增功能时才变化,一般奇数表示测试版,偶数表示开发版;再接下来的0表示对次版本的修订次数或补丁包数;957代表编译的次数,每次编译可对少数程序进行优化或修改;e17用来表示版本的特殊信息,有较大的随意性,el代表企业版Linux, pp代表测试版,fc代表fedora core, rc代表候选版本;x86_64表示64位。

在图1-27中显示的www为主机名,login为登录提示。

1.4.2 登录系统

现在,把光标定位到“login:”提示后面,然后输入root超级用户名,按Enter键,并按提示输入密码(注意密码是不显示的),如图1-28所示。

图1-28 登录过程示意

登录到系统后的界面如图1-29所示。

图1-29 登录系统后的界面图

提示:“ [root@www ~]#”里的#号为超级管理员root输入命令的提示符,在#号后面可以输入命令进行系统管理。在企业的工作环境中,都是在这种提示符下输入命令进行管理的,而不是像Windows系统采用图形界面进行管理,理解这一点对于从Windows系统转过来的读者尤为重要。初学者对命令管理方式会有些不适应,等熟练以后就会发现命令管理更直观、更简洁,效率也更高,这也是Linux的强大之处。

1.4.3 配置网卡设置网络联网

在1.3节的“配置网络和主机名(NETWORK & HOST NAME)”部分中,已经讲解过如何配置网卡了,如果读者的配置和图1-11所示的配置信息类似,主要是在中间网卡的位置能自动获取到信息,那么就应该可以联网了,如果读者之前已经配置过了,那么可以忽略这步。

到这里,笔者的网卡信息已经配置好了,如图1-30所示,虚拟机网卡选择的是桥接模式,笔者电脑里的路由器开启了DHCP服务,所以在配置网络和主机名时就自动获取到了IP地址,如果读者没有获取到,就需要手动配置IP地址。

图1-30 笔者的系统联网结果

1.通过nmtui(类似setup)命令设置网卡

1)在系统命令行中输入nmtui命令然后按“回车”键,如图1-31所示。

图1-31 CentOS7.6配置网卡

2)通过按Tab键及对应的键依次选择进入如下几个窗口,为了节省篇幅,笔者把这几个操作进行了合并,并进行了排序,如图1-32和1-33所示。

图1-32 nmtui的各种界面

对于不知道如何给虚拟机设置IP地址的新手,可以参考PC的IP设置。方法是:“开始”→“运行”→“cmd”→“ipconfig/all”,找到联网的网卡信息,采用无线网卡连接路由器,前面讲解虚拟机建立的相关内容时,选择的是桥接网络模式,因此,虚拟机的配置和PC除了IP不一致外(但必须在一个局域网里),其他的网络配置一模一样。PC的网络信息如图1-34所示。

图1-34 PC的网络信息

图1-33 配置网卡过程

提示:该配置实质上就是修改网卡的配置文件/etc/sysconfig/network-scripts/ifcfg-eth0内容,由于没有讲解命令,所以这里就没有讲如何通过文件进行配置。

配置完成后,依次点击“OK”“back”“quit”退到命令行,如图1-35所示。

图1-35 最后测试是否能上网

提示:上述配置网卡的过程有些复杂,虽然笔者力求讲得清楚明白,可能依然有读者不能完全明白,欢迎各位读者朋友加入QQ群784850820获取本书相关的视频资料、咨询学习遇到的疑难问题。

2.系统无法联网的故障排除方法

(1)首先要确认系统的安装方式:是虚拟机还是物理服务器

如果是虚拟机,同时还要考虑虚拟机所在的宿主机联网方式。如果宿主机采用直接拨号方式上网(一般不会),那么虚拟机网卡就选NAT模式,如果宿主机采用路由器局域网方式上网(常见),那么虚拟机网卡选择bridged和NAT两种模式都可以。如果是物理服务器的话,直接配置就可以了。

(2)如果系统安装方式无误,仍然不能上网,继续确认网卡实际配置是否正确

如果虚拟机是NAT模式,那么需要使用DHCP自动获取IP;如果虚拟机是bridged模式,则需要根据虚拟机所在的宿主机联网方式(可以查看对比)设定IP、子网掩码及网关,更方便的方法还是使用DHCP获取IP。不管是采用bridged模式还是采用NAT模式,最好都手动指定DNS。

提示:采用NAT模式上网时,需要注意宿主机的Windows系统中计算机管理下服务和应用程序对应的VMware的DHCP和NAT服务是否已开启(如图1-36所示)。

图1-36 宿主机的Windows系统中VMware的DHCP和NAT服务是否已开启

如果是物理服务器,检查IP、子网掩码、网关和DNS等设置是否正确,可与局域网内其他可上网的机器一一进行对比,或者找网管询问。

(3)上面两类问题都排除后,就需要确认网卡的配置文件了

使用nmtui命令配置网卡的过程实际上就是修改如下的网卡配置文件,因此,对于熟手可以通过查看网卡的配置文件确认其与想要的配置是否一致。

如下代码展示了如何查看网卡配置文件以及网卡配置项的含义。

        [root@www ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
        TYPE=Ethernet           #<==上网类型,目前基本都是以太网。
        PROXY_METHOD=none
        BROWSER_ONLY=no
        BOOTPROTO=none         #<==启动协议,获取配置方式,有none|bootp|dhcp 3个选项。
        DEFROUTE=yes            #<==使用默认路由。
        IPV4_FAILURE_FATAL=no #<==不启用IPv4错误检测功能。
        NAME=eth0               #<==第一块网卡的逻辑设备名,第二块为eth1。
        UUID=e62dd7a9-92fa-4805-afc9-441b567ad38d  #<==通用唯一识别码(Universally Unique
                                                        Identifier),如果是VMware克隆的
                                                        虚拟机无法启动网卡,可以去除此项。
        DEVICE=eth0             #<==第一块网卡的逻辑设备名,第二块为eth1。
        ONBOOT=yes              #<==这个地方应为yes,才能保证下次开机激活网卡设备。
        IPADDR=192.168.2.217  #<==这是虚拟机桥接模式,局域网Linux服务器的固定IP。
        PREFIX=24               #<==子网掩码位数,这里是24位。
        DNS1=192.168.2.1       #<==主DNS,这里默认会覆盖以及优先于/etc/resolv.conf的配置生效。
        GATEWAY=192.168.2.1   #<==局域网上网网关的地址。

无论虚拟机采用的是NAT模式还是桥接模式,或者是物理服务器,都要修改网卡启动项配置,把“ONBOOT=no”修改为“ONBOOT=yes”,使得下一次开机时网卡可以自启动。如果前面执行nmtui命令修改时已经激活了网卡设备,这里可以忽略此项配置。命令如下:

        [root@www  ~]#  sed  -i  's#ONBOOT=no#ONBOOT=yes#g'  /etc/sysconfig/network-
            scripts/ifcfg-eth0
        [root@www ~]# grep ONBOOT /etc/sysconfig/network-scripts/ifcfg-eth0
        ONBOOT=yes

重启网卡的命令如下:

        [root@www ~]# systemctl restart network

查看IP设置的命令如下:

        [root@www ~]# ip add
        ...省略若干...
        2: eth0: <BROADCAST, MULTICAST, UP, LOWER_UP> mtu 1500 qdisc pfifo_fast state UP
            group default qlen 1000
            link/ether 00:0c:29:22:6b:45 brd ff:ff:ff:ff:ff:ff
            inet 192.168.2.217/24 brd 192.168.2.255 scope global noprefixroute eth0
        ...省略若干...

提示:暂时无法使用ifconfig查询,因为默认还没有安装这个命令。

查看默认网关设置的命令如下:

        [root@www ~]# ip route
        default via 192.168.2.1 dev eth0 proto static metric 100
        192.168.2.0/24 dev eth0 proto kernel scope link src 192.168.2.217 metric 100

提示:暂时无法使用route和netstat查询,因为默认还没有安装这两个命令。

查看DNS设置的命令如下:

        [root@www ~]# cat /etc/resolv.conf
        # Generated by NetworkManager
        nameserver 192.168.2.1

如果以上配置都正确,一般来说上网就不会有问题了。

1.4.4 通过VMware为新系统创建快照

创建快照的目的是,将来能将系统随时还原到做快照时候的状态,对于处于学习阶段的读者来说,这个快照功能很有用。

关闭系统后再创建快照,这样会节省磁盘空间。做好快照后可以快速还原因误操作损坏的系统,或者在未来重新建立新的学习环境!

图1-37所示为创建快照菜单命令,图1-38所示为“oldboyedu-快照编辑器”对话框。

图1-37 拍摄快照1

图1-38 拍摄快照2

技巧:可在虚拟机关机或挂起的时候创建快照,能瞬间完成。

1.4.5 更新系统,打补丁到最新

和Windows打补丁类似,Linux也可以定期更新系统软件。

Linux下用于安装软件的优秀工具叫作yum,它是CentOS Linux下最好用的包管理器和安装软件包的工具,用起来很方便。Linux的二进制软件包一般是rpm包,类似Windows下的exe程序。

通过yum工具可以很方便地安装rpm软件包,默认获取rpm包的软件配置是从国外CentOS官方源地址及其镜像地址下载的。因此,通过yum工具安装软件的速度会比较慢,需要把默认获取rpm包的地址改成国内的yum源地址。

在CentOS安装完毕后,首先应该修改更新源,并升级到最新的系统。修改更新yum源的命令如下:

        curl  -s  -o  /etc/yum.repos.d/CentOS-Base.repo  http://mirrors.aliyun.com/repo/
            Centos-7.repo
        curl  -s  -o  /etc/yum.repos.d/epel.repo  http://mirrors.aliyun.com/repo/epel-7.
            repo
        #如果执行字符太多的命令不方便时,可以等学完第6章后,再回来配置。

提示:笔者在写书过程中,刚开始选择了aliyun上的yum源,但遇到了更新错误,后来改成网易的就好了。大家遇到问题时,不妨尝试更换yum源。下面的链接为阿里云的yum源:https://mirrors.aliyun.com/help/centos/。

然后,使用如下命令将系统更新到最新状态:

        [root@www ~]# yum update -y  #<==本书写作时已进行更新,读者也更新下。

提示:也可以使用yum upgrade -y命令,此时大约会有126MB大小的更新包,这个更新是可选操作。在首次安装系统时一般可以执行yum update -y,如果是已经应用在生产线的业务服务器系统,就不要轻易更新了,以免导致业务服务异常。若遇到了特殊的漏洞(如2014年4月发生的OpenSSL心脏出血及2014年10月发生的bash漏洞,可以单独对指定的问题软件进行升级处理。yum upgrade与yum update的区别很小,想了解的读者可执行man yum进行查看。

1.4.6 额外安装一些有用的软件包

按照上文选择最小化安装时,可能会没有把一些有用的工具包安装进去,特别是CentOS7把一些好用的命令都遗弃了,我们可以提前将这些工具安装好,以备不时之需,相关命令如下:

CentOS6和CentOS7都要安装的企业运维常用基础工具包如下:

        yum install  tree  nmap  dos2unix  lrzsz  nc  lsof  wget  tcpdump  htop  iftop  iotop
            sysstat nethogs -y

这些工具包的介绍见表1-3。

表1-3 需安装的常用系统工具包

CentOS7需要安装的企业运维常用基础工具包如下:

        yum install psmisc net-tools bash-completion vim-enhanced -y

以上工具包是CentOS7默认没有安装的一些重要的工具包,其介绍见表1-4。

表1-4 CentOS7默认没有安装的工具包

说明:请读者安装上面的工具包,否则在本书后续的学习中可能会遇到困难。另外,查找killall命令对应的工具包的方法为rpm -qf 'which killall',查找net-tools工具包对应于哪些命令的方法为rpm -ql net-tools,其他命令和软件包与此同理。

如果在系统安装过程中落下了某些需要的软件包组,可以执行如下命令来安装:

        [root@www ~]# yum groups mark convert
        [root@www ~]# yum grouplist  #<==查看所有包组的名称,包括已安装的和未安装的。
        ...省略若干...
        Available Environment Groups:
            Minimal Install
            Compute Node
            ...省略若干...
            Basic Web Server
            Virtualization Host
            ...省略若干...
        Installed Groups:
            Compatibility Libraries
            Development Tools
            Milkymist
            Security Tools
            System Administration Tools
        Available Groups:
            Cinnamon
            Console Internet Tools
        ...省略若干...
            Xfce
        Done

如果系统安装过程中确实落下了某些组包,可以用下面的方法安装。

        [root@www ~]# yum groupinstall "Cinnamon" -y  #<==安装指定包组,包组名要带双引号,
                                                            装过的不能重复装。

到此为止,整个CentOS7.6的安装就告一段落了,大家在用虚拟机学习时可以保留这个模板机的配置,然后克隆新的虚拟机(推荐使用链接克隆,能节省空间),当然,也可以用快照的方式设定及回滚操作过的设置。