1. 程式人生 > >[親測,Success]Linux,VMware 安裝+常用 命 令+網 絡+進 程 管 理以及軟體安裝

[親測,Success]Linux,VMware 安裝+常用 命 令+網 絡+進 程 管 理以及軟體安裝

安裝Linux—Armyman

1、環 境 安 裝

1 安裝VMware,課程中使用的是VMware10的版本

2 檢測系統是否支援虛擬化

在這裡插入圖片描述

如果是win10系統,直接開啟工作管理員檢視

在這裡插入圖片描述

在這裡插入圖片描述
3 如果支援,檢視虛擬化是否開啟

4.VMware 安裝
https://blog.csdn.net/qq_43652509/article/details/83900942

5 安裝完成之後,需要安裝xshell

在這裡插入圖片描述

6 xshell連線centos7作業系統

Centos提供IP地址,如何提供呢?

A.設定Wmware的IP地址

在這裡插入圖片描述

B、設定作業系統的地址

在這裡插入圖片描述

2、Linux概 述

2.1、了 解 Unix系 統

l Unix是一個強大的多使用者、多工作業系統。

l 於1969年在AT&T的貝爾實驗室開發。

l UNIX的商標權由國際開放標準組織(The Open Group)所擁有。

l UNIX作業系統是商業版,需要收費,價格比Microsoft Windows正版要貴一些。

2.2、了 解 Linux發 展 歷 史

在這裡插入圖片描述

l Linux是基於Unix的。

l 誕生於1991 年10 月5 日。

l Linux基於GPL協議,是一個自由的,免費的,原始碼開放的作業系統。

l Linux存在著許多不同的Linux版本,但它們都使用了Linux核心。

2.3、Linux的 應 用 領 域

l 伺服器系統

• Web應用伺服器、資料庫伺服器、遊戲伺服器、介面伺服器、DNS、FTP等等;

l 嵌入式系統

• 路由器、防火牆、手機、PDA、IP 分享器、交換器、家電用品的微電腦控制器等等

l 高效能運算、計算密集型應用

• Linux有強大的運算能力。IBM的Watson超級計算機就是使用Linux系統

l 桌面應用系統

• 很多桌面作業系統的底層也是Linux

l 移動手持系統

• 安卓系統就是基於Linux

2.4、Linux版 本

在這裡插入圖片描述

在這裡插入圖片描述

redhat:目前,全球最大的linux發行廠商,功能全面、穩定,但是,是收費的。

ubuntu:目前,是linux桌面作業系統做的最好的。

centos:免費版的redhat,centos基於redhat發行版基礎之上,再重新編譯釋出的版本。

目前centos已經被Redhat公司收購,但是依然免費

3、安 裝 Linux

3.1、安 裝 虛 擬 機 軟 件

在這裡插入圖片描述

常用的虛擬機器軟體 主要包括:VirtualBox、VMware Workstation、Virtual PC

VirtualBox: VirtualBox 是一款開源虛擬機器軟體。VirtualBox 是由德國 Innotek 公司開發,由Sun Microsystems公司出品的軟體,使用Qt編寫,在 Sun 被 Oracle 收購後正式更名成 Oracle VM VirtualBox

VMware Workstation: 是VMware公司銷售的商業軟體產品之一。該工作站軟體包含一個用於英特爾x86相容電腦的虛擬機器套裝,其允許使用者同時建立和執行多個x86虛擬機器

Virtual PC:是Microsoft 最新的虛擬化技術。主要適合做微軟自己產品的服務

3.2、安 裝 Centos7系 統

https://blog.csdn.net/qq_43652509/article/details/83903205

3.3、網 絡 三 種 連 接 方 式 講 解

3.3.1、Bridged橋接模式

這種方式下,虛擬機器就像一臺真正的計算機一樣,直接連線到實際的網路上,與宿主機沒有任何聯絡。

在這裡插入圖片描述

3.3.2、Host-only僅主機模式

這種方式下,虛擬機器的網絡卡連線到宿主的 VMnet1 上,但系統並不為虛擬機器提供任何路由/上網服務,因此虛擬機器只能和宿主機進行通訊,而不能連線到實際網路上。

在這裡插入圖片描述

3.3.3、NAT模式

這種方式下,虛擬機器的網絡卡連線到宿主的 VMnet8 上。此時系統的 VMWare NAT Service 服務就充當了路由器的作用,負責將虛擬機發到 VMnet8 的包進行地址轉換之後發到實際的網路上,再將實際網路上返回的包進行地址轉換後通過 VMnet8 傳送給虛擬機器。VMWare DHCP Service 負責為虛擬機器提供 DHCP 服務。

在這裡插入圖片描述

總結:

虛擬機器的三種網路連線方式:

1 橋接模式:虛擬機器是一臺獨立的電腦

2 僅主機模式(host-only):虛擬機器可以訪問宿主機,虛擬機器無法上網,宿主機無法訪問虛擬機器

3 NAT模式:虛擬機器可以訪問宿主機,宿主機可以訪問虛擬機器

       此時宿主機相當於路由器,虛擬機器可以通過宿主機上網

       宿主機可以配置254個虛擬機器 

3.4、配 置 動 態 IP

什麼是動態IP?每次IP地址都可發生改變?

第一步:使用root使用者登入(即root/123456),修改IP地址(vi /etc/sysconfig/network-scripts/ifcfg-ens33):

在這裡插入圖片描述

在這裡插入圖片描述

按字元鍵“i”進入編輯模式,修改/etc/sysconfig/network-scripts/ifcfg-ens33檔案內容如下:

在這裡插入圖片描述

在這裡插入圖片描述

按“esc”鍵後,輸入:wq回車,完成配置檔案編輯。

輸入:service network restart命令重啟網絡卡,生效剛剛修改ip地址,ping www.baidu.com測試網路連通性。

在這裡插入圖片描述

好了,至此,CentOS7作業系統安裝成功了。

3.5、設 置 靜 態 ip 地 址 ( 推 薦 )

配置網路的目的主要是為了固定虛擬機器的內網IP,方便我們在真實的作業系統中使用Linux連線工具軟體進行遠端連線

修改IP地址(vi /etc/sysconfig/network-scripts/ifcfg-ens33)

在這裡插入圖片描述

按“esc”鍵後,輸入:wq回車,完成配置檔案編輯。

輸入:service network restart命令重啟網絡卡,生效剛剛修改ip地址,ping www.baidu.com測試網路連通性。

在這裡插入圖片描述

注意:Linux系統中是嚴格區分大小寫的,寫明令時不要寫錯

3.6、給 虛 擬 機 進 行 快 照

快照其實就是還原點,我們設定了快照。以後如果被我們玩壞了,也可以快速的還原到以前狀態!

在這裡插入圖片描述

3.7、安 裝 遠 程 連 接 工 具

直接操作Linux系統所在機器的問題:

A:虛擬機器有滑鼠獨佔問題,不好操作

B:真實開發中,虛擬機器與我們不在一起。

使用遠端連線工具:

A:操作方便快捷

B:隨時隨地都可以連線Linux系統,方便管理

3.7.1、遠端終端命令工具

主要功能是向Linux系統遠端傳送命令

Xshell:目前最好用

Secure Shell Client:老牌的連線工具,對中文支援較差

SecureCRT:收費

Putty:早就停止維護了,很多東西支援的很差。但因為習慣依舊很多人支援

我們使用XShell5,安裝時安裝免費版

在這裡插入圖片描述

使用步驟:
在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

3.7.2、遠端FTP工具

FTP工具的目的是:便捷的與Linux系統之間進行檔案傳輸

有以下途徑:

Xftp:配合XShell使用,支援簡單線上編輯

Secure Shell Client:自帶FTP工具

SecureFX:配合SecureCRT使用

Lrzsz:可以安裝在Linux系統中,通過在遠端終端中使用命令來實現FTP功能

我們使用Xftp。

在這裡插入圖片描述

如果要向Linux進行檔案傳輸,可以在Xshell介面中,點選檔案傳輸按鈕,自動就會開啟我們安裝的Xftp了:

在這裡插入圖片描述

在這裡插入圖片描述

通過XFTP工具,我們可以讓本機作業系統和linux系統之間進行檔案的上傳和下載。

4、Centos7的 使 用 ( 無 界 面 )

4.1、幾 個 基 本 的 Linux指 令

我們先來學習一套最基本的指令。

4.1.1、ls指令

ls,列出目錄中所有可見的檔案和目錄。

在這裡插入圖片描述

ls -a,列出目錄中所有的檔案和目錄。(以.開頭的檔案是隱藏的)
在這裡插入圖片描述

ls -l,列出檔案和目錄的詳細資訊。

在這裡插入圖片描述

drwxr-xr-x 第一個字元有3種情況:“-”表示普通檔案,“d”代表目錄,“l”代表連線檔案,“b”代表裝置檔案。

緊接著的數字2代表 “aa”這個目錄下的目錄檔案數目

ls -al,列出所有檔案和目錄的詳細資訊。

在這裡插入圖片描述

總結:

ls命令

ls 列出所有非隱藏的檔案

ls -a:列出所有隱藏和非隱藏的檔案

ls -l:縮寫ll,列出所有非隱藏檔案的詳細資訊

ls -al:列出所有隱藏和非隱藏的檔案的詳細資訊

4.1.2、clear指令

clear,清除螢幕上的內容。

4.1.3、exit指令

exit,退出登入狀態。

4.1.4、reboot指令

reboot,重啟。

4.1.5、shutdown指令

shutdown主要用來關機。

shutdown -h now // 馬上關機

4.2、指 令 快 捷 輸 入

因為Linux中需要輸入很多指令來操作,為了提高指令輸入速度,Linux提供了以下方法。

4.2.1、歷史指令

使用上、下箭頭可以找出上一條指令和下一條指令。

4.2.2、程式碼補全

使用tab鍵可以快速輸入指令。

比如:我要輸入shutdown指令,這時,我們可以只輸入shut然後按下tab鍵,即可自動把shutdown補全。

思考:為什麼只輸入s無法實現程式碼補全?

因為以s開頭的指令,很多不只一個,所以不知道應該補哪個。但是我們可以按兩個tab鍵,這時會把所有以s開頭的指令都列出來:

按了兩個tab,提示共有129個以s開頭的指令真的要都顯示出來嗎?這時如果按y就會列出,如果按n就不會列出來。

在這裡插入圖片描述

按y之後會列出所有以s開頭的指令,但因為129個比較多,而在電腦中無法一次全顯示出來,所以先顯示一部分:(More代表還有更多,這時按回車就可以向下滾動)
在這裡插入圖片描述

總結:

Clear:清屏

Reboot:重啟

Exit:斷開連線

Shutdown -h now:立即關機

Tab:補全

Pwd:獲取當前位置的全路徑

5、Linux的 結構

5.1.1、windows系統的目錄結構

在windows中目錄結構是從C、D、E等碟符開始的:

在這裡插入圖片描述
在這裡插入圖片描述

C、D、E這些碟符的關係是平等的,屬於同一級。

5.1.2、Linux目錄結構

在Linux中並沒有C、D、E等碟符,直接就是一個樹形結構的目錄(Linux中只有一棵樹):
在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

目錄結構總結:

1:Linux中的根目錄就是/,沒有windows中的碟符

2:Linux中如果有新的使用者建立,預設會在/home/下建立一個與使用者名稱一樣的資料夾,作為該使用者的home資料夾

3:root使用者的HOME在/root資料夾下。比較特殊

4:一般我們安裝檔案都放在 /usr/software這個資料夾下

5:/etc下有很多系統的配置檔案

6、Linux基 本 命 令

6.1、Linux命 令 的 格 式

Linux命令,其實就是Shell命令,是我們學好Linux的關鍵。

注意:

A:通過上下方向鍵來調取過往執行過的命令。

B:命令或引數僅需輸入前幾位就可以用tab鍵補全。

格式:

**命令名稱** **[****命令引數****] [****命令物件****]**
命令名稱:有很多,我們會學習其中重要的一些

命令引數:可選,有兩種格式:

       長格式:--help

       短格式:-h

命令物件:可選,就是命令作用的目標,可以是檔案、目錄、URL等等

例如:

rm –f 1.txt

注意:Linux中的命令嚴格區分大小寫的!

6.2、目 錄 操 作 命 令

Linux中並沒有資料夾的概念,應該叫目錄。

在這裡插入圖片描述

在這裡插入圖片描述

6.2.1、檢視當前目錄

使用 pwd 指令可以檢視當前所在的目錄。

~代表當前是家目錄,使用pwd可以查當前家(當前使用者所在的目錄)目錄的絕對路徑:

在這裡插入圖片描述

/home/使用者名稱 — 家目錄

6.2.2、切換目錄

使用cd可以切換到其它目錄。

Linux中有很多目錄可以使用cd切換到任何一個目錄中:

在這裡插入圖片描述

例1、切換到根目錄:

在這裡插入圖片描述

例2、切換到/home目錄:

在這裡插入圖片描述

總結:可以切換到任何一個現有的和我們自己建立的目錄中。

面試題:在linux中~和/ 的區別:

在這裡插入圖片描述

6.2.3、建立目錄

可以使用mkdir 指令建立目錄。

建立目錄時可以使用 相對路徑 也可以使用 絕對路徑。

例1使用絕對路徑建立目錄。

在這裡插入圖片描述

因為已經有/root目錄了,所以在root中建立abcde可以直接建立,但是如果要一次建立多級目錄就可以新增 -p 引數了。

例2、建立 /root/a/b/c/d/目錄。

注意:因為root下沒有a,也沒有b,c,d,e,目錄,所以要一次性同時建立多級目錄需要加 -p 引數

在這裡插入圖片描述

例3使用相對路徑在當前目錄下建立abc目錄。

回顧:./ 代表當前目錄, …/ 代表上一級目錄。

在這裡插入圖片描述

例4、建立的時候顯示建立資訊

注意:建立的時候顯示建立資訊,需要加上引數v

在這裡插入圖片描述

6.2.4、複製目錄

可以使用 cp -r 指令複製目錄及目錄中的子目錄。

-r : 遞迴

說明:cp是複製的意思,但對於目錄來說還要加上 -r 這個引數代表連同目錄中的子目錄和檔案一起復制。

例1複製當前目錄下的abc目錄,新複製出來的目錄叫做abc2:

在這裡插入圖片描述

Copy

6.2.5、移動目錄

可以使用 mv 指令移動目錄。

Move

例1:把當前目錄下的abc目錄移動到當前目錄下的abc2目錄中。

在這裡插入圖片描述

6.2.6、刪除目錄

可以使用 rm -rf 指令刪除目錄及目錄中的子目錄和檔案。

Remove

引數說明:

-r :遞迴的刪除(刪除子目錄和檔案)。

-f :強制刪除(沒有任何提示直接刪除)。

例:刪除當前目錄中的abc2目錄。

在這裡插入圖片描述

注意:該指令在使用時,一定要小心!定要小心!要小心!小心!心!! –刪了就找不回來了。

6.2.7、重新命名

可以使用mv 指令對目錄重新命名。

例:把當前目錄下的a目錄改名為b目錄。

在這裡插入圖片描述

總結:

mkdir:建立目錄,當有多級目錄的時候,使用-p

cp:複製目錄,當有多級目錄的時候,使用-r 遞迴

mv:移動目錄+重新命名目錄

rm:刪除目錄,當有多級目錄的時候,使用-rf

6.3、打 包 和 解 壓 命 令

壓縮也是一種打包,壓縮的原理是將檔案中相同的資訊用一個字元代替,致使檔案體積變小達到壓縮的目的,壓縮對於文字類或資料類檔案有較明顯的作用。

打包就是將一些檔案放在一起變成一個包,便於儲存和傳輸,圖片和視訊資料因為不象文字一樣,因此多個檔案在壓縮的時候沒有明顯效果,因此只能做打包,進行儲存。

在這裡插入圖片描述

Windows系統下常見的壓縮檔案:

*.zip

*.rar

*.7z

Linux系統下常見的壓縮檔案:

*.Z compress程式壓縮的檔案

*.gz gzip程式壓縮的檔案

*.bz2 bzip2程式壓縮的檔案

*.tar tar程式打包的資料,並沒有壓縮過

*.tar.gz tar程式打包並經過gzip壓縮

*.tar.bz2 tar程式打包並經過bzip2壓縮

6.3.1、.tar命令

打包:tar -zcvf FileName.tar DirName

解包:tar -zxvf FileName.tar

tar命令引數介紹:

-c: 建立壓縮檔案 create

-x:解壓

-t:檢視內容

-r:向壓縮歸檔檔案末尾追加檔案

-u:更新原壓縮包中的檔案

這五個是獨立的命令,壓縮解壓都要用到其中一個,可以和別的命令連用但只能用其中一個。

下面的引數是根據需要在壓縮或解壓檔案時可選的。

-z:有gzip屬性的

-j:有bz2屬性的

-Z:有compress屬性的

-v:顯示所有過程

-O:將檔案解開到標準輸出

-f: 使用檔案名字,切記,這個引數是最後一個引數,後面只能接檔案名。

案例一:將a目錄打包為 a.tar

在這裡插入圖片描述

案例二:解包

在這裡插入圖片描述

總結:

tar命令僅僅實現對資料打包。不進行壓縮。我們一般處理檔案,都是同時進行打包和壓縮。因此要加上引數。
因為要壓縮,所以加上引數-z

因為要顯示執行過程,因此加上-v

因為要指定檔名稱,因此加上-f

最後,如果是打包,則用-c;如果是解壓,則用--x

因此,最終命令為:

   tar -zcvf 壓縮後文件名.tar.gz 目標檔案      :打包並壓縮目標檔案

   tar -zxvf 要解壓的檔名                :解壓縮到當前目錄

   tar -zxvf 要解壓的檔名 -C 目標目錄     :解壓到目標目錄

注意,一般Linux中的壓縮檔案都是 .tar.gz

6.4、文 件 操 作 命 令

Linux中的哲學:“所有東西都是一個檔案”。

Linux中所有的東西(硬碟、目錄、網路連線、U盤、光碟機等等)都會當作一個檔案來處理。

6.4.1、介紹

windows中的檔案由 檔名.副檔名 兩部分組成。副檔名直接決定了這個檔案的型別,以及將會使用哪種軟體來開啟執行。

  1.   Xx.doc    word檔案
    
  2.   Xxx.java  檔案
    
  3.   Xxx.js    js檔案
    
  4.   Xxx.xls
    
  5.   Xx.ppt
    

Linux中並沒有副檔名的要求,不過為了便於區分檔案,我們一般也會給檔案加上一個副檔名。

6.4.2、隱藏檔案

Linux系統中以 . 開頭的檔案是隱藏的檔案,使用 ls 命令是檢視不到這些檔案的,必須要加上 -a 引數才可以檢視到隱藏的檔案。

我們在平時開發時會看到很多以 . 開頭的檔案,比如 .htaccess 。這些檔案都是考慮到在Linux用來隱藏用的。

6.4.3、目錄與檔案的區分

當我們使用ls命令列出目錄中的所有子目錄和檔案時,如何區分哪些是檔案哪些是目錄?

可以通過詳細資訊中第一列的資訊來區分:以d開頭的是目錄,以-開頭的是檔案。

在這裡插入圖片描述

6.4.4、檔案相關的指令

6.4.4.1、建立檔案

可以使用 touch 指令建立檔案。

touch 絕對路徑/相對路徑

例:當前目錄下建立一個hello檔案。

在這裡插入圖片描述

6.4.4.2、複製檔案

可以使用 cp 複製檔案。

cp 舊檔案 新檔案

例:複製當前目錄下的hello檔案,新複製出來一個hello2檔案:

在這裡插入圖片描述

6.4.4.3、移動檔案

可以使用 mv 移動檔案。

mv 原檔案 移動後的檔案

例:把當前目錄下的hello移動到當前目錄下的abcd目錄下(先有這個目錄):

在這裡插入圖片描述

6.4.4.4、刪除檔案

可以使用 rm 刪除檔案。

語法1:刪除前先提示

rm 要刪除的檔案

提示時按y刪除,n不刪除。

在這裡插入圖片描述

語法2:直接刪除,沒有任何提示

rm -f 要刪除的檔案

例:刪除hello2檔案

在這裡插入圖片描述

6.4.4.5、重新命名檔案

可以使用 mv 重新命名檔案。(移動時改名)

mv 原檔案 新檔案

例:把當前目錄下的hello改名為helloworld。

在這裡插入圖片描述

6.4.4.6、查詢檔案

接下來學習如何在系統中查詢檔案。Linux中提供了很多好用的指令來查詢檔案。

find指令

find是功能最多的查詢指令,可以根據各種條件查詢檔案。

語法

find 查詢的目錄 選項 值

例1、在/etc目錄下查詢所有*.conf.d結尾的檔案

find /etc -name “*.conf.d”

在這裡插入圖片描述

擴充套件:程式的中斷

在Linux系統中可以使用 ctrl+c 快捷鍵來中斷當前程式的執行。

6.4.5、檔案命令總結

命令 目錄 檔案
mkdir 建立目錄,多級目錄使用,-p
touch 建立檔案
cp 複製目錄,多級目錄使用-r 複製檔案
mv 移動+重新命名 移動+重新命名
rm 刪除,多級目錄-rf 刪除,-f不詢問
find 查詢檔案
tar -zcvf 打包 -zxvf 解包 打包+解包 打包+解包

6.5、查 看 文 件 內 容 命 令

在這裡插入圖片描述

在這裡插入圖片描述
注意:tail和grep命令非常重要,一定要掌握

6.5.1、cat命令

cat filename 輸出檔案所有內容

6.5.2、more和less命令

more 檢視更多內容

退出:按q鍵

空格:查詢下一屏內容

less 用法和more類似,不同的是less可以通過PgUp、PgOn鍵來控制。

6.5.3、tail命令(重要)

tail 用於顯示檔案後幾行的內容

tail -10 /etc/password 檢視後10行資料

tail -f catalina.log 動態檢視日誌,可以實時的得到新追加到檔案中的資訊,常用來跟蹤日誌檔案。

tail -200f catalina.log 動態顯示日誌最後200行

Ctrl + C 結束檢視

6.5.4、grep命令

l 查詢符合條件的字串。

l 用法: grep [選項]… PATTERN [FILE]…

l 示例:

• grep lang anaconda-ks.cfg 在檔案中查詢lang

• grep lang anaconda-ks.cfg --color 高亮顯示

grep location nginx.conf 查詢字串location並且高亮顯示、顯示查詢到的元素的前、後5行內容。

檢視程序:

ps -ef | grep java

ps -ef | grep tomcat

6.6、編 輯 文 件 內 容 :vi編 輯 器

l 在Linux下一般使用vi編輯器來編輯檔案。

l vi既可以檢視檔案也可以編輯檔案。

l 而vim是vi的升級版本,具備更多的功能

l vi如果目標檔案不存在,會建立新的檔案。但是如果新檔案沒做編輯,退出後還會消失。

6.6.1、vi的三種模式介紹

在這裡插入圖片描述

編輯模式:對文字進行輸入和修改

底行模式:退出vim或者查詢、替換功能

命令模式:通過快捷命令操作資料,開啟vi預設就是命令模式

6.6.2、編輯模式

命令模式按下:i、o、a進入編輯模式:

i:游標不動

o:另起一行

a:游標到下一個字元

按ESC退出編輯模式,進入命令模式

6.6.3、底行模式

命令模式下,按‘:’或者‘/’進入底行模式,可以輸入命令

1)退出vim:

:q 未編輯時退出vim

:q! 編輯後,退出並且不儲存

:wq 編輯後,退出且儲存

2)查詢

/文字 搜尋指定文字,高亮顯示,按n顯示下一個,按N顯示前一個

:整數 快捷跳轉到指定行

6.6.4、命令模式(瞭解)

dd 剪切當前行

5dd 剪下游標及下面共5行

yy 複製游標所在行

5yy 複製游標及下面共5行

p 將之前dd或yy的資料貼上到游標位置

R 進入替換模式,輸入的任何資料都直接替換游標所在位置資料

在這裡插入圖片描述

6.7、組 合 命 令 ( 掌 握 )

Linux中的命令組合後,可以產生神奇的效果!

6.7.1、重定向輸出>和>>

在這裡插入圖片描述

例1:a.txt中內容為Hello,b.txt中內容為world,將內容合併到c.txt中

在這裡插入圖片描述

例2:a.txt中內容為Hello,b.txt中內容為world,c.txt中內容為Hello World,將內容合併並追加到c.txt中
在這裡插入圖片描述

6.7.2、管道 “|”

在這裡插入圖片描述

6.7.3、邏輯控制&&

在這裡插入圖片描述

在這裡插入圖片描述


7、網 絡

7.1、虛 擬 機 的 三 種 網 絡 連 接 方 式

7.1.1、Bridged橋接模式

這種方式下,虛擬機器就像一臺真正的計算機一樣,直接連線到實際的網路上,與宿主機沒有任何聯絡。

在這裡插入圖片描述

7.1.2、Host-only僅主機模式

這種方式下,虛擬機器的網絡卡連線到宿主的 VMnet1 上,但系統並不為虛擬機器提供任何路由服務,因此虛擬機器只能和宿主機進行通訊,而不能連線到實際網路上。

在這裡插入圖片描述

7.1.3、NAT模式

這種方式下,虛擬機器的網絡卡連線到宿主的 VMnet8 上。此時系統的 VMWare NAT Service 服務就充當了路由器的作用,負責將虛擬機發到 VMnet8 的包進行地址轉換之後發到實際的網路上,再將實際網路上返回的包進行地址轉換後通過 VMnet8 傳送給虛擬機器。VMWare DHCP Service 負責為虛擬機器提供 DHCP 服務。

在這裡插入圖片描述

7.2、配 置 文 件

配置網路時的幾個重要引數:IP、Netmask、Gateway、DNS IP。

在這裡插入圖片描述

網絡卡配置檔案

名稱 配置檔案 重要引數
網絡卡配置 /etc/sysconfig/network-scripts/ifcfg-ens33 DEVICE=物理裝置名 IPADDR=IP地址 NETMASK=掩碼值 NETWORK=網路地址 BROADCAST=廣播地址 GATEWAY=閘道器地址 ONBOOT=[yes|no](引導時是否啟用裝置) USERCTL=[yes|no](非root使用者是否可以控制該裝置) BOOTPROTO=[none|static|bootp|dhcp](引導時不使用協議|靜態分配|BOOTP協議|DHCP協議) HWADDR = 你的MAC地址NM_CONTROLLED=額外網管軟體,建設設定為no
私有DNS /etc/hosts IP 主機名 別名
DNS伺服器 /etc/resolv.conf NAMESERVER ip地址
主機名 /etc/hostname /etc/hosts 修改主機名需要重新啟動電腦:reboot

在這裡插入圖片描述

7.3、網 絡 管 理 指 令

重啟網路服務

Service network restart

7.4、常 用 指 令

7.4.1、ip指令(掌握)

ip是一個功能強大的綜合性網路指令,可以檢視網絡卡介面、路由、IP等功能。

檢視網絡卡IP資訊 ------------------- centos6.x ifconfig

ip addr

在這裡插入圖片描述

檢視網絡卡資料資料統計資訊

ip -s link

7.4.2、ping指令

ping,可以用來檢測兩臺連線的連線情況。

語法:

ping -c 數字 IP/主機名

-c:連線的次數。

-W:最長等待的秒數。

7.4.3、ss(掌握)

ss,指令,可以用來檢視網路介面。在centos7之前的版本中常用的是netstat這個指令。

ss -引數列表

常用引數:

a:瀏覽所有介面。

n:解析服務名為埠號數字

t:tcp

l:監聽的

p:顯示使用socket的程序資訊

u:udp

例1:檢視當前執行的所有tcp伺服器,顯示服務名。

在這裡插入圖片描述

例2:檢視當前執行的所有tcp伺服器,顯示埠號。

在這裡插入圖片描述

8、軟 件 的 安 裝

Linux上的軟體安裝只有root賬號才可以完成。

8.1、三 種 安 裝 方 法

Linux系統下的軟體安裝有三種方法。

8.1.1、tarball:原始碼安裝。

優點:軟體根據實際的機器硬體進行配置和編譯,效能最好、最穩定。

缺點:需要使用原始碼編譯、安裝,比較麻煩。

tarball就相當於我們自己做饅頭一樣,自己買面,合面,自己蒸,雖然比較麻煩,但是自己做的很香,還可以根據自己的口味調整。

在這裡插入圖片描述

大部分的tarball安裝的命令執行方式如下:

l ./configure 這個步驟是建立makefile這個檔案

l makeclean 消除下上次編譯過的目標檔案之類的,不是必須要有,但保險起見還是做一下

l make 會依據makefile當中預設工作(也就是第一個)進行編譯行為,主要是進行gcc將原始碼編譯成為可執行的目標檔案,而這個可執行檔案放置在目前所在的目錄之下

l make install 一般是最後的安裝步驟,make會依據makefile關於install的選項,將上個步驟所編譯完成的資料安裝到預設的目錄中

參考學習:https://blog.csdn.net/wangzengdi/article/details/32988275

8.1.2、rpm:二進位制安裝包安裝。

優點:安裝包直接執行安裝,相對tarball簡單些。

缺點:存在包依賴的問題,安裝時需要手動下載很多安裝包。

包依賴:安裝A包時,報錯提示需要B包,下載安裝B包時,報錯提示需要C包。。。。一直要把所有用的包都下載安裝才可以。rpm解決了這個問題。

rpm相當於成品饅頭,買回來直接吃。

在這裡插入圖片描述

1、找到相應的軟體包,比如soft.version.rpm,下載到本機某個目錄;
2、開啟一個終端,su -成root使用者;
3、cd soft.version.rpm所在的目錄;
4、輸入rpm -ivh soft.version.rpm

8.1.3、yum:自動下載二進位制包安裝。

rpm方式在安裝軟體時需要自己下載軟體,還要解決包依賴,而yum解決了這個問題,yum只需要執行幾個命令就可以自動下載並安裝軟體。

優點:最簡單方便的安裝方式,只要一條指令,系統就可以自動下載並安裝所有的包。

缺點:1. 必須要有軟體源(連網或者搭建軟體源) 2. 有些軟體沒有yum包,不能使用yum安裝,比如nginx等。

yum,就像外賣一樣,一個電話,香噴噴的餅頭和菜就送到家了,非常方便。
在這裡插入圖片描述

總結:如果能夠連網使用yum安裝軟體是最方便的,如果yum安裝不了,可以考慮rpm和tarball。

8.2、rpm安 裝 ( 掌 握 )

使用rpm非常的簡單隻需要幾個指令。

8.2.1、查詢軟體

指令1、列出所有已安裝的軟體

rpm -qa

指令2、檢視是否安裝了某個軟體

rpm -q 軟體名

例、檢視是否安裝了vim。

在這裡插入圖片描述

指令3、檢視某個已安裝的軟體的資訊

rpm -q[licdR] 已安裝的軟體名

-l:列出該軟體所有的檔案和目錄

-i:列出該軟體的詳細資訊,如開發商、版本、說明等

-c:列出該軟體所有的配置檔案(一般在/etc目錄下)

-d:列出該軟體所有的幫助檔案

R:列出該軟體依賴軟體所包含的檔案

例、檢視python軟體安裝之後所有檔案的路徑。

在這裡插入圖片描述

指令3、查詢某個檔案屬於哪個軟體

rpm -qf 檔名

8.2.2、安裝rpm軟體包

指令

rpm -ivh 軟體包

-i:安裝

-v:檢視更詳細的安裝資訊介面

-h:以安裝資訊欄顯示安裝進度

–prefix=安裝路徑:安裝的目錄,如果不設定會安裝到預設目錄中

–test:測試一下是否可以安裝

注意:在一其它的Linux版本中,比如ubuntu。用的是dpkg機制。

安裝目錄:使用–prefix可以指定安裝的目錄,如果沒有指定,預設會安裝到以下幾個目錄中:

安裝的軟體主要包含以下幾部分:可執行的程式、配置檔案、手冊、說明文件。

目錄 說明
/usr/bin 可執行的程式
/etc 配置檔案
/usr/share/doc 說明文件
/usr/man/man1 手冊

8.2.3、更新軟體

指令

rpm -Uvh 軟體包

8.2.4、解除安裝軟體

指令

rpm -e 已安裝的軟體名

8.2.5、重建rpm資料庫

由RPM檔案會經常 安裝/刪除/升級 等,某些操作或許會導致RPM資料庫/var/lib/rpm/內的檔案損壞。這時我們就需要重建一下RPM的資料庫:

rpm --rebuilddb

8.2.6、RPM的包依賴問題

RPM可以很方便實現軟體包的管理,但是卻有一個最最麻煩的問題:“包依賴”。

包依賴,當我們安裝A軟體時,會報錯提示需要先安裝B,這時我們安裝了B軟體之後,又報錯會提示我們需要先安裝C。。。。。最終我們為了安裝好一個軟體,需要把所有相關的依賴包都下載來先安裝,這就會花費我們大量的時間。

同時在解除安裝軟體時也要非常的小心,因為如果解除安裝的軟體包被其它軟體所依賴,那麼這個軟體解除安裝之後還會導致其它依賴它的軟體也無法使用。

如何解決呢?

使用YUM。

8.3、yum安裝

yum安裝的好處是無須手動下載軟體,只能簡單幾個指令,yum就會自動幫我們下載並完成安裝。

8.3.1、yum指令:

指令 描述
yum search 軟體名 查詢軟體
yum info 軟體名 檢視軟體資訊
yum list 列出yum伺服器上所有的軟體包
yum list updates 列出可供升級的軟體有哪些
yum install 軟體名 安裝軟體
yum update 軟體名 更新軟體
yum remove 軟體名 刪除軟體
yum repolist all 列出所有軟體源

注意:在一其它的Linux版本中,比如ubuntu。不叫yum,叫做apt-get,雖然軟體不同,但原理相同。

例、安裝vim軟體。(前提:需要聯網。)

先查詢有沒有這個軟體

在這裡插入圖片描述

搜尋到了幾個vim,選擇一個合適的安裝:

在這裡插入圖片描述

安裝時會詢問你是否下載安裝相關的依賴包,按y同意即可:

在這裡插入圖片描述

可以看到需要30多個依賴包,這些包yum會自動幫我們下載安裝,非常的方便,如果我們自己使用rpm來安裝,那簡直是惡夢!

8.3.2、yum的配置檔案

yum下載軟體時,必須要先有一個軟體源,否則yum不知道從哪裡才可以下載,軟體源是通過yum的配置檔案來配置的:/etc/yum.repos.d/CentOS-Base.repo。

在這裡插入圖片描述

這個檔案中有多個軟體源,以上圖中有三個(每個[xx]開始的就代表一個軟體源)

[xxx]:軟體源名字,xxx就是名字。

name:顯示軟體源時的名字,不太重要。

mirrorlist=:列出可以使用的站點。

baseurl=:這個最重要,資源實際的地址

enable=1:是否啟動,0代表不使用

因為yum有快取的功能,如果我們修改了軟體源需要清除一個現有資料

yum clean all

8.4、安 裝 gcc-c++的 編 譯 環 境

很多程式是C語言開發,安裝這些程式前需要安裝編譯環境,gcc-c++。兩種方式安裝gcc-c++

方式一:rpm方式安裝

方式二:yum安裝

8.4.1、rpm 和yum的區別

rpm是由紅帽公司開發的軟體包管理方式,使用rpm可以方便的進行軟體的安裝、解除安裝、升級、查詢等工作。但是rpm軟體包之間可能有依賴關係,處理這些依賴性問題往往會很繁瑣。例如使用rpm安裝gcc環境時,首先要有gcc的rpm包,如果沒則需要下載gcc的軟體包並上傳到Linux伺服器,但是在安裝gcc-c++時,會出現如下錯誤提示

在這裡插入圖片描述

8.4.2、rpm安裝gcc-c++

安裝步驟:1 提供gcc-c++需要的軟體包

      2 rpm安裝

在這裡插入圖片描述

意思是gcc-c++環境需要依賴gcc、libmpfr、libstdc這3個包,費了九牛二虎之力從網上找到這3個包並上傳到服務進行安裝,但是!在安裝這3個包時,又會出現新的類似的錯誤提示,然後接下來:下載、安裝、看到錯誤提示、下載、安裝、看到錯誤提示、下載、安裝……最後終於搞定了!

整個過程安裝了N個軟體包,而且需要按照一定的順序安裝,顯然你的內心是崩潰的!

最終完成的安裝方式:

1、上傳gcc-c++環境所需的所有軟體包

2、執行安裝,直接使用如下命令32****位:

rpm -ivh --nodeps cloog-ppl-0.15.7-1.2.el6.i686.rpm

rpm -ivh --nodeps cpp-4.4.7-18.el6.i686.rpm

rpm -ivh --nodeps gcc-4.4.7-18.el6.i686.rpm

rpm -ivh --nodeps gcc-c+±4.4.7-18.el6.i686.rpm

rpm -ivh --nodeps libstdc+±devel-4.4.7-18.el6.i686.rpm

rpm -ivh --nodeps mpfr-2.4.1-6.el6.i686.rpm

rpm -ivh --nodeps ppl-0.10.2-11.el6.i686.rpm

64****位:

rpm -ivh --nodeps cloog-ppl-0.15.7-1.2.el6.x86_64.rpm

rpm -ivh --nodeps cpp-4.4.7-18.el6.x86_64.rpm

rpm -ivh --nodeps gcc-4.4.7-18.el6.x86_64.rpm

rpm -ivh --nodeps gcc-c+±4.4.7-18.el6.x86_64.rpm

rpm -ivh --nodeps libstdc+±devel-4.4.7-18.el6.x86_64.rpm

rpm -ivh --nodeps mpfr-2.4.1-6.el6.x86_64.rpm

rpm -ivh --nodeps ppl-0.10.2-11.el6.x86_64.rpm

8.4.3、yum安裝gcc-c++

安裝命令:yum install gcc-c++

OK

9、系 統 服 務

服務,是指常期執行,常駐記憶體中的程序,比如,apache、mysql、ssh等。

9.1、服務與埠

每個服務軟體一般在執行時都會對應一個埠。

檢視監聽的埠

ss –lntp

在這裡插入圖片描述

9.2、防 火 牆 及 防 火 牆 設 置

CentOS 7.0預設使用的是firewall作為防火牆

檢視防火牆狀態

firewall-cmd --state

9.2.1、直接關閉firewalld防火牆

關閉防火牆:systemctl stop firewalld

防火牆狀態:systemctl status firewalld

9.2.2、iptables 防火牆失效的問題

解除安裝Firewall並安裝iptables後重新安裝回Firewall。安裝Firewall啟動時,提示

Failed to start firewalld.service: Unit firewalld.service is masked.

systemctl unmask firewalld.service

此時可以正常啟動Firewall了。

接下來順便講述一下Firewall的安裝,及一些簡單配置。

檢視狀態,看電腦上是否已經安裝 firewalld

#systemctl status firewalld

#yum install firewalld //安裝firewalld 防火牆

#systemctl start firewalld.service //開啟防火牆

# systemctl stop firewalld.service //關閉防火牆

# systemctl enable firewalld.service //設定開機自動啟動

# systemctl disable firewalld.service //設定關閉開機制動啟動

#firewall-cmd --reload //在不改變狀態的條件下重新載入防火牆

啟用某個服務

# firewall-cmd --zone=public --add-service=https //臨時

# firewall-cmd --permanent --zone=public --add-service=https //永久

開啟某個埠

#firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp //永久

#firewall-cmd --zone=public --add-port=8080-8081/tcp //臨時

檢視開啟的埠和服務

#firewall-cmd --permanent --zone=public --list-services //服務空格隔開 例如 dhcpv6-client https ss

#firewall-cmd --permanent --zone=public --list-ports //埠空格隔開 例如 8080-8081/tcp 8388/tcp 80/tcp

#systemctl restart firewalld.service //修改配置後需要重啟服務使其生效

#firewall-cmd --zone=public --query-port=8080/tcp //檢視服務是否生效(例:新增的埠為8080

10、進 程 管 理

如何檢視當前正在執行的程式呢?

10.1、ps 指 令(掌 握)

檢視當前系統中正在執行的所有的程式

ps 正在執行的某個程序的狀態

ps –ef 檢視所有程序

ps –ef | grep ssh 查詢某一程序

ps -aux命令可以檢視更詳細的程序資訊!

kill 殺掉某一程序

kill 2868 殺掉2868編號的程序

kill -9 2868 強制殺死程序

在這裡插入圖片描述

10.2、top指 令 (