HCIE-復(fù)習(xí)">HCIE-復(fù)習(xí)
722
2022-05-28
硬件管理 Hardware (HW)
HW_001 設(shè)備查詢
Windows 一般用設(shè)備管理器查計算機(jī)的硬件資源,Linux 的設(shè)備資源查詢和管理,是由多個不同命令組合完成的,總的來說,命令可以分為硬件規(guī)格與配置查詢和硬件資源使用狀態(tài)查詢
硬件規(guī)格配置查詢,主要的需求場景和命令參考下表
硬件資源使用狀態(tài)查詢,包括部分常用的運(yùn)營運(yùn)維管理命令,參考下表
小測驗:請執(zhí)行以下指令,解釋指令執(zhí)行結(jié)果含義
[root@hcie ~]# cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l 1 [root@hcie ~]# cat /proc/cpuinfo| grep "cpu cores"| uniq cpu cores : 2 [root@hcie ~]# cat /proc/cpuinfo| grep "processor"| wc -l 4 [root@hcie ~]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c 4 Intel(R) Xeon(R) Gold 6266C CPU @ 3.00GHz [root@hcie ~]# cat /proc/meminfo |grep MemTotal |cut -d ':' -f 2 |cut -d ' ' -f 8 15896912
HW_002 磁盤演進(jìn)之路
個人電腦三大件 CPU 內(nèi)存和磁盤,這 3 者的配置規(guī)格基本定義了一臺計算機(jī)的檔次,以前在中關(guān)村選購電腦或玩 DIY,主要關(guān)注的也是這 3 個方面
CPU:Intel 還是 AMD,核數(shù)、主頻多少,再深入一點了解下浮點運(yùn)算能力;后來,隨著高畫質(zhì)影像視頻、游戲應(yīng)用的快速發(fā)展,GPU 的重要性也在不斷提升
內(nèi)存:內(nèi)存顆粒、制造工藝、廠商,當(dāng)然還有最重要的容量、讀寫速率等
磁盤:首先看是機(jī)械硬盤還是固態(tài)硬盤,機(jī)械硬盤關(guān)注磁盤容量、轉(zhuǎn)速、數(shù)據(jù)讀取時延等,固態(tài)硬盤 SSD 關(guān)注價格、容量和使用壽命等,主流 USB 采用的是和固態(tài)硬盤相同的技術(shù),一般簡稱為閃存盤,是固態(tài)硬盤的一個別名
三者協(xié)同非常重要,任何一環(huán)拖后腿都會產(chǎn)生“短木板效應(yīng)”,對計算性能造成影響,參考下圖,在 SSD 固態(tài)硬盤出現(xiàn)之前,硬盤受限于機(jī)械特性,其性能提升相比 CPU 和內(nèi)存都是非常緩慢的。SSD 固態(tài)硬盤技術(shù)的出現(xiàn),緩解了這一情況,迅速拉齊了 3 者的發(fā)展水平,避免存儲成為瓶頸
硬盤技術(shù)的演進(jìn)對于整個技術(shù)生態(tài)影響巨大,過去機(jī)械硬盤隨機(jī)和線性訪問速度的限制,發(fā)展滯后于 CPU 和內(nèi)存,業(yè)界衍生出很多技術(shù)以規(guī)避這種情況,如多級緩存、分布式存儲技術(shù),甚至 Hadoop 的技術(shù)生態(tài),一開始也是圍繞著怎么打破機(jī)械硬盤的性能限制而誕生的,更不用說傳統(tǒng)數(shù)據(jù)庫技術(shù),和存儲技術(shù)的適配也是非常重要的一環(huán)
磁盤等各類型硬件在 Linux 中是當(dāng)做一個個文件進(jìn)行管理的,所有硬件都存儲在 /dev 目錄下,不同的硬件使用的前綴代號都不一樣,可以根據(jù)代號來判斷硬件對應(yīng)類別,選擇合適的業(yè)務(wù)存儲數(shù)據(jù)和訪問應(yīng)用,充分發(fā)揮硬件效能
小測驗:請回答下面的路徑代表的是哪一種存儲硬件
/dev/sda /dev/vda /dev/hda /dev/usb/lp0
HW_003 磁盤分區(qū)
磁盤分區(qū)是安裝操作系統(tǒng)的第一步,不過云端服務(wù)器一般不涉及分區(qū)操作,分區(qū)信息由云平臺在開通 ECS 服務(wù)時自動完成了
參考下圖,磁盤可分為磁盤分區(qū)包括主分區(qū)和擴(kuò)展分區(qū),主分區(qū)和擴(kuò)展分區(qū)最多 4 個,這是由磁盤記錄分區(qū)表信息的 MBR 決定的,MRB 存儲容量為一個磁盤的一個扇區(qū)即 512 Byte,記錄的分區(qū)數(shù)量信息是有限的
擴(kuò)展分區(qū)最多可創(chuàng)建 1 個,可劃分多個邏輯分區(qū),編號從 5 開始如 /dev/sda5,每個邏輯分區(qū)和主分區(qū)在使用上沒有什么差異
以上介紹的分區(qū)是基于 MBR 實現(xiàn)的,使用的分區(qū)命令是 fdisk;目前主流的分區(qū)類型還包括 GPT 分區(qū),命令采用 gdisk
小測驗:請按照如下要求執(zhí)行,執(zhí)行 fdisk 分區(qū)指令,完成磁盤分區(qū)操作
有兩塊 SATA 硬盤,各 500G,創(chuàng)建磁盤分區(qū) /sda1 /sda2 /sda5 /sdb1 /sdb2
/sda1 /sda2 各 100G,/sda5 50G,剩余磁盤空間用于未來擴(kuò)容使用
/sdb1 和 /sdb2 平分磁盤空間
注:以下指令常用語查詢硬盤分區(qū)狀態(tài)
[root@hcie ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 253:0 0 120G 0 disk └─vda1 253:1 0 120G 0 part / [root@hcie ~]# cat /proc/partitions major minor #blocks name 253 0 125829120 vda 253 1 125828079 vda1 [root@hcie ~]# fdisk -l Disk /dev/vda: 120 GiB, 128849018880 bytes, 251658240 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x64860148 Device Boot Start End Sectors Size Id Type /dev/vda1 * 2048 251658206 251656159 120G 83 Linux [root@hcie ~]# cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l 1 [root@hcie ~]# cat /proc/cpuinfo| grep "cpu cores"| uniq cpu cores : 2 [root@hcie ~]# cat /proc/cpuinfo| grep "processor"| wc -l 4 [root@hcie ~]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c 4 Intel(R) Xeon(R) Gold 6266C CPU @ 3.00GHz [root@hcie ~]# cat /proc/meminfo |grep MemTotal |cut -d ':' -f 2 |cut -d ' ' -f 8 15896912
HW_004 文件系統(tǒng)類型
磁盤分區(qū)在物理上對磁盤進(jìn)行了分割,將磁盤用起來,但操作系統(tǒng)沒辦法直接操作硬盤資源,操作系統(tǒng)可以訪問的是一個個文件,因此須建立文件系統(tǒng),通過文件系統(tǒng)管理硬件資源
下面的指令展示了系統(tǒng)所支持的文件系統(tǒng)種類:
[root@hcie ~]# cat /etc/filesystems xfs ext4 ext3 ext2 nodev proc nodev devpts
當(dāng)前主流 Linux 系統(tǒng)一般采用 ext4 文件系統(tǒng)類型,參考下面的命令
[root@hcie ~]# df -T Filesystem Type 1K-blocks Used Available Use% Mounted on devtmpfs devtmpfs 7934200 0 7934200 0% /dev tmpfs tmpfs 7948456 0 7948456 0% /dev/shm tmpfs tmpfs 7948456 552 7947904 1% /run tmpfs tmpfs 7948456 0 7948456 0% /sys/fs/cgroup /dev/vda1 ext4 123591212 2689892 115432516 3% / tmpfs tmpfs 7948456 32 7948424 1% /tmp tmpfs tmpfs 1589688 0 1589688 0% /run/user/0
Linux 文件系統(tǒng)一般都采用以下 3 級結(jié)構(gòu)
目錄項:包括目錄結(jié)構(gòu)、文件和 inode 節(jié)點號
inode:文件節(jié)點索引,一個文件對應(yīng)一個,記錄文件屬性,以及 inode 指向文件數(shù)據(jù)塊地址;文件屬性相關(guān)信息,參考下述指令顯示的文件信息結(jié)果
[root@hcie etc]# ll -rw-r--r--. 1 root root 44 May 18 2020 adjtime
數(shù)據(jù)塊:文件數(shù)據(jù)存儲區(qū)域
小測驗:請使用 mkfs.ext4 指令,創(chuàng)建磁盤文件系統(tǒng),同時熟練掌握將 sfs 服務(wù)的使用方法
HW_005 磁盤分區(qū)掛載
硬盤分區(qū)安裝文件系統(tǒng)后,還需掛載到 Linux 下的樹形文件目錄,操作系統(tǒng)才可以直接操作文件。有多個硬盤的服務(wù)器,一般會將不同目錄掛載到不同硬盤,這樣做有幾個好處
硬盤資源隔離,一塊盤壞了只影響本盤文件
單個硬盤讀寫性能有限,需做訪問負(fù)載分擔(dān)(在硬盤分區(qū)時,就得考慮訪問均衡問題)
獨立伸縮,當(dāng)某個盤容量不夠時,支持獨立擴(kuò)容
獨立備份,對特定的存儲有關(guān)鍵數(shù)據(jù)的盤進(jìn)行備份
云時代之前,文件系統(tǒng)掛載磁盤分區(qū)一般有一個推薦配置方案,參考下表
注:上表是 Linux 分區(qū)的一個建議,無論是目錄容量還是分區(qū)規(guī)則,都是云時代之前的最佳實踐經(jīng)驗,一定要結(jié)合自己的實際使用情況做容量規(guī)劃
云服務(wù)器一般不涉及該步驟,分區(qū)是默認(rèn)建好的,如果有外部硬盤如 EVS,則需考慮規(guī)劃方式
小測驗:請使用命令,將 /dev/sda1 掛載到 /boot,/dev/sda2 掛載到自建目錄 /home/lib,并對 /home/lib 執(zhí)行 umount 操作
HW_006 NFS 網(wǎng)絡(luò)文件系統(tǒng)
nfs 是一種網(wǎng)絡(luò)文件系統(tǒng),支持通過 nfs 將外部服務(wù)器的文件系統(tǒng),掛接在本地目錄下,操作系統(tǒng)一般默認(rèn)未安裝 nfs,可以使用以下指令完成安裝
[root@hcie ~]# sudo yum -y install nfs-utils
華為云彈性文件服務(wù) sfs 支持在云端建立 nfs 服務(wù)端,將 sfs 服務(wù)下的文件系統(tǒng)掛接到 Linux 系統(tǒng),可以先登錄華為云 sfs 官網(wǎng),新建文件系統(tǒng)資源,得到 sfs 的訪問地址,參考下圖所示
小測驗:請使用命令,分別實現(xiàn)手動和自動掛載 sfs 文件系統(tǒng)到 Linux 服務(wù)器上,參考掛載NFS文件系統(tǒng)到云服務(wù)器(Linux) 和 自動掛載文件系統(tǒng)
賬號與權(quán)限 Account and Authority (AA)
AA_001 用戶管理
Linux 用戶分為超級管理云用號 root 和普通用戶,超級管理員 root 用戶標(biāo)識符 UID 為 0,普通用戶 UID 為 500~6000,1~499 用于偽用戶,提供給系統(tǒng)進(jìn)程使用,不能使用偽用戶登錄系統(tǒng)
添加用戶使用 useradd 命令,參考下面指令
[root@hcie ~]# useradd test01 useradd: warning: the home directory already exists. Not copying any file from skel directory into it. Creating mailbox file: File exists [root@hcie ~]# cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin test01:x:1000:1000::/home/test01:/bin/bash [root@hcie ~]# ll /home total 4.0K drwx------ 2 test01 test01 4.0K Aug 21 17:51 test01 [root@hcie ~]# su test01 Welcome to 4.19.90-2003.4.0.0036.oe1.x86_64 System information as of time: Sat Aug 21 17:53:14 CST 2021 System load: 0.00 Processes: 104 Memory used: 1.5% Swap used: 0.0% Usage On: 3% IP address: 192.168.1.127 Users online: 1 [test01@ecs-9e0e root]$ exit
使用 useradd 創(chuàng)建用戶后,在 /etc/passwd 可以看到用戶信息,/home 目錄下創(chuàng)建用戶名命名的專屬文件夾,useradd 創(chuàng)建的用戶默認(rèn)是沒有密碼的,使用 su test01 即可切換到對應(yīng)的用戶,不需要設(shè)置密碼
用戶信息保存在 /etc/passwd,用戶密碼則以加密方式存儲在 /etc/shadow,參考下面命令,展示了配置用戶密碼后的效果
[root@hcie ~]# passwd test01 Changing password for user test01. New password: Retype new password: passwd: all authentication tokens updated successfully. [root@hcie ~]# cat /etc/shadow root:!!$6$fmS6czcBxVuizxIA$CDgEch4xQbQJizmjmWwX5N04RbSo6ejxpbalF0Z64LeMzY/xd7OSC.LE87AYwlJ6F18SJYhdRH8IWWiRY4Hfc/:18400:0:99999:7::: bin:*:18344:0:99999:7::: daemon:*:18344:0:99999:7::: test01:$6$LYAkN6DvI5iM6JxD$7TVku.NEJLy8Fg3bHpWiE.RH/vR9tz4HCG/fAYc0FdtOSXdlfAUusD7D4Hy0q8TKbiXYNSNfM12dZdWNPSVNZ.:18860:0:99999:7:::
有多種方式可以查看當(dāng)前用戶狀態(tài)信息,請參考下面指令
[root@hcie ~]# id root uid=0(root) gid=0(root) groups=0(root) [root@hcie ~]# who root pts/0 2021-08-21 21:44 (119.123.79.60) root pts/1 2021-08-21 23:21 (119.123.79.60) [root@hcie ~]# w 23:55:26 up 7 days, 13:28, 2 users, load average: 0.00, 0.00, 0.00 USER TTY LOGIN@ IDLE JCPU PCPU WHAT root pts/0 21:44 2:10m 0.00s 0.00s -bash root pts/1 23:21 6.00s 0.05s 0.00s w [root@hcie ~]# whoami root
注:使用 passwd 命令設(shè)置密碼后,在 /etc/shadow 文件種對應(yīng)的用戶名 test01 后面,就會有一段加密字符串,是系統(tǒng)根據(jù) md5 SHA256 或 SHA512 加密原始密碼生成的
小測驗:請使用相關(guān)命令創(chuàng)建用戶 user02,配置密碼后,再刪除該用戶及用戶所屬的 /home 目錄
AA_002 用戶組管理
Linux 用戶組 (group) 適用于多個用戶的權(quán)限管理,用戶組包含兩種類別:
主要組(Primary Group,又稱為私有組 Private Group):創(chuàng)建用戶時,如果未指定用戶組,默認(rèn)將創(chuàng)建一個用戶名同名的用戶組
次要組(Secondary Group,又稱為公共組 Public Group):用戶創(chuàng)建時可以指定組名,次要組支持添加多個用戶
主要組和次要組之間可以相互轉(zhuǎn)化,如私有組新增了其他的用戶,則變?yōu)楣步M
用戶組管理支持新增、刪除用戶組,從用戶組中添加或刪除用戶,或?qū)χ付ㄎ募乃鶎儆脩艉徒M進(jìn)行修改,請查看如下示例介紹:
[root@hcie ~]# groupadd gtest01 [root@hcie ~]# tail -n1 /etc/group gtest01:x:1001: [root@hcie ~]# gpasswd -a test01 gtest01 Adding user test01 to group gtest01 [root@hcie ~]# groups test01 # 顯示 test01 所屬 groups test01 : test01 gtest01 [root@hcie ~]# tail -n1 /etc/group gtest01:x:1001:test01 [root@hcie ~]# chown -R test01.gtest01 file
小測驗:
創(chuàng)建組 gtest02,添加設(shè)置組密碼,將 user01 添加到組
將 user01 從組 gtest01 中刪除
將 user01 所屬組修改為 gtest02
AA_003 文件權(quán)限管理
Linux 操作系統(tǒng)中,所有的文件都有對應(yīng)的權(quán)限設(shè)置,參考下面指令
[root@hcie ~]# ll -a /root total 44K dr-xr-x---. 4 root root 4.0K Aug 14 11:41 . dr-xr-xr-x. 20 root root 4.0K Aug 14 10:27 .. -rw------- 1 root root 6.6K Aug 22 14:22 .bash_history -rw-r--r--. 1 root root 18 Oct 29 2019 .bash_logout -rw-r--r--. 1 root root 176 Oct 29 2019 .bash_profile -rw-r--r--. 1 root root 198 Aug 14 11:33 .bashrc drwx------ 3 root root 4.0K May 18 2020 .cache -rw-r--r--. 1 root root 100 Oct 29 2019 .cshrc -rw------- 1 root root 0 May 18 2020 .history drwx------ 2 root root 4.0K Aug 14 10:27 .ssh -rw-r--r--. 1 root root 129 Oct 29 2019 .tcshrc
dr-xr-x— 即對應(yīng)的文件權(quán)限配置,其各字段的含義參考下圖:
上圖中,權(quán)限設(shè)置包含了 3 種角色:
Owner 指文件所屬用戶
Group 指文件所屬用戶組
Other Users 和文件沒有用戶和用戶組關(guān)系的其他用戶
權(quán)限設(shè)置包含 3 種類別,針對文件和目錄兩種文檔類型,其含義略有差別:
注:上述計數(shù)含義,在介紹 chmod 權(quán)限修改時,會有介紹
文件權(quán)限可以按需修正,包括所屬組、用戶和權(quán)限設(shè)計,參考下面指令:
chgrp test01 gtest01 chown root:root file chmod u+wx,g-r,o=rx file chmod a-w file
參考上面指令可以發(fā)現(xiàn),可以對 u(用戶) g(用戶組) o(其他) a(所有角色) 相應(yīng)用戶的權(quán)限信息,做出修改,其修改操作符有 3 個,分別介紹如下:
還有一種方式可以對權(quán)限進(jìn)行修改,請參考以下指令,嘗試不同配置下的訪問權(quán)限差異:
[root@hcie ~]# touch file [root@hcie ~]# ll total 0 -rw------- 1 root root 0 Aug 22 14:44 file [root@hcie ~]# chmod 771 file && ll total 0 -rwxrwx--x 1 root root 0 Aug 22 14:44 file [root@hcie ~]# chmod 421 file && ll total 0 -r---w---x 1 root root 0 Aug 22 14:44 file [root@hcie ~]# chmod 651 file && ll total 0 -rw-r-x--x 1 root root 0 Aug 22 14:44 file
那么 rwx 和 771 421 的數(shù)字間,是一個什么映射關(guān)系呢,參考下圖:
小測驗:請參考下面指令獲取 file 文件當(dāng)前的權(quán)限,分別使用 u+r 和 777 兩種方式,對權(quán)限進(jìn)行修改滿足下述要求
用戶權(quán)限(u):能夠使用編輯程序打開文件,對文件內(nèi)容進(jìn)行修改,并使用 python 命令運(yùn)行文件
用戶組權(quán)限(g):能夠使用編輯程序打開并查看文件內(nèi)容,但無法修改文件,也無法運(yùn)行文件
Others 權(quán)限(o):支持運(yùn)行文件,但不支持對文件進(jìn)行讀寫
[root@hcie ~]# ll run.py -rw------- 1 root root 0 Aug 22 14:44 run.py
軟件管理 Software (SW)
SW_001 源碼安裝 Apache
Linux 安裝軟件有源碼安裝和安裝包安裝兩種(Windows 一般只使用安裝包安裝),這是由 Linux 自身的 GPL 授權(quán)特性決定的,在 Linux 上運(yùn)行的軟件,一般都采用了 GPL 或者類似的開源授權(quán),會提供源碼
一般而言,源碼安裝要相對復(fù)雜些,包括以下幾個步驟:
下載源碼安裝包:一般使用 wget 指令訪問官網(wǎng)獲取源碼,默認(rèn)保存到 /usr/local
配置生成 Makefile 文件:執(zhí)行 ./configure 命令,生成適合本系統(tǒng)運(yùn)行的 Makefile 文件,后續(xù) make 命令會基于該文件完成編譯和鏈接操作
編譯:make 指令,將源碼文件 (包括 .c 源碼文件和 .h 頭文件) 編譯成二進(jìn)制目標(biāo)文件 (*.o)
安裝:執(zhí)行 make install 命令將上一步編譯好的二進(jìn)制文件安裝到指定的目錄
現(xiàn)在我們來到 Linux 建站最常見的步驟:通過源碼安裝 Apache HTTP Server 服務(wù)。Apache HTTP 服務(wù)是業(yè)界最流行的一個開源 Web 服務(wù)器,是 LAMP 組合 Linux Apache Mysql PHP 中的一員,Apache HTTP 服務(wù)在 Linux 中運(yùn)行指令為 httpd
注:以 Apache HTTP 服務(wù)為起點,Apache 逐漸成為開源世界的絕對主導(dǎo)力量,其中 Apache 軟件基金會 引領(lǐng)開源生態(tài)建設(shè)方面,眾多優(yōu)秀的開源項目如 Flink Hadoop Kafka Maven Tomcat 等頂頂大名的開源組件
源碼安裝需要提前安裝幾個必備的編譯軟件,wget vim openEuler 系統(tǒng)預(yù)裝就有,gcc gcc-c++ cmake 等則需要進(jìn)行安裝;apr-util 組件的安裝依賴 expat-devel,也需要提前安裝好,否則后續(xù)會報錯;pcre-devel 則是 httpd 組件依賴的服務(wù),也需要提前安裝好
[root@hcie ~]# yum install gcc gcc-c++ cmake [root@hcie ~]# yum install expat-devel pcre-devel
Apache httpd 依賴 pcre apr apr-util 幾個組件,因此安裝 Apache 前需先完成這幾個組件的安裝,這幾個服務(wù)組件都支持通過源碼安裝
現(xiàn)在我們進(jìn)入正題,開始 Apache 組件的源碼安裝,第一步先通過 wget 指令獲取到 Apache httpd 及其他幾個依賴組件的源碼
[root@hcie ~]# wget https://downloads.apache.org/httpd/httpd-2.4.46.tar.gz [root@hcie ~]# wget https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.gz [root@hcie ~]# wget https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.7.0.tar.gz [root@hcie ~]# wget https://ftp.pcre.org/pub/pcre/pcre-8.45.tar.gz # 注意,上面下載 pcre 版本時,不能選擇 pcre2 相應(yīng)的版本,否則后面 Apache 會安裝失敗,Apache 對應(yīng)的是 pcre 組件 [root@hcie ~]# tar -zxvf apr-1.7.0.tar.gz [root@hcie ~]# cd apr-1.7.0 [root@hcie ~]# ./configure --prefix=/usr/local/apr [root@hcie apr-1.7.0]# make && make install # apr-util pcre 和 httpd 的解壓操作請自行完成,apr-util pcre 的 make && make install 步驟下面已省略 [root@hcie apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr [root@hcie pcre-8.45]# ./configure --prefix=/usr/local/pcre # httpd 在執(zhí)行 ./configure 編譯階段,需要用到 apr 和 apr-util 相應(yīng)源碼文件,必須復(fù)制到 srclib 目錄下,否則 httpd 在執(zhí)行 make && make install 時將報錯 [root@hcie ~]# cd httpd-2.4.46/srclib [root@hcie srclib]# cp -r ~/apr-1.7.0 apr [root@hcie srclib]# cp -r ~/apr-util-1.6.1 apr-util [root@hcie httpd-2.4.46]# ./configure --prefix=/usr/local/apache2 --with-included-apr --with-pcre=/usr/local/pcre [root@hcie httpd-2.4.46]# make && make install # 運(yùn)行 Apache httpd 服務(wù) [root@hcie httpd-2.4.46]# cd /usr/local/apache2/bin [root@hcie bin]# ./apachectl start # 驗證 httpd 服務(wù)是否正常運(yùn)行 [root@hcie bin]# ps -ef | grep httpd root 139342 1 0 22:21 ? 00:00:00 /usr/local/apache2/bin/httpd -k start daemon 139344 139342 0 22:21 ? 00:00:00 /usr/local/apache2/bin/httpd -k start daemon 139345 139342 0 22:21 ? 00:00:00 /usr/local/apache2/bin/httpd -k start daemon 139346 139342 0 22:21 ? 00:00:00 /usr/local/apache2/bin/httpd -k start root 139440 27613 0 22:21 pts/1 00:00:00 grep --color=auto httpd
完成以上操作后,登錄服務(wù)器網(wǎng)址,終于看到了期待的畫面:
小測驗:Apache 建站是以前站長的第一課,源碼安裝又是玩 Linux 的一個必備技能,請參考上述操作指南,一步步使用源碼完成 Apache httpd 服務(wù)的安裝,對深入理解源碼安裝的原理、步驟非常有幫助
SW_002 安裝工具
不同的 Linux 發(fā)行版本使用不同的軟件安裝工具,參考下表
下面將重點說明 Redhat 系列的兩個軟件安裝工具 rpm 和 yum
rpm 是使用最廣泛的安裝工具,已成為 Linux 行業(yè)的軟件安裝標(biāo)準(zhǔn),提供了軟件打包、安裝、查詢、升級、卸載、校驗等功能;rpm 包本身并不解決包依賴的問題,比如通過 rpm 安裝軟件 A,軟件 A 依賴軟件 B 和軟件 C,而軟件 B 又依賴 軟件 D,則 rpm 安裝軟件的順序就是 D -> B -> C -> A
由于 rpm 安裝程序包非常多,彼此間的依賴關(guān)系極其復(fù)雜,新手用戶往往在安裝程序的第一步,就會遇到各種阻礙,用戶需要逐項梳理依賴關(guān)系,一個個下載彼此依賴的程序包,整個過程是非常磨人的
注:有一點要特別注意,rpm 包并不是跨平臺通用的,不同的 Linux 發(fā)行系列,甚至同一個發(fā)行系列下的不同版本,使用的 rpm 包都是不同的;另外針對不同的 cpu 架構(gòu)如 x86 和 arm,rpm 包也是不一樣的,下載的時候要特別注意
yum 就是為了解決 rpm 的包依賴問題而產(chǎn)生的,yum 通過 repos 庫保存安裝包文件,維護(hù)不同安裝包之間的依賴關(guān)系,當(dāng)用戶使用 yum 安裝軟件 A 時,yum 將自動識別所有包依賴關(guān)系,并完成依賴包的安裝,大幅提升了軟件安裝效率
小測驗:請說明以下軟件安裝相關(guān)指令執(zhí)行的功能
rpm -ivh --nodeps a.rpm rpm -qa a.rpm rpm -ql a* rpm -qi a.rpm rpm -qa rpm -qf file_from_a rpm -e a.rpm rpm -Uvh a.rpm rpm -V a.rpm yum list all yum list installed yum list recent yum repolist yum info a.rpm yum provides /etc/fstab yum clean all yum makecache yum -y install sw.a yum reinstall sw.a yum update sw.a yum remove sw.a yum localinstall a.rpm
SW_003 安裝源配置
和 CentOS 一樣,openEuler 使用 yum 作為系統(tǒng)自帶的主力安裝工具,相關(guān)配置主要通過 /etc/yum.conf 文件和 /etc/yum.repos.d 目錄兩部分完成
yum 安裝需要配置安裝源,作為安裝包依賴關(guān)系和及安裝包的下載來源,華為云預(yù)裝的 openEuler 操作系統(tǒng),默認(rèn)配置了 openEuler 官網(wǎng)作為安裝源,參考下面命令:
[root@hcie yum.repos.d]# ll /etc/yum.repos.d total 4.0K -rw-r--r--. 1 root root 1.7K May 18 2020 openEuler_x86_64.repo [root@hcie yum.repos.d]# cat openEuler_x86_64.repo [OS] name=OS baseurl=http://repo.openeuler.org/openEuler-20.03-LTS/OS/$basearch/ enabled=1 gpgcheck=1 gpgkey=http://repo.openeuler.org/openEuler-20.03-LTS/OS/$basearch/RPM-GPG-KEY-openEuler [everything] name=everything baseurl=http://repo.openeuler.org/openEuler-20.03-LTS/everything/$basearch/ enabled=1 gpgcheck=1 gpgkey=http://repo.openeuler.org/openEuler-20.03-LTS/everything/$basearch/RPM-GPG-KEY-openEuler [EPOL] name=EPOL baseurl=http://repo.openeuler.org/openEuler-20.03-LTS/EPOL/$basearch/ enabled=1 gpgcheck=1 gpgkey=http://repo.openeuler.org/openEuler-20.03-LTS/OS/$basearch/RPM-GPG-KEY-openEuler [debuginfo] name=debuginfo baseurl=http://repo.openeuler.org/openEuler-20.03-LTS/debuginfo/$basearch/ enabled=1 gpgcheck=1 gpgkey=http://repo.openeuler.org/openEuler-20.03-LTS/debuginfo/$basearch/RPM-GPG-KEY-openEuler [source] name=source baseurl=http://repo.openeuler.org/openEuler-20.03-LTS/source/ enabled=1 gpgcheck=1 gpgkey=http://repo.openeuler.org/openEuler-20.03-LTS/source/RPM-GPG-KEY-openEuler [update] name=update baseurl=http://repo.openeuler.org/openEuler-20.03-LTS/update/$basearch/ enabled=0 gpgcheck=1 gpgkey=http://repo.openeuler.org/openEuler-20.03-LTS/OS/$basearch/RPM-GPG-KEY-openEuler
小測驗:若服務(wù)器原先使用的并非 openEuler 官網(wǎng)的 yum 源,怎么配置使用官網(wǎng)的鏡像源?
SW_004 軟件定期執(zhí)行
Linux 使用 crontab 定期執(zhí)行軟件,可以進(jìn)行非常精準(zhǔn)的控制,先看下 crontab 查詢和刪除定時任務(wù)的用法:
[root@hcie ~]# crontab -l * * * * 1 /bin/ls [root@hcie ~]# crontab -r [root@hcie ~]# crontab -l no crontab for root
命令 crontab -e 可以進(jìn)入定時任務(wù)的編輯頁面,每行配置一個定時任務(wù),前 5 個參數(shù)都是數(shù)字,用來設(shè)置定時任務(wù)發(fā)起時間,最后 1 個參數(shù)是可執(zhí)行程序的絕對路徑,系統(tǒng)將定時調(diào)用可執(zhí)行程序
針對前 5 個參數(shù)的含義,參考下表說明(以下內(nèi)容均摘自 runoob 網(wǎng)站)
* * * * * - - - - - | | | | | | | | | +----- 星期中星期幾 (0 - 6) (星期天 為0) | | | +---------- 月份 (1 - 12) | | +--------------- 一個月中的第幾天 (1 - 31) | +-------------------- 小時 (0 - 23) +------------------------- 分鐘 (0 - 59) # 每分鐘執(zhí)行一次 * * * * * /bin/ls # 在 12 月內(nèi), 每天的早上 6 點到 12 點,每隔 3 個小時 0 分鐘執(zhí)行一次 0 6-12/3 * 12 * /usr/bin/backup # 周一到周五每天下午 5:00 寄一封信給 alex@domain.name 0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata # 每月每天的午夜 0 點 20 分, 2 點 20 分, 4 點 20 分....執(zhí)行 echo "haha" 20 0-23/2 * * * echo "haha" # 每兩個小時重啟一次apache 0 */2 * * * /sbin/service httpd restart # 每天7:50開啟ssh服務(wù) 50 7 * * * /sbin/service sshd start # 每天22:50關(guān)閉ssh服務(wù) 50 22 * * * /sbin/service sshd stop
小測驗:請針對下文列出的 crontab 不同場景,說明配置方法
每月1號和15號檢查/home 磁盤
每小時的第一分執(zhí)行 /home/bruce/backup這個文件
每月的1、11、21、31日是的6:30執(zhí)行一次ls命令
參考資料
Linux 最佳分區(qū)方案
如何使用 openEuler
Linux 用戶和權(quán)限管理
Linux Group Management Explained with Examples
Linux crontab 命令
源碼安裝 Apache
3D TLC NAND To Beat MLC
SSDs will crush hard drives
目錄和前后章節(jié)
90 天挑戰(zhàn) HCIE Cloud
上一章 - Linux 開啟云端之門
下一章 - 編輯器之神 VI
實時更新信息,請關(guān)注微信公眾號和微博 齊月太白
點擊進(jìn)入微博 齊月太白:https://weibo.com/moontaibai
Linux MySQL 彈性云服務(wù)器 ECS
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。