運維基礎

来源:https://www.cnblogs.com/oldmeng/archive/2020/05/14/12853426.html
-Advertisement-
Play Games

學習筆記 目錄 前言 運維人員的核心職責:... 1 第一章伺服器硬體與組成原理... 1 伺服器... 1 1.伺服器的分類:... 1 2.伺服器的組成:... 2 1)電源:... 2 2)cpu. 2 3)記憶體... 2 4)磁碟... 3 5)RAID卡(陣列卡).. 3 6)遠程管理卡: ...


學習筆記

 目錄

前言  運維人員的核心職責... 1

第一章伺服器硬體與組成原理... 1

伺服器... 1

1.伺服器的分類:... 1

2.伺服器的組成:... 2

1)電源:... 2

2)cpu. 2

3)記憶體... 2

4)磁碟... 3

5)RAID卡(陣列卡).. 3

6)遠程管理卡:.. 3

第二章 LINUX系統介紹與環境搭建... 4

1.LINUX的起源與發展... 4

2.下載安裝VM虛擬機... 4

3.CentOS7.5  安裝... 5

4.下載安裝遠程連接工具.. 20

第三章 遠程連接管理... 20

1.遠程連接及服務無法上網原因:.. 20

1)檢查ip地址是否正確... 20

2)檢查網卡信息是否正確.. 20

3)檢查是否關閉了CentOS7 NetworkManager 20

4)檢查vmware虛擬網路編輯器... 20

5)檢查VMware服務在Windows下的服務是否正常運行... 20

6)檢查VMware網卡問題(在Windows下的網路連接里).. 20

7)檢查Windows是否開啟了WIFI熱點軟體,是否被共用.. 21

8)測試埠是否打開.. 21

9)虛擬機克隆之後網卡徹底無法啟動... 21

第四章 Linux命令行組成結構... 21

1.Linux系統命令操作語法的格式... 21

2.命令行中的快捷鍵.. 21

3.命令... 22

第五章 Linux目錄文件與系統啟動... 26

1.Linux系統目錄建構基本特點:... 26

2.Linux 的目錄結構詳解:.. 27

3./etc 下系統初始化及配置相關文件.. 28

1)/etc/sysconfig/network-    網卡配置文件... 28

2)/etc/resolv.conf    DNS客戶端配置.. 28

3)/etc/hostname   配置主機名... 29

4)/etc/hosts   本地配置解析功能變數名稱.. 29

5)/etc/fstab   開機自動掛載... 29

6)/etc/rc.local    開機自動執行... 29

7)linux 下運行級別... 29

8)/etc/profile   環境變數配置... 30

9)/etc/bashrc   別名... 30

10)/etc/issue 和/etc/issue.net  用戶登錄系統前顯示的內容... 30

11)/etc/motd    用戶登錄系統後顯示的內容... 30

12)/etc/redhat-release  查看當前OS版本.. 30

13)history   查看歷史命令... 31

4.  /var. 31

1)/var/log/messages   系統預設的日誌文件.. 31

2)/var/log/secure    系統的安全日誌... 31

5.  /proc   虛擬的目錄,記憶體的映射... 31

1)  /proc目錄下常用文件介紹:... 31

2)/proc/cpuinfo  cpu信息... 31

3)/proc/meminfo  查看記憶體信息... 32

4)/proc/loadavg  load average系統負載.. 32

5) /proc/mounts  查看掛載信息... 33

第二次考... 33

6.軟體安裝方法:... 35

1)yum.. 35

2)rpm.. 35

第六章  系統優化... 36

1.  yum源... 36

2. 創建普通用戶... 36

1)設置非互動式密碼:... 36

2)切換到用戶:.. 36

3)查看當前用戶是誰:... 36

4)查看用戶是否創建:... 37

5)在oldboy 回到root 37

6)如果直接使用Xshell連接 則上面的方法無效.. 37

3. 關閉SElinux  (必須關)... 37

4. 關閉防火牆... 38

1)CentOS7.x. 38

2)CentOS6.x. 38

3)在生產環境中.. 39

5. 字元集,亂碼... 39

1).如何查看字元集  language 語言... 39

2).臨時修改字元集  重啟失效... 39

3).永久修改字元集... 39

4).命令方式修改字元集... 40

6.安裝常用工具軟體,命令... 40

7.網路服務,永久和臨時關閉NetworkManager 40

第七章... 40

第八章  文件屬性,文件和目錄查找命令.. 41

1.文件和目錄的查找... 42

2. 文件的屬性... 45

3.chmod  修改許可權... 46

4. 硬鏈接 和 軟鏈接... 47

1)硬鏈接: 47

2)軟鏈接... 48

第三次考... 48

第九章 通配符與特殊符號.. 51

1. 特殊符號... 51

2. 通配符(wildcard).. 52

第十章  正則表達式... 53

1.基本正則表達式.. 53

2.擴展正則表達式.. 54

第十一章Linux系統啟動流程.. 56

1.CentOS 6. 56

2.CentOS 7. 57

第十二章 用戶管理知識... 58

Linux系統用戶相關配置文件.. 58

1.存儲用戶信息文件/etc/passwd. 58

2.存儲用戶密碼信息文件/etc/shadow.. 58

3.useradd   添加用戶... 58

批量添加用戶:設置密碼和設置隨機密碼.. 58

4.userdel    刪除用戶... 59

5.passwd   設置密碼... 59

6.chown    修改文件或目錄的所有者和屬於的用戶組... 59

7.如何讓系統更安全:... 59

1)最小化安裝系統和軟體.. 59

2)保護好root用戶  禁止root用戶遠程登錄,.. 59

3)分析日誌... 59

4)文件系統許可權.. 59

5)給重要的文件或命令做一個指紋.. 59

6)定時任務:md5sum.. 60

8.用戶查詢與切換命令... 60

9.sudo 臨時讓用戶獲得root許可權(尚方寶劍).. 60

第十三章Linux系統許可權知識.. 61

第四次考... 73

第十四章 定時任務... 80

定時任務書寫要領:... 83

第十五章 磁碟管理... 86

Linux同步網路時間... 93

Linux誤刪文件後恢複數據... 96

第十六章 課程知識回顧... 101

 

 

前言  運維人員的核心職責

   網站數據不能丟失;

   網站7*24小時運行穩定;

   提升用戶體驗。

第一章 伺服器硬體與組成原理

   運維人員的主要戰場

   伺服器由於需要提供高可靠的服務,因此在處理能力,穩定性,可靠性,安全性,可擴展性,可管理性等方面要求較高。

01.硬體伺服器的分類:

1.塔式伺服器:由於其個體較大,占用空間多,也不方便管理,所以使用較少。

2.刀片式伺服器:高可用,高密度,可操作性很高

3.機架式伺服器:1U=4.45cm  厚度

常見的伺服器品牌;DELL  IBM  HP  聯想  浪潮等

DELL

 

 

時間

1U

2U

2010年以前

1850  1950

2850  2950

2010-2013

R410  R610

R710

2014-2016

R420/430  R620/630

R720/730    

2018

 

R740

互聯網公司應用最廣

 

IBM

 

1U

3550/m3   3550/m5

2U

3650

4U

3850

8U

3950

較高大上,質量好,但價格貴,互聯網公司不常用

 

IOE運動:

I=IBM          伺服器

O=Oracle      資料庫

E=EMC        存儲

 

HP

 

2U

DL380G7/G8

部分互聯網公司應用

 

浪潮     國產伺服器,傳統企業,學校用

華為     國產伺服器

聯想     國產伺服器,用戶較廣,雜

02.硬體伺服器的組成:

1.電源:

雙電源 雙路供電(民用電+商用電)

UPS蓄電池 (30分鐘-1小時)

柴油發電機

2.cpu   ---負責運算和控制

相當於人的大腦  負責運算和控制  (需加風扇負者散熱,很關鍵)

 

常見品牌:Intel  AMD

   一般企業里的伺服器:用2-4顆  記憶體總量一般16G-256G(32G,64G)

   做虛擬化的宿主機的伺服器:用4-8顆  記憶體總量一般48G-128G(6-10個虛擬機)

3.記憶體  ---負者電腦數據的中轉

cpu和磁碟之間的緩衝的設備,負責電腦數據的中轉,記憶體的容量和處理速度直接決定了數據傳輸的快慢

  

程式:靜態的放在磁碟里的數據,代碼文件

進程:正在運行著的程式

守護進程:一直持續保持運行著的程式

 

buffer寫入數據到記憶體里,這個存儲數據的空間稱為緩衝區

cache:從記憶體讀取數據,這個存數據的記憶體空間稱為緩存區

4.磁碟 ---永久存放數據的地方

1)硬碟的介面類型:

IDE  SCSI  (已淘汰)

 

SATA (機械)  7200-7500轉

優點:容量大,價格便宜。

缺點:讀寫速度慢

 

SAS             15000轉

 

SSD (固態)

優點:速度快

缺點:容量小,價格貴

  

2)硬碟的類型:

機械硬碟

SSD固態硬碟

 

3)性能與價格:

SSD(固態)---SAS---SATA

 

4)實際中的使用:  

熱點數據   -----SSD

冷數據      -----SATA

5.RAID卡(陣列卡)  ---可整合所有磁碟的容量

作用:

可以獲得更高的容量

可以使數據更安全

可以獲得更高的性能(讀寫速度快)

  

磁碟陣列:

 

容量

性能

安全

RAID0

至少要一塊物理磁碟,容量時磁碟的總和

讀寫都很快

任何一塊損壞,所有數據不能使用

RAID1

損失50%的數據容量,只能2塊硬碟

不能提高存儲性能,理論上寫性能和單盤相差不大

數據安全性高

RAID5

需要至少3塊硬碟,損失一塊硬碟容量

寫入速度不快,讀取ok

最多可以損壞一塊硬碟

RAID10

最少4塊硬碟,增加硬碟必須是2的倍數,容量是所有硬碟容量的一半

寫入和讀取都很快

最多損壞一半硬碟

 

6.遠程管理卡:  ---遠程管理伺服器

  遠程管理卡有伺服器自帶的,也有獨立的。

  伺服器自帶的遠程管理卡,可以關機,開機,但是看不到開關機的顯示過程,所以選擇獨立 的遠程管理卡。

  大客戶有KVM遠程管理卡,特大客戶會有自己的人員駐扎機房。

 

作用:

    遠程開關機

    遠程製作raid

    遠程安裝系統

 

分類:

    集成管理卡

    獨立管理卡

 

廠商:

    Dell--idrac

    Hp--ilo

    Ibm—rsa

 

 

03.雲主機伺服器

阿裡雲

騰訊雲

亞馬遜雲

等等…

 

 

 

第二章 LINUX系統介紹與環境搭建

01.LINUX的起源與發展

1.Linux的發展歷程

1969年 Unix在AT&T的貝爾實驗室誕生,在70年代逐步盛行,這期間產生了一個比較重要的分支BSD系統,因此各大廠商根據自身公司硬體架構研發了各種版本的Unix系統。

Unix促使了C語言的誕生。

UNIX有強大的網路能力,強大的資料庫能力,可擴展性,強大開發能力,技術成熟可靠性強。

 

70年代末,Unix面臨被AT&T回收版權的問題,特別要求禁止對學生群體提供Unix系統源代碼。

 

80年代初,由於之前的Unix系統版權和源代碼限制問題,使當時大學教學Unix系統束縛很大,因此譚寧邦教授寫了Minix系統用於教學。

 

84年,斯托曼發起了開發自由軟體的運動,

公司:創辦了自由軟體基金會——FSF,

項目:成立了GNU項目.

規則:遵循GPL通用公共許可協議

 

90年,芬蘭赫爾辛基大學生托瓦茲首次接觸Minix系統,

91年,他在Minix上編寫各種驅動程式等操作系統內核組件,在年底公開了Linix內核源碼0.02版。

 

93年,Linux 1.0版本發行,Linix轉向GPL協議。

Linux屬於自由軟體,它具有UNIX全部的優秀特性,廣泛應用於各個領域。

           蛋----人----人----人

 

2.Linux發行版本:

Slackware,

Redhat,

Debian,

FeDora,

TurboLinux,

M按drake,

SUSE,

CentOS,

Ubuntu,  

紅旗,

麒麟……

  

Redhat   --- 服務收費

        CentOS  ---  Redhat去掉logo和收費的組件

        Fedora  ---  Redhat的測試版本

02.操作系統虛擬環境準備

下載安裝VM虛擬機

   VMware 12/15

   創建新的虛擬機—自定義

 

03.操作系統的選擇與安裝

1.操作系統架構介紹

區別:

    64位:

          運算能力:8車道

          記憶體容量:支持更大記憶體容量

          應用環境:應用在伺服器環境,處理大量程式運算

    32位:

運算能力:4車道

記憶體容量:支持記憶體容量有限

應用環境:應用在台式機環境

 

2.操作系統安裝

1)操作系統下載

官方網站下載:

    新版本:https://wiki.centos.org/Download

    舊版本:http://vault.centos.org/

鏡像平臺下載:

    阿裡雲鏡像:https://opsx.alibaba.com/mirror

    網易鏡像:http://mirrors.163.com/

    搜狐鏡像:http://mirrors.sohu.com/

    科技大學:http://mirrors.ustc.edu.cn/

    清華大學:https://mirrors.tuna.tsinghua.edu.cn/

 

2)部署安裝CentOS7.5

  

   

  

  

  

  

  

  

  

  

  

  

  

  

  

 

 

 

 

 

 

 

內核崩潰時使用,暫不開啟

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

總結安裝過程:

1. 創建虛擬機

2. 新增一塊網卡-->LAN區段

3. 掛載centos7.5光碟鏡像

4. 開機

5. 語言選擇(英語)

6. 修改時區->上海

7. 最小化安裝

8. 磁碟(預設—邏輯捲)

9. 自動配置分區

10.     分析內核崩潰原因的話,不用開啟,需要的時候再開啟也可以

11.      配置網路

12.     11 主機名修改

13.     設置root密碼

14.     使用xshell鏈接對應centos7伺服器

15.圖形化界面配置eth1網卡    命令nmtui

 

 

 

04.下載安裝遠程連接工具

免費的:Xshell ---  一路下一步完成安裝

花錢的:SecureCRT

簡易的:putty

 

 

第三章 遠程連接管理

01.遠程連接異常排錯思路:

檢查鏈路是否暢通 ---  ip概念說明

檢查策略是否阻止 ---  埠概念說明

檢查服務是否啟動 ---  服務協議概念說明

 

02.遠程連接異常排查:

1.檢查ip地址是否正確   

ip add/ifconfig

 

2.檢查網卡信息是否正確  

cat /etc/sysconfig/network-scripts/ifcfg-eth0

 

3.檢查是否關閉了CentOS7 NetworkManager

systemctl stop NetworkManager

systemctl disable NetworkManager

 

4.檢查vmware虛擬網路編輯器

NAT模式:子網IP:10.0.0.0  設置網關:10.0.0.254

 

5.檢查VMware服務在Windows下的服務是否正常運行

(win鍵+r)在命令行輸入(services.msc)

  

 

6.檢查VMware網卡問題(在Windows下的網路連接里)

(win鍵+e)輸入“網路連接”進入網卡管理找到VMnet8,查看他的狀態

 

7.檢查Windows是否開啟了WIFI熱點軟體,是否被共用

 

8.測試埠是否打開

telnet 10.0.0.200 22

 

9.虛擬機克隆之後網卡徹底無法啟動

刪除網卡裡包含UUID的行(CentOS7)

刪除UUID和HWADDR(CentOS5和6)

清空 /etc/udev/rules.d/70-persistent-net.rules(CentOS5和6)

重啟虛擬機Linux

 

10.檢查網卡狀態,重新載入虛擬網卡(多載入幾次)

Systemctl restart network

 

ping不通百度:一般看IP地址是否配置正確,DNS,網卡是否有誤

連接不上xshell,一般與防火牆,selinux有關

 

03.虛擬軟體網路模式特點

1.NAT模式

優點:和主機IP地址不同, 不容易發生地址衝突

缺點:不便於被其他物理主機進行訪問

2.Bridged橋接模式

優點:容易被其他物理主機進行訪問

缺點:和主機IP地址網段相同, 容易發生地址衝突

3.Only-host僅主機模式

優點:安全性更高

缺點:無法訪問外網

 

第四章 Linux命令行組成結構

絕對路徑:從/開始

相對路徑:不從/開始

01.Linux系統命令操作語法的格式

   命令       空格 [參數選項](條件) 空格          [文件或路徑]你要處理的內容

   結婚       空格 -有車有房有存款     空格          白富美

   結婚       空格 -沒車沒房沒存款     空格          女的就行

    rm        空格      -f           空格          /tmp/test.txt

    rm        空格          -fr        空格          /tmp/test.txt

 

# 在Linux中是註釋作用,不會執行

02.命令行中的快捷鍵

ctrl + a    游標快速移動到行首  Home 也可用

ctrl + e    游標快速移動到行尾  End 也可用

ctrl + l     快速清屏 相當於翻頁

ctrl + s     鎖當前的視窗

ctrl + q    解鎖當前的視窗

ctrl + r     搜索用過的命令

ctrl + u    剪切游標前的內容

ctrl + k     剪切游標後的內容

ctrl + y     粘貼剪切的內容

ctrl + ←  快速移動游標向左一個單詞

ctrl + →  快速移動游標向右一個單詞

ctrl + c     撤銷 中止當前的操作

ctrl + d    退出當前用戶  相當於 logout

Tab        命令或路徑的補全功能

ESC + .    獲取上一個命令的後一部分

03.命令:

登錄系統網路測試命令:

ping 網路地址/網站功能變數名稱

 

系統運行命令:

關機命令:

    shutdown -h now/0  可限定時間shutdown -c --取消

    halt

    poweroff

    init 0

 

重啟命令:

    shutdown -r now/0   可限定時間shutdown -c --取消

    reboot

    init 6

 

系統幫助命令:

    man 命令

 

系統快捷方式

ctrl + a      ---游標快速移動到行首  Home 也可用

ctrl + e    ---游標快速移動到行尾  End 也可用

ctrl + l     ---快速清屏 相當於翻頁

ctrl + s     ---鎖當前的視窗

ctrl + q    ---解鎖當前的視窗

ctrl + r     ---搜索用過的命令

ctrl + u    ---剪切游標前的內容

ctrl + k     ---剪切游標後的內容

ctrl + y     ---粘貼剪切的內容

ctrl + ←  ---快速移動游標向左一個單詞

ctrl + →  ---快速移動游標向右一個單詞

ctrl + c     ---撤銷 中止當前的操作

ctrl + d    ---退出當前用戶  相當於 logout

Tab        ---命令或路徑的補全功能

ESC + .    ---獲取上一個命令的後一部分

 

目錄路徑相關命令:

查看路徑:print working directory -> pwd

切換目錄:change directory -> cd

快速返回之前所在目錄:cd -

快速返回到上一級目錄:cd ..

快速返回用戶的家目錄:cd ~/cd

快速創建多級目錄信息:mkdir -p /oldboy/oldgirl/dog

 

文件相關命令:

創建空白文件:touch

查看數據屬性:list -> ls

顯示數據詳細信息:ls -l /oldboy

顯示最新數據信息:ls -lrt /oldboy

輸出字元信息:echo

將字元信息輸出到文件中:echo oldboy >/tmp/oldboy.txt

將字元信息追加到文件中:echo oldboy >>/tmp/oldboy.txt

查看文件信息:cat

合併多個文件的數據信息:cat /etc/service /etc/sysconfig/network-scripts/ifcfg-eth0

 

 

 

外部命令 軟體功能實現   使用的時候才從硬碟中載入到記憶體里,執行速度慢一些

內置命令:

內置命令 bash自帶的命令 開機會把命令載入到記憶體,執行速度快

type cd 查看是否是內部命令

help cd 查看shell內置命令的使用方法

 

ls 顯示文件或目錄的屬性信息

ls 預設顯示當前文件夾中的所有文件及文件夾,不包括隱藏文件

ls -a 顯示所有文件 文件夾包括隱藏文件

ls -l 顯示所有文件long類型長文件名

ls -R 遞歸的顯示文件內容:把所有文件夾中的內容全部顯示出來

ls /xx 顯示特定目錄下的文件內容

ls -l 命令的查詢結果

 

chmod 設置許可權

chmod ugo <!-- u創建者,g同組用戶,o其他用戶 -->

chmod 777 <!-- 所有用戶擁有所有權 -->

chmod 644 <!-- 文件創建之後的預設許可權 創建者可讀可寫 其他用戶可讀 -->

chmod 755 <!-- 文件夾創建後的預設許可權 -->

chmod 764 文件名 <!-- 擁有者可讀可寫可執行,同組用戶可讀可寫,其他用戶只能讀 -->

 

reboot <!-- 重啟伺服器

 

絕對路徑 從/開始的路徑

相對路徑 從當前路徑算起

 

對目錄的操作命令

pwd(print work diretory) <!-- 顯示當前的工作目錄 -->

mkdir -p xxx <!-- 創建目錄 -->

mkdir -p xxx/xxx <!-- 創建多級目錄 -->

cd(change directory) <!-- 切換工作目錄 類似windows cd -->

-->

cd . <!-- 當前目錄 -->

cd .. <!-- 上級目錄 -->

直接輸入cd命令 <!-- 沒有任何額外參數 回到家目錄(home) 或 cd ~ -->

 

對文件進行編輯

touch xxx <!-- 創建一個空文件 -->

vi/vim <!-- 編譯器 創建一個文件 -->

touch <!-- 一個存在文件 則修改它的創建時間 -->

 

cp 拷貝

cp 要拷貝的全文件名 目標文件名

 

mv 移動

mv 目標文件 移動目標路徑

mv 文件改名

mv 原文件名 目標文件名

 

rm 刪除

rmdir <!-- 刪除空的目錄 -->

 

rm 文件名 <!-- 刪除文件 -->

rm -rf 文件名/文件夾名

 

查看文件內容

cat 文件名

cat> 文件名

vi 文件名{

vi命令模式

:q <!-- 沒有改變文本內容時可推出 -->

:q! <!-- 改變文本內容後 強制退出 不保存結果 -->

:wq! <!-- 保存文本後退出 -->

dd <!-- 刪除當前行 -->

yy <!-- 複製當前行 -->

p <!-- 黏貼 -->

/xxx <!-- 搜索 -->

}

head 文件名 <!-- 預設顯示前10行 -->

head -n x 文件名 <!-- 指定顯示多少行 -->

tail 文件名 <!-- 預設查看最後10行 -->

tail -n x 文件名

 

分屏查看文件的內容

more 文件名

less 文件名(可按PageUp、PageDown 上下翻頁)

 

clear <!-- 清屏 -->

查看IP與管理網卡

ifconfig <!-- 查看ip地址/查看當前擁有的區域網 -->

ifconfig eth0 ip地址 <!-- 設置伺服器的臨時ip地址 -->

ifconfig eth0 down <!-- 關閉網卡 -->

ifconfig eth0 up <!-- 激活網卡 -->

 

創建用戶/用戶組及密碼

groupadd 組名 創建組 <!-- 組的信息會存放在/etc/group文件中 -->

groupadd -g 組編號 組名 創建組 <!-- 手工分配組id -->

useradd 用戶名 創建用戶 <!-- 會在/etc/passwd和/etc/shadow添加一行數據 -->

useradd -g 組名 用戶名 <!-- 創建用戶並分組 -->

userdel 用戶名 刪除用戶 <!-- 會刪除/etc/passwd 和 /etc/shadow 不會刪除家目錄 -->

userdel -r 用戶名 刪除用戶 <!-- 會刪除/etc/passwd 和 /etc/shadow 同時刪除家目錄 -->

passwd <!-- 直接修改自己的密碼 -->

passwd 用戶名 修改指定用戶的密碼 <!-- 普通用戶只能修改自己的密碼 -->

groupdel 組名 <!-- 刪除組 -->

passwd -l 用戶名 <!-- 給用戶加鎖 -->

 

useradd -u 100 -g mygroup1 -G mygroup2 -d /home/programmer s1 創建用戶s1

-u:指定用戶UID為100

-g:只用用戶的主要組為mygroup1

-G:指定用戶的附加組為mygroup2,一個用戶可以有多個附加組

-d:指定用戶的目錄名

usermod -u 601 -g 501 s1 <!-- 修改用戶的UID和GID -->

 

創建軟鏈接

ln -s 文件夾名 別名 <!-- 給文件名加別名,可以在任意位置通過別名訪問文件夾 相當於超鏈接 -->

ls -l 查詢結果中軟連接以l開頭

find 文件夾 -name "文件名" <!-- 可用模糊查找用*代表通配符 -name指 按文件名查找 -->

find 文件夾 -type d <!-- 從指定文件夾下開始查找類型為目錄的文件 d:目錄 -->

grep "指定字元" 文件名 <!-- 在指定文件中查找指定字元 -->

grep -v "指定字元" 文件名 <!-- 在指定文件中查找不包含指定字元 -->

ls | grep "指定字元" <!-- 將ls命令的查詢結果通過管道輸入給後面的命令 在查找包含指定字元的結果-->

 

進程相關的命令

<!-- PID進程號 TTY連接方式 TIME啟動時間 CMD哪個命令啟動的 -->

ps -aux <!-- 查詢所有進程 a:所有進程 x:包括不占用控制台的進程 u:哪個用戶創建的 -->

ps -ef <!-- 查詢所有進程 包括父進程 不顯示cup和記憶體占用率 -->

<!-- 文件過多時一般使用ps -aux | grep 'java' 進行過濾查找 -->

kill -9 PID <!-- 根據進程id結束進程 -->

top <!-- 動態顯示所有進程 -->

 

tar 壓縮與解壓縮命令

tar -cvf 文件名.tar 文件夾 <!-- 將指定文件夾壓縮 名為文件名 -->

tar -zcvf 文件名.tar.gz 文件夾 <!-- 解壓壓縮文件到指定目錄下 -->

tar -zxvf 文件名 <!-- 解壓文件夾預設解壓到當前目錄下 -->

 

centos6啟動/停止服務命令

service iptables stop <!-- 關閉當前防火牆 -->

service iptables start <!-- 開啟當前防火牆 -->

 

centos6開機啟動/停止服務命令

chkconfig iptables off <!-- 永久關閉防火牆 -->

chkconfig iptables on <!-- 開啟防火牆 -->

 

rpm 安裝軟體命令

rpm -ivh 文件名 <!-- i:安裝 v:顯示處理過程 h:顯示#表示進度 -->

rpm -qa <!-- 查詢系統中安裝的所有軟體 -->

rpm -ql xx <!-- 查詢已安裝的軟體包xx中的文件列表 -->

rpm -e xx <!-- 卸載指定軟體 -->

rpm -ivh --force 文件名 <!-- 強制安裝 如果要安裝的軟體已存在或版本比當前版本低必須強制安裝 -->

rpm -ivh --nodeps 文件名 <!-- 忽略軟體安裝時的依賴關係 -->

 

自動安裝軟體及需要的依賴軟體

yum install 文件名 <!-- 安裝 -->

yum remove 文件名 <!-- 卸載 -->

 

源碼tar包編譯安裝

make install

makeclean與make distclean

 

在集群中進行文件copy

scp 文件名 ip地址:/目標路徑

 

修改主機名

hostname 名字<!-- 臨時修改主機名 -->

vi /etc/sysconfig/network <!-- 永久的改變主機名 –

hostnamectl set-hostname 主機名(centos7)

第五章 Linux目錄文件與系統啟動

01.Linux系統目錄建構基本特點:

一切從根開始

Linux下麵的目錄是一個有層次的目錄結構

Linux中的每個目錄可以掛載到不同的設備上

 

在Linux下設備不掛載不能使用,不掛載的設備相當於沒門沒窗的監獄,掛載相當於給設 備創造了一個入口(掛載點,一般為目錄)

02.Linux 的目錄結構詳解:

 

/bin               放二進位命令文件

/boot             存放系統引導文件,內核

/dev              存放外部設備

/etc               存放系統配置文件

/home           存放普通用戶家目錄

/lib                存放函數庫文件

/64lib            存放64位函數庫文件

/lost+found    磁碟或文件系統損壞,斷電,臨時文件位置

/media           存放媒體文件

/mnt              臨時的掛載點

/opt               存放第三方軟體

/proc             虛擬目錄,存放記憶體中的程式和內核信息

/root              超級管理員的家目錄

/sbin             存放只有超級管理員才能用的相關命令

/sys              虛擬的目錄,記憶體信息

/tmp              存放臨時文件,相當於回收站

/usr               存放用戶的程式

/var               存放經常變換的文件,系統日誌

03./etc 下系統初始化及配置相關文件

1./etc/sysconfig/network-   ---網卡配置文件

/etc/sysconfig/network-scripts/ifcfg-eth0  

 

網卡配置文件

TYPE=Ethernet                    # 乙太網

BOOTPROTO=none          # 以什麼方式獲取IP地址 兩種方式

BOOTPROTO=DHCP         #自動獲取下發IP地址

或BOOTPROTO=static        #靜態IP地址  手動配置的IP地址

NAME=eth0                  # 硬體網卡的名稱

DEVICE=eth0                # 0代表了第一塊網卡 1代表第二塊網卡

ONBOOT=yes                # 開機自動激活網卡 自動連接  重啟網卡

IPADDR=10.0.0.200            # IP地址

PREFIX=24                   # 子網掩碼

GATEWAY=10.0.0.254             #網關,伺服器和PC 必須都要配置網關   並且可ping通

DNS1=1.2.4.8                 #功能變數名稱解析  功能變數名稱方便瀏覽 方便記憶

DNS2=223.5.5.5                    伺服器   你給他功能變數名稱  他給你IP地址

 

DNS伺服器

8.8.8.8                                谷歌

223.5.5.5     223.6.6.6     阿裡

202.106.0.20                       聯通

1.2.4.8                           電信

2./etc/resolv.conf  ---DNS客戶端配置  

Linux系統DNS客戶端配置文件

必須有DNS伺服器地址

 

優先於網卡配置DNS 優先進行解析

1.DNS配置文件

如果DNS配置在網卡,重啟網卡則網卡的DNS會覆蓋resolv.conf

2. 網卡中配置

 

補充: 網卡中不配置DNS,只在/etc/resolv.conf中配置DNS,重啟網卡不覆蓋

3./etc/hostname  ---配置主機名 

hostname 查看主機名    -I查看或者獲取IP地址

hostname+主機名  改主機名,臨時生效,重啟系統則失效

 

永久配置主機名:

CentOS6: /etc/sysconfig/network

CentOS7:1. hostnamectl set-hostname +  2. /etc/hostname重啟系統生效

4./etc/hosts  ---本地配置解析功能變數名稱

 

IP地址     +     功能變數名稱

5./etc/fstab  ---開機自動掛載 

按照配置文件的格式寫入,開機自動掛載我們地設備

6./etc/rc.local  ---開機自動執行

開機自動執行此配置文件中的內容(每次開機都會執行一次)

CentOS6  直接寫入即可生效

CentOS7  必須加一個執行許可權 (chmod+x /etc/rc.d/rc.local)

7./etc/inittab  ---linux 下運行級別

 

a)查看啟動級別   

runlevel       

cat /etc/systemd/system/default.targe

 

CentOS6

CentOS7

0

關閉操作系統

poweroff.target

1

單用戶模式 救援模式 沒網路

rescue.target

2

多用戶模式 NFS  沒網路

multi-user

3

完全多用戶

multi-user

4

保留  待開發

 

5

桌面,圖形化模式,需要安裝desktop安裝包才可運行

graphical.target

6

重新啟動操作系統

reboot.target

 

b) 設置運行級別:

CentOS6 /etc/inittab

CentOS7 systemctl get-default     獲取預設的運行級別

          systemctl set-default poweroff.target  設置預設的運行級別

8./etc/profile ---環境變數配置

 

相當於國法 全局配置文件 (針對所有的用戶生效)  國家規定

/etc/profile

/etc/bashrc

 

家規  針對當前用戶生效(你當前登錄的用戶,隻影響本身)

~/.bashrc   

~/.bash_profile

 

9./etc/bashrc  ---別名

  

10./etc/issue 和/etc/issue.net ---用戶登錄系統前顯示的內容

用戶登錄系統前顯示的內容,預設顯示 操作系統版本,內核版本

 

實際工作中需要清空,登陸前不提示

 

清空文件的方法:

1. vim 編輯 刪除 dG 從游標所在處刪除到文件底部  :wq 保存並退出

2. echo > /etc/issue issue.net  清空文件 或者 > /etc/issue issue.net

11./etc/motd  ---用戶登錄系統後顯示的內容 

    

12./etc/redhat-release ---查看當前OS版本

查看當前OS版本      

uname –r  查看內核版本

13.history ---查看歷史命令

   

04.  /var

1./var/log/messages ---系統預設的日誌文件

日誌切割  預設10分鐘切割  為了防止日誌容量過大 (最好控制在1G以內)

2./var/log/secure ---系統的安全日誌

記錄了用戶登錄的過程信息

05.  /proc  ---虛擬的目錄,記憶體的映射 

proc被稱為虛擬文件系統,

它是一個控制中心,可以通過更改其中某些文件改變內核運行狀態,

它也是內核提空給我們的查詢中心,用戶可以通過它查看系統硬體及當前運行的進程信息。

Linux中許多工具的數據來源正是proc目錄中的內容,比如lsmod的命令是cat /proc/modules的別名。

1./proc目錄下常用文件介紹:

/proc/loadavg          前三列分別保存最近1分鐘,5分鐘,及15分鐘的平均負載。

/proc/meminfo          當前記憶體使用信息

/proc/diskstats          磁碟I/O統計信息列表

/proc/net/dev          網路流入流出統計信息

/proc/filesystems        支持的文件系統

/proc/cpuinfo         CPU的詳細信息

/proc/cmdline          啟動時傳遞至內核的啟動參數,通常由grub進行傳遞

/proc/mounts           系統當前掛在的文件系統

/proc/uptime             系統運行時間

/poc/version            當前運行的內核版本號等信息

2./proc/cpuinfo  cpu信息

查看命令:lscpu

processor : 0  第幾個核心

[root@oldboyedu ~]# cat /proc/cpuinfo|grep 'processor'

processor : 0

processor : 1

processor : 2

processor : 3

 

physical id     : 0  第幾個CPU 幾顆  幾路

[root@oldboyedu ~]# cat /proc/cpuinfo|grep 'physical id'

physical id : 0

physical id : 0

physical id : 1

physical id : 1

CPU(s):                4

On-line CPU(s) list:   0-3

Thread(s) per core:    1

Core(s) per socket:    2

Socket(s):             2

3./proc/meminfo  查看記憶體信息

查看命令:free -h

MemTotal:             1528412 kB                  總共記憶體

MemFree:            1253588 kB                  剩餘記憶體

MemAvailable:         1229392 kB               可用記憶體

Buffers:            2076 kB                    緩衝

Cached:             87272 kB                  緩存

4./proc/loadavg  load average系統負載

查看命令: w   uptime

  (不絕對,業務不對外訪問,只放數據分析 達到    cpu核心的上線 也無所謂)

負載  衡量當前系統的一個繁忙程度 

 

如何衡量?

數字達到你cpu核心的數量

cpu  4核心  =====  如果負載已經到4  說明已經繁忙

cpu  2核心  =====  如果負載已經到2  說明已經繁忙

 

[root@oldboyedu ~]# cat /proc/loadavg

0.00       0.01         0.05          1/126 1484

最近1分鐘  最近五分鐘   最近15分鐘

  

問:你們公司的伺服器負載的臨界點是多少

使用命令:  w

20:29:01    up 30 min,   1 user,    load average: 0.00, 0.01, 0.05

當前時間   系統運行時間  1個用戶登錄  平均負載   1分鐘  5分鐘 15分鐘

 

[root@oldboyedu ~]# uptime

20:34:43 up 36 min,  3 users,  load average: 0.00, 0.01, 0.05

5./proc/mounts  查看掛載信息

rootfs / rootfs rw 0 0

sysfs /sys sysfs rw,seclabel,nosuid,nodev,noexec,relatime 0 0

proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0

06.第二次考

一,填空題-----------每題2分,共20分

1,網卡配置文件路徑:/___etc_____/____sysconfig___/___network-scripts___/ifcfg-eth0.

2,重啟網卡命令補全___systemctl____ ____restart___ network

3,/bin     是用來存放____二進位命令文件____什麼的目錄

4,/boot系統______引導系統程式文件,系統內核______所需的文件目錄。

5,/dev (Device flies)______設備文件______目錄.

6,/mnt 臨時掛載存儲設備的_____掛載點________, u盤直接插入光碟機無法使用,要先掛載後使用

7,/var 這個目錄的內容是經常變動的。是個用來存放系統______經常變動文件,系統日 志_____目錄,____系統日誌____的路徑/var/____log____/___messages____

8,/proc/loadavg    #<=__系統負載____(系統繁忙程度)

9,/proc/meminfo   # <=___系統記憶體____

10,/tmp     (Temporary files)____存放臨時文件____目錄, ,這個目錄可以被用作回收站使用

 

二,命令操作類-----------每題2分,共20分

1.查看主機名命令   

hostname

2.(臨時)設置主機名   

hostname 主機名

3.(永久)設置主機名  

vim /etc/hostname 改主機名  

hostnamectl set-hostname 主機名

4.查詢當前登錄用戶  

whoami

5.查看主機名  

hostname

6.查詢當前系統版本  

cat /etc/redhat-release

7.切換到上一次所在路徑   

cd -

8.以樹形結構顯示目錄且只顯示目錄 

tree -d

9.批量創建1,2,3,4,5,這幾個目錄  

mkdir 1 2 3 4 5

10.以長格式列出文件及目錄信息並且要顯示目錄下的所有文件

   ls -al

三,常見錯誤提示解析類(給出你的翻譯)-----------每題4分,共20分

1.cannot create directory “d1” file exists                 無法創建目錄,d1文件已存在

2.no such file or directory                                   沒有此文件或目錄

3.column window is too narrow                            列視窗太窄

4.ping: baidu.com: Name or service not known       ping百度:名字或服務無法識別

5.cannot:Network is unreachable                       無法建立連接

 

四,簡答題-----------前三題每題10分,共40分

1,     請寫出eth0網卡的必要配置

TYPE=Ethernet

BOOTPROTO=none

ONBOOT=yes

NAME=eth0

DEVICE=eth0

IPADDR=10.0.0.201

PREFIX=24

NETMASK=10.0.0.254

DNS1=1.2.4.8

2,簡述Centos 6 運行級別  0 1 2 3 4 5 6

3,請寫出十個與第二大題(命令操作類)無關的命令及參數以及具體命令作用。

 

4,簡述Raid0與Raid1的區別

 

5,xshell連接不上如何排錯。

 

 

07.軟體安裝方法:

1.yum 

常用   打包好了,可直接用  缺什麼可以直接安裝什麼,直接解決了依賴問題

yum repolist

yum install –y  命令    -y  安裝過程中,提示是否繼續全yes

yum provides route

yum remove

yum clean all

yum list|grep bash-

2.rpm       

不會自動解決依賴問題,需要自己安裝依賴

rpm –ivh xxx.rpm  

-i       install    

-v     顯示安裝過程   

-h      以人類可讀方式顯示

rpm –qa  查看所有的安裝包

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 最近項目需要實現列表排序,由於是winform的,並使用了ListView列表控制項,並且第一列顯示了序號,要求:點擊每列標題實現列表排序,並且序號列要跟隨排序後的數據顯示。 查看了微軟的官方文檔,ListView沒有實現針對某列不參與排序的功能,在DataGridView中就有實現,考慮到更換控制項可 ...
  • 在我們開發當中經常需要向特定URL地址發送Http請求操作,在.net core 中對httpClient使用不當會造成災難性的問題,這篇文章主要來分享.net core中通過HttpFactory 工廠來使用HttpClient的正確打開方式。 ...
  • 從國內的開源鏡像站點下載我們所需要的CentOS鏡像。下麵我們選擇網易鏡像站點,以CentOS7.8為例,下載我們所需要的鏡像。 1. 打開網易鏡像站點,點擊centos 2. 點擊7.8.2003 3.點擊isos 4.點擊x86_64 5.選擇CentOS 7 x86_64 DVD 2003.i ...
  • 軟體包管理簡介二進位包二進位包包括:RPM包,系統預設包。二進位包優點:包管理系統簡單,只通過幾個命令就可以實現包的安裝、升級、查詢和卸載。安裝速度比源碼包安裝快的多。二進位包缺點:經過編譯,不再可以看到源代碼。功能選擇不如源碼包靈活。依賴性問題。源碼包源碼包的優點:開源,如果有足夠的能力,可以修改... ...
  • 很多小伙伴說,我在底層已經搬磚好幾年了,要怎麼才能晉升管理層?這個問題我也是感同身受,因為我也在底層工作了好多年了~o(╥﹏╥)o~為了給大家解答這個問題,我有幸邀請到了餓了麽前總監來為我們做一些分享:我是如何完成從程式員到管理層的蛻變,大家歡迎! 本文稿對應的視頻可以在我的B站( 程式員良許 )里 ...
  • 企業私有網路構建運維 交換網路的構建與配置 規劃拓撲 拓撲描述 部門1網路為子網1:192.168.1.0/24,對應VLAN10 部門2網路為子網2:192.168.2.0/24,對應VLAN20 部門1、部門2的電腦分別通過交換機SW2、SW3接入,然後通過總交換機SW1互連 拓撲圖 將所有設 ...
  • 2020年,一個新辭彙出現在我們的視野——信創。 什麼是信創?官方沒有給出明確解釋,據媒體描述,信創是信息化應用創新的簡稱。過去很多年間,我國IT底層標準、架構、生態等多是由美國IT巨頭制定的,也因此存在著諸多安全風險,如今,我們要逐步建立基於自己的IT底層架構和標準,形成自有開放生態。基於自有架構 ...
  • 1. CPU高速緩存:在電腦系統中,CPU高速緩存(英語:CPU Cache)是用於減少處理器訪問記憶體所需平均時間的部件。在金字塔式存儲體系中它位於自頂向下的第二層,僅次於CPU寄存器。其容量遠小於記憶體,但速度卻可以接近處理器的頻率。當處理器發出記憶體訪問請求時,會先查看緩存內是否有請求數據。如果存 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 在我們開發過程中基本上不可或缺的用到一些敏感機密數據,比如SQL伺服器的連接串或者是OAuth2的Secret等,這些敏感數據在代碼中是不太安全的,我們不應該在源代碼中存儲密碼和其他的敏感數據,一種推薦的方式是通過Asp.Net Core的機密管理器。 機密管理器 在 ASP.NET Core ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 順序棧的介面程式 目錄順序棧的介面程式頭文件創建順序棧入棧出棧利用棧將10進位轉16進位數驗證 頭文件 #include <stdio.h> #include <stdbool.h> #include <stdlib.h> 創建順序棧 // 指的是順序棧中的元素的數據類型,用戶可以根據需要進行修改 ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • C總結與剖析:關鍵字篇 -- <<C語言深度解剖>> 目錄C總結與剖析:關鍵字篇 -- <<C語言深度解剖>>程式的本質:二進位文件變數1.變數:記憶體上的某個位置開闢的空間2.變數的初始化3.為什麼要有變數4.局部變數與全局變數5.變數的大小由類型決定6.任何一個變數,記憶體賦值都是從低地址開始往高地 ...
  • 如果讓你來做一個有狀態流式應用的故障恢復,你會如何來做呢? 單機和多機會遇到什麼不同的問題? Flink Checkpoint 是做什麼用的?原理是什麼? ...
  • C++ 多級繼承 多級繼承是一種面向對象編程(OOP)特性,允許一個類從多個基類繼承屬性和方法。它使代碼更易於組織和維護,並促進代碼重用。 多級繼承的語法 在 C++ 中,使用 : 符號來指定繼承關係。多級繼承的語法如下: class DerivedClass : public BaseClass1 ...
  • 前言 什麼是SpringCloud? Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的開發便利性簡化了分散式系統的開發,比如服務註冊、服務發現、網關、路由、鏈路追蹤等。Spring Cloud 並不是重覆造輪子,而是將市面上開發得比較好的模塊集成進去,進行封裝,從 ...
  • class_template 類模板和函數模板的定義和使用類似,我們已經進行了介紹。有時,有兩個或多個類,其功能是相同的,僅僅是數據類型不同。類模板用於實現類所需數據的類型參數化 template<class NameType, class AgeType> class Person { publi ...
  • 目錄system v IPC簡介共用記憶體需要用到的函數介面shmget函數--獲取對象IDshmat函數--獲得映射空間shmctl函數--釋放資源共用記憶體實現思路註意 system v IPC簡介 消息隊列、共用記憶體和信號量統稱為system v IPC(進程間通信機制),V是羅馬數字5,是UNI ...