首頁技術(shù)文章正文

systemctl命令怎么用與防火墻的相關(guān)操作介紹[linux云計算+運(yùn)維開發(fā)]

更新時間:2020-03-20 來源:黑馬程序員 瀏覽量:

自有服務(wù),即不需要用戶獨(dú)立去安裝的軟件的服務(wù),而是當(dāng)系統(tǒng)安裝好之后就可以直接使用的服務(wù)(內(nèi)置)

學(xué)習(xí)目標(biāo)
1、了解systemctl命令用途
2、掌握使用systemctl開啟,關(guān)閉,重啟服務(wù)
3、了解常見自有服務(wù)ntpd,firewalld,crond的作用
4、掌握ntpdate時間同步原理與實(shí)現(xiàn)
5、掌握防火墻的相關(guān)操作(添加和刪除簡單規(guī)則,開啟,關(guān)閉防火墻)
6、了解源碼包和二進(jìn)制包的區(qū)別
7、掌握rpm包的卸載、安裝以及更新操作
8、了解計劃任務(wù)的作用
9、掌握計劃任務(wù)的編輯



本文目錄

一、自有服務(wù)概述

二、systemctl管理服務(wù)命令

1、顯示服務(wù)

2、查看啟動和停止服務(wù)

3、服務(wù)持久化

三、常用自有服務(wù)(ntp,firewalld,crond)

1、ntp時間同步服務(wù)

2、firewalld防火墻

1)什么是防火墻

2)傳統(tǒng)Linux防火墻

3、firewalld防火墻的概念

1)區(qū)域

2)運(yùn)行模式和永久模式

4、firewalld防火墻的配置

1)查看,開啟和停止firewalld服務(wù)

2) 管理firewall配置

5、計劃任務(wù)crontab

1)計劃任務(wù)的作用

2)查看計劃任務(wù)

3)編輯計劃任務(wù)(重點(diǎn))

4)幾個小案例

5)擴(kuò)展

四、Linux軟件包

1、軟件包概述

2、如何獲取rpm包

3、從光盤獲取

3.1 虛擬機(jī)中加載光盤

3.2 使用 # lsblk(list block devices)或者df -T 查看塊狀設(shè)備的信息

3.3 進(jìn)入/run/media/root/CentOS 7 x86_64/Packages目錄

4、查詢某個軟件安裝情況

5、卸載某個軟件

6、安裝某個軟件

7、更新某個軟件

8、rpm擴(kuò)展

8.1依賴關(guān)系

8.2 查看文件所屬的包名(實(shí)用)

8.3查詢軟件安裝完成后,生成了哪些文件

9、擴(kuò)展:光盤的掛載和解掛



一、自有服務(wù)概述

服務(wù)是一些特定的進(jìn)程,自有服務(wù)就是系統(tǒng)開機(jī)后就自動運(yùn)行的一些進(jìn)程,一旦客戶發(fā)出請求,這些進(jìn)程就自動為他們提供服務(wù),windows系統(tǒng)中,把這些自動運(yùn)行的進(jìn)程,稱為”服務(wù)“。

舉例:當(dāng)我們使用SSH客戶端軟件連接linux的時候,我們的服務(wù)器為什么會對連接做出響應(yīng)?是因為SSH服務(wù)開機(jī)就自動運(yùn)行了。

所謂自有服務(wù),簡單來說,可以理解為Linux系統(tǒng)開機(jī)自動運(yùn)行的服務(wù)(程序)。

我們?nèi)绾喂芾磉@些自有服務(wù)呢?推薦了解linux云計算+運(yùn)維開發(fā)課程

二、systemctl管理服務(wù)命令

在Centos7之前,通過service 和 chkconfig兩個命令來管理服務(wù)

service: 負(fù)責(zé)啟動,停止服務(wù),顯示服務(wù)狀態(tài)

chkconfig: 指定服務(wù)是否開機(jī)啟動

從Centos7開始,統(tǒng)一使用systemctl來管理服務(wù), systemctl同時具有service和chkconfig命令的功能。


1、顯示服務(wù)

命令:systemctl

作用:管理服務(wù)

語法:#systemctl   [選項]

選項:
list-units --type service --all:列出所有服務(wù)(包含啟動的和沒啟動的)

list-units --type service:列出所有啟動的服務(wù)

用法一:systemctl list-units --type service --all 不加具體服務(wù)名
示例代碼:
#systemctl list-units --type service --all
含義:列出所有服務(wù),包括已運(yùn)行的和沒有運(yùn)行的空格可以翻頁,q退出
linux自有服務(wù)2.1.1


用法二:systemctl list-units --type service 不加具體服務(wù)名
示例代碼:
#systemctl list-units --type service
含義:列出已運(yùn)行的服務(wù)空格可以翻頁,q退出

linux自有服務(wù)2.1.2

2、查看啟動和停止服務(wù)

命令:systemctl

作用:管理服務(wù)

語法:#systemctl   [選項]  服務(wù)名

選項:

     status:檢查指定服務(wù)的運(yùn)行狀況

     start:啟動指定服務(wù)

    stop:停止指定服務(wù)

    restart:重啟指定服務(wù)

    reload:重新加載指定服務(wù)的配置文件(并非所有服務(wù)都支持reload,通常使用restart)

用法三:systemctl 選項 服務(wù)名
示例代碼:
#systemctl status crond
含義:查看crond服務(wù)的狀態(tài)

linux自有服務(wù)2.2.1

Active:active(running) 表示當(dāng)前crond服務(wù)是運(yùn)行狀態(tài)。

用法四:systemctl 選項 服務(wù)名
示例代碼:
#systemctl stop crond
含義:停止crond服務(wù)

linux自有服務(wù)2.2.2

Inactive,表示crond服務(wù)當(dāng)前是停止?fàn)顟B(tài)

用法五:systemctl 選項 服務(wù)名
示例代碼:
#systemctl start crond
含義:啟動crond服務(wù)

linux自有服務(wù)2.2.3

用法六:systemctl 選項 服務(wù)名
示例代碼:
#systemctl restart crond
含義:重啟crond服務(wù)

#systemctl reload crond
含義:重新加載crond服務(wù)配置文件
linux自有服務(wù)2.2.4

3、服務(wù)持久化

所謂服務(wù)持久化,就是服務(wù)在開機(jī)的時候,是否自動啟動。

命令:systemctl

作用:管理服務(wù)

語法:#systemctl   [選項]  服務(wù)名

選項: enable:指定服務(wù)開機(jī)自動啟動

            disable:取消服務(wù)開機(jī)自動啟動

用法七:systemctl 選項 服務(wù)名
示例代碼:
#systemctl disable crond
含義:取消crond服務(wù)開機(jī)啟動

linux自有服務(wù)2.3.1
用法八:systemctl 選項 服務(wù)名
示例代碼:
#systemctl disable crond
含義:指定crond服務(wù)開機(jī)啟動

linux自有服務(wù)2.3.2

systemctl參數(shù)總結(jié)
linux自有服務(wù)2.3.3

三、常用自有服務(wù)(ntp,firewalld,crond)

ntpd:用于同步計算機(jī)的系統(tǒng)時間的服務(wù)
firewalld:防火墻服務(wù)
|crond:計劃任務(wù)服務(wù)

1、ntp時間同步服務(wù)

NTP是網(wǎng)絡(luò)時間協(xié)議(Network Time Protocol),它是用來同步網(wǎng)絡(luò)中各個計算機(jī)的時間的協(xié)議。

工作場景:

公司開發(fā)了一個電商網(wǎng)站,由于訪問量很大,網(wǎng)站后端由100臺服務(wù)器組成集群。50臺負(fù)責(zé)接收訂單,50臺負(fù)責(zé)安排發(fā)貨,接收訂單的服務(wù)器需要記錄用戶下訂單的具體時間,把數(shù)據(jù)傳給負(fù)責(zé)發(fā)貨的服務(wù)器,由于100臺服務(wù)器時間各不相同,記錄的時間經(jīng)常不一致,甚至?xí)霈F(xiàn)下單時間是明天,發(fā)貨時間是昨天的情況。

1)NTP同步服務(wù)器原理

標(biāo)準(zhǔn)時間是哪里來的?

現(xiàn)在的標(biāo)準(zhǔn)時間是由原子鐘報時的國際標(biāo)準(zhǔn)時間UTC(Universal Time Coordinated,世界協(xié)調(diào)時),所以NTP獲得UTC的時間來源可以是原子鐘、天文臺、衛(wèi)星,也可以從Internet上獲取。

在NTP中,定義了時間按照服務(wù)器的等級傳播,Stratum層的總數(shù)限制在15以內(nèi)

工作中,通常我們會直接使用各個組織提供的,現(xiàn)成的NTP服務(wù)器。

linux自有服務(wù)3.1.1

2)到哪里去找NPT服務(wù)器

        NTP授時網(wǎng)站:http://www.ntp.org.cn/pool.php

linux自有服務(wù)3.1.2

3)時間同步操作

同步服務(wù)器時間方式有2 個:一次性同步手動同步、通過服務(wù)自動同步。

手動同步

用法一:ntpdate 時間服務(wù)器IP
示例代碼:
#ntpdate 120.25.108.11
含義:從服務(wù)器120.25.108.11同步標(biāo)準(zhǔn)網(wǎng)絡(luò)時間到服務(wù)器(120.25.108.11服務(wù)器由阿里云提供,可以從http://www.ntp.org.cn/pool.php網(wǎng)站獲?。?/span>
注意:從網(wǎng)絡(luò)同步時間,要確保自己的服務(wù)器可以訪問互聯(lián)網(wǎng)

linux自有服務(wù)3.1.3.

錯誤信息:no servers can be used

含義:服務(wù)器不可用,這里的服務(wù)器是指網(wǎng)絡(luò)上的時間服務(wù)器,不可用,不代表是對方服務(wù)器有問題,也有可能是你自己的服務(wù)器網(wǎng)絡(luò)不通,無法連接到網(wǎng)絡(luò)上的時間服務(wù)器。

自動同步

用法二:啟動ntpd服務(wù),并配置為開機(jī)啟動
示例代碼:
#systemctl start ntpd
#systemctl enable ntpd
含義:啟動ntpd服務(wù),并配置為開機(jī)啟動,服務(wù)啟動后,系統(tǒng)會自動同步網(wǎng)絡(luò)時間
注意:從網(wǎng)絡(luò)同步時間,要確保自己的服務(wù)器可以訪問互聯(lián)網(wǎng)

linux自有服務(wù)3.1.3.2

問題1:啟動ntpd服務(wù)后,是不是時間就自動同步了?

啟動后就自動同步了

問題2:需不需要讓ntpd服務(wù),開機(jī)自動運(yùn)行?

需要

ntpd服務(wù)配置文件位置  /etc/ntp.conf

2、firewalld防火墻

1)什么是防火墻

防火墻:防范一些網(wǎng)絡(luò)攻擊。有軟件防火墻、硬件防火墻之分。

linux自有服務(wù)3.2.1.1

防火墻選擇讓正常請求通過,從而保證網(wǎng)絡(luò)安全性。

Windows防火墻:

linux自有服務(wù)3.2.1.2

2)傳統(tǒng)Linux防火墻

linux自有服務(wù)3.2.2

3、firewalld防火墻的概念

1)區(qū)域

CentOS6x中防火墻叫做iptables

CentOS7.x 中默認(rèn)使用的防火墻是firewalld

firewalld增加了區(qū)域的概念,所謂區(qū)域是指,firewalld**預(yù)先準(zhǔn)備了幾套防火墻策略的集合**,類似于**策略的模板**,用戶可以根據(jù)需求選擇區(qū)域。

常見區(qū)域及相應(yīng)策略規(guī)則


區(qū)域       默認(rèn)策略

trusted     允許所有數(shù)據(jù)包
home       拒絕流入的流量,除非與流出的流量相關(guān),允許ssh,mdns,ippclient,amba-client,dhcpv6-client服務(wù)通過
internal    等同于home
work        拒絕流入的流量,除非與流出的流量相關(guān),允許ssh,ipp-client,dhcpv6-client服務(wù)通過
public      拒絕流入的流量,除非與流出的流量相關(guān),允許ssh,dhcpv6-client服務(wù)通過
external   拒絕流入的流量,除非與流出的流量相關(guān),允許ssh服務(wù)通過
dmz         拒絕流入的流量,除非與流出的流量相關(guān),允許ssh服務(wù)通過
block       拒絕流入的流量,除非與流出的流量相關(guān),非法流量采取拒絕操作
drop        拒絕流入的流量,除非與流出的流量相關(guān),非法流量采取丟棄操作

2)運(yùn)行模式和永久模式

運(yùn)行模式:此模式下,配置的防火墻策略立即生效,但是不寫入配置文件

永久模式:此模式下,配置的防火墻策略寫入配置文件,但是需要reload重新加載才能生效。
firewall默認(rèn)采用運(yùn)行模式

4、firewalld防火墻的配置

1)查看,開啟和停止firewalld服務(wù)

命令:systemctl

作用:管理服務(wù)

語法:#systemctl   [選項]  firewalld

選項:
status:檢查指定服務(wù)的運(yùn)行狀況

start:啟動指定服務(wù)

stop:停止指定服務(wù)

restart:重啟指定服務(wù)

reload:重新加載指定服務(wù)的配置文件(并非所有服務(wù)都支持reload,通常使用restart)


使用systemctl來管理firewalld的服務(wù),具體命令前面已經(jīng)講過,只是服務(wù)名換成了firewalld,這里不再贅述。

2) 管理firewall配置

命令:firewall-cmd

作用:管理firewall具體配置

語法:#firewall-cmd  [參數(shù)選項1] ....[參數(shù)選項n]

常用選項:  

linux自有服務(wù)3.4.1.1

①查看默認(rèn)使用的區(qū)域

用法一:firewall-cmd 選項
示例代碼:
#firewall-cmd --get-default-zone
含義:查看默認(rèn)使用區(qū)域,當(dāng)前默認(rèn)使用區(qū)域為public
linux自有服務(wù)3.4.2.1

②查看所有可用區(qū)域

用法二:firewall-cmd 選項
示例代碼:
#firewall-cmd --get-zones
含義:查看所有可用區(qū)域
linux自有服務(wù)3.4.2.2

③列出當(dāng)前使用區(qū)域配置

用法三:firewall-cmd 選項
示例代碼:
#firewall-cmd --list-all
含義:查看所有可用區(qū)域

linux自有服務(wù)3.4.2.3

④列出所有區(qū)域的配置

用法四:firewall-cmd 選項
示例代碼:
#firewall-cmd --list-all-zones
含義:查看所有可用區(qū)域

linux自有服務(wù)3.4.2.4

⑤添加允許通過的服務(wù)或端口

用法五:firewall-cmd 選項
示例代碼:
#firewall-cmd --zone=public --add-port=1024/tcp
含義:在public區(qū)域,添加允許tcp協(xié)議的1024端口通過的規(guī)則

#firewall-cmd --zone=public --add-service=ftp
含義:在public區(qū)域,添加允許ftp服務(wù)通過的規(guī)則
linux自有服務(wù)3.4.2.5

⑥去掉允許通過的服務(wù)或端口

用法五:firewall-cmd 選項
示例代碼:
#firewall-cmd --zone=public --remove-port=1024/tcp
含義:在public區(qū)域,去掉允許tcp協(xié)議的1024端口通過的規(guī)則

#firewall-cmd --zone=public --remove-service=ftp
含義:在public區(qū)域,去掉允許ftp服務(wù)通過的規(guī)則
linux自有服務(wù)3.4.2.5

⑦永久模式參數(shù)permaent

用法七:firewall-cmd 選項
示例代碼:
#firewall-cmd --permanent --zone=public --add-port=1024/tcp
含義:在public區(qū)域,使用permanent參數(shù),永久添加允許1024端口通過的規(guī)則

⑧重新加載配置reload

用法七:firewall-cmd 選項
示例代碼:
#firewall-cmd --reload
含義:重新加載配置

linux自有服務(wù)3.4.2.8

5、計劃任務(wù)crontab

1)計劃任務(wù)的作用

作用:操作系統(tǒng)不可能24 小時都有人在操作,有些時候想在指定的時間點(diǎn)去執(zhí)行任務(wù)(例如:每天凌晨 2 點(diǎn)去重新啟動Apache),此時不可能真有人每天夜里 2 點(diǎn)去執(zhí)行命令,這就可以交給計劃任務(wù)程序去執(zhí)行操作了。

2)查看計劃任務(wù)

語法:# crontab   選項

常用選項:

-l:list,列出指定用戶的計劃任務(wù)列表==

-e:edit,編輯指定用戶的計劃任務(wù)列表,簡單來說,計劃任務(wù)就是一個文件==

-u:user,指定的用戶名,如果不指定,則表示當(dāng)前用戶

-r:remove,刪除指定用戶的計劃任務(wù)列表

示例代碼:列出當(dāng)前用戶的計劃任務(wù)列表
linux自有服務(wù)3.5.2.1

上述的提示,代表 root 用戶沒有計劃任務(wù)需要去做。

3)編輯計劃任務(wù)(重點(diǎn))
進(jìn)入計劃任務(wù)編輯文件
linux自有服務(wù)3.5.3.1


打開計劃任務(wù)編輯文件后,可以在此文件中編寫我們自定義的計劃任務(wù):

計劃任務(wù)的規(guī)則語法格式,以行為單位,一行則為一個計劃:

分      時      日      月      周      需要執(zhí)行的命令

例如:0 0 * * * reboot,代表每天0時0分執(zhí)行reboot指令。

取值范圍(常識):
分:0~59
時:0~23
日:1~31
月:1~12
周:0~7,0 和 7 表示星期天

四個符號:
*:表示取值范圍中的每一個數(shù)字
-:做連續(xù)區(qū)間表達(dá)式的,要想表示1~7,則可以寫成:1-7
/:表示每多少個,例如:想每 10 分鐘一次,則可以在分的位置寫:*/10
,:表示多個取值,比如想在 1 點(diǎn),2 點(diǎn) 6 點(diǎn)執(zhí)行,則可以在時的位置寫:1,2,6

特別補(bǔ)充:在Linux系統(tǒng)中,有些命令不能直接在計劃任務(wù)中使用,使用后,其也不會生效。如useradd命令。如果想讓其生效必須使用完整路徑。

問題:如何查詢一個命令的真實(shí)路徑在哪個位置?
答:使用whereis命令名稱

4)幾個小案例

問題1:每月1、10、22 日的4:45 重啟network 服務(wù)

問題2:每周六、周日的1:10 重啟network 服務(wù)

問題3:每天18:00 至23:00 之間每隔30 分鐘重啟network 服務(wù)

問題4:每隔兩天的上午8 點(diǎn)到11 點(diǎn)的第3 和第15 分鐘執(zhí)行一次重啟

分時日月周  命令或服務(wù)

問題1:45  4  1,10,22   *   *   service   network   restart

問題2:10  1  *  *  6,7  service   network   restart

問題3:*/30  18-23   *   *   *   service network restart

問題4:3,15   8-11  */2   *   *   reboot

案例:每1 分鐘往 root 家目錄中的 readme.txt 中輸一個1,為了看到效果使用追加輸出【輸出使用echo 命令,語法:# echo 輸出的內(nèi)容】

linux自有服務(wù)3.5.4.1

在末行模式下輸入:wq保存并退出,使用tail -f查看readme.txt動態(tài)變化
linux自有服務(wù)3.5.4.2
注意:在計劃任務(wù)中,默認(rèn)最小單位就是分,不能再小了。如果需要做到秒級別則需要配合研發(fā)相關(guān)代碼。

5)擴(kuò)展

① crontab 權(quán)限問題

crontab是任何用戶都可以創(chuàng)建的計劃任務(wù),但是超級管理員可以通過配置來設(shè)置某些用戶不允許設(shè)置計劃任務(wù) 。

黑名單配置文件位于:/etc/cron.deny里面寫用戶名,一行只能寫一個

linux自有服務(wù)3.5.1.1

保存退出,切換到cndws普通用戶,執(zhí)行crontab命令,如下圖所示:

linux自有服務(wù)3.5.1.2

白名單還有一個配置文件

/etc/cron.allow (本身不存在,自己創(chuàng)建)

注意:白名單優(yōu)先級高于黑名單,如果一個用戶同時存在兩個名單文件中,則會被默認(rèn)允許創(chuàng)建計劃任務(wù)。

② 查看計劃任務(wù)文件保存路徑

問題:計劃任務(wù)文件具體保存在哪里呢?

答:/var/spool/cron/用戶名文件中,如果使用root用戶編輯計劃任務(wù),則用戶文件名為root
linux自有服務(wù)3.5.5.2.1

③ 查看計劃任務(wù)日志信息

問題:在實(shí)際應(yīng)用中,我們?nèi)绾尾榭炊〞r任務(wù)運(yùn)行情況?

答:通過計劃任務(wù)日志,日志文件位于/var/log/cron
linux自有服務(wù)3.5.5.3.1

四、Linux軟件包

1、軟件包概述

這是什么?
linux自有服務(wù)4.1.1
Linux下也有很多可以安裝的軟件,而這些軟件的安裝包可細(xì)分為兩種,分別是源碼包二進(jìn)制包。

1)源碼包

源碼包就是一大堆源代碼程序,是由程序員按照特定的格式和語法編寫出來的。計算機(jī)只能識別機(jī)器語言,也就是二進(jìn)制語言,所以源碼包安裝之前需要編譯。

·編譯過程耗時較長
·大多數(shù)用戶不懂開發(fā),編譯過程中可能會有各種錯誤,用戶無力解決。
為了解決使用源碼包安裝的問題,Linux 軟件包的安裝出現(xiàn)了使用二進(jìn)制包的安裝方式。

2)二進(jìn)制包

二進(jìn)制包,也就是源碼包經(jīng)過成功編譯之后產(chǎn)生的包。

二進(jìn)制包是 Linux 下默認(rèn)的軟件安裝包,目前主要有以下 2 大主流的二進(jìn)制包管理系統(tǒng):

RPM 包管理系統(tǒng):功能強(qiáng)大,安裝、升級、査詢和卸載非常簡單方便,因此很多 Linux 發(fā)行版都默認(rèn)使用此機(jī)制作為軟件安裝的管理方式,例如 Fedora、==CentOS==、SuSE 等。
- DPKG 包管理系統(tǒng):由 Debian Linux 所開發(fā)的包管理機(jī)制,通過 DPKG 包,Debian Linux 就可以進(jìn)行軟件包管理,主要應(yīng)用在 Debian 和 Ubuntu 中。

RPM是RedHat Package Manager(RedHat軟件包管理工具)的縮寫

作用:rpm 的作用類似于豌豆莢,華為應(yīng)用市場,App Store,主要作用是對linux 服務(wù)器上的軟件包進(jìn)行對應(yīng)管理操作,管理分為:查詢、卸載、安裝/更新。

2、如何獲取rpm包

要想裝軟件,和windows 下一樣,先得找到安裝包:xxx.rpm軟件包的獲得方式:

a. 去官網(wǎng)去下載(http://rpm.pbone.net);

b. 不介意老版本的話,可以從光盤(或者鏡像文件)中讀??;

3、從光盤獲取

3.1 虛擬機(jī)中加載光盤
linux自有服務(wù)4.3.1

3.2 使用 # lsblk(list block devices)或者df -T 查看塊狀設(shè)備的信息

linux自有服務(wù)4.3.2

Name:名稱
Size:設(shè)備大小
Type:類型
MountPoint:掛載點(diǎn)
此界面類似于Windows 下的磁盤管理界面:
linux自有服務(wù)4.3.2.2

3.3 進(jìn)入/run/media/root/CentOS 7 x86_64/Packages目錄

#/run/media/root/CentOS 7 x86_64/Packages

#ls

linux自有服務(wù)4.3.3.1


4、查詢某個軟件安裝情況

語法:# rpm -qa | grep 軟件名稱

選項:

-q:查詢,query

-a:全部,all

示例代碼:查詢firefox瀏覽器的安裝情況,已安裝

#rpm -qa |grep firefox
linux自有服務(wù)4.4.4.1

linux自有服務(wù)4.4.4.2


示例代碼:查詢qq軟件的安裝情況,未安裝

#rpm -qa |grep qq

linux自有服務(wù)4.5.1



5、卸載某個軟件

卸載某個軟件

語法:# rpm -e 軟件的名稱(建議寫完整的名稱,通過-qa 查詢)

案例:卸載火狐瀏覽器

#rpm -qa |grep firefox        首先查詢firefox軟件的完整名稱
firefox-45.7.0-2.el6.centos.x86_64

#rpm -e firefox-45.7.0-2.el6.centos.x86_64
linux自有服務(wù)4.5.1

卸載完成后,單擊firefox瀏覽器圖標(biāo),運(yùn)行結(jié)果如下圖所示:
linux自有服務(wù)4.5.2


6、安裝某個軟件

命令:rpm

作用:管理rpm軟件包

語法:# rpm -ivh 軟件包完整路徑名稱

選項:

-i:install,安裝

-v:顯示進(jìn)度條

-h:表示以"#"形式顯示進(jìn)度條

示例代碼:將剛剛卸載的firefox火狐瀏覽器重新安裝(在DVD光盤1中)

用法:rpm -ivh 軟件包名稱
示例代碼:
#cd /run/media/root/CentOS\ 7\ x86_64/Packages/
進(jìn)入光盤Packages目錄,里面存放了很多rpm的安裝包

#ll |grep firefox
查看Packages目錄下,包含firefox的安裝包

#rpm -ivh firefox-60.2.2-1.el7.centos.x86_64.rpm
使用rpm命令,安裝firefox軟件包

#rpm -qa |grep firefox
查詢是否安裝完成
linux自有服務(wù)4.6.1

安裝完成后,打開firefox瀏覽器
linux自有服務(wù)4.6.2

7、更新某個軟件

語法:# rpm -Uvh 完整的安裝包路徑

選項:

-U:upgrade,升級

-v:表示顯示進(jìn)度條

-h:表示以#形式顯示進(jìn)度條

這里我會提供給大家firefox的高版本的安裝包

firefox-60.8.0-1.el7.centos.x86_64.rpm    這個包是用來升級的

firefox-68.4.1-1.el7.centos.x86_64.rpm

用法:rpm -Uvh 軟件包名稱
示例代碼:
#rpm -qa |grep firefox
查詢當(dāng)前firefox的版本

#ll
查看root目錄下,我們剛剛拷到虛機(jī)上的RPM安裝包的名稱

#rpm -Uvh firefox-60.8.0-1.el7.centos.x86_64.rpm
使用rpm命令,安裝60.8.0版本的軟件包

#rpm -qa |grep firefox
查詢升級后的firefox版本
linux自有服務(wù)4.7.1

8、rpm擴(kuò)展

8.1依賴關(guān)系

一個軟件必須先有其他軟件才能運(yùn)行,例如之前xmind啟動過程中提示的缺少DLL,稱之為依賴。

WAMP(Windows + Apache + MySQL + PHP)安裝前必須先安裝VC++ 2014 x86_64,這種情況就稱之為有依賴關(guān)系。

60.8.0的firefox可以更新成功

下面我們嘗試更新到68.4.1的版本

用法:rpm -Uvh 軟件包名稱

#rpm -Uvh firefox-68.4.1-1.el7.centos.x86_64.rpm
使用rpm命令,安裝68.4.1版本的軟件包

用法:rpm -Uvh 軟件包名稱
#rpm -Uvh firefox-68.4.1-1.el7.centos.x86_64.rpm
使用rpm命令,安裝68.4.1版本的軟件包

錯誤提示:

error:Failed dependencies:

提示安裝68版本的firefox需要依賴nspr4.21的版本,nss的3.44的版本,這就是我們說的依賴關(guān)系。

為了解決依賴關(guān)系的問題,有另外一個管理工具叫做yum,后面我們會講到。

8.2 查看文件所屬的包名(實(shí)用)

語法:# rpm -qf 需要查詢的文件路徑

選項:

-f:查詢文件所屬包

示例代碼:查詢/etc/ntp.conf 屬于哪個軟件包?

linux自有服務(wù)4.8.1

8.3查詢軟件安裝完成后,生成了哪些文件

語法:# rpm  -ql   需要查詢的軟件包名稱

#rpm -ql firefox

#rpm -ql openssh

特別說明:軟件安裝完成后,一共生成了以下幾類文件
配置文件類:/etc目錄
程序文件本身,二進(jìn)制文件命令:/usr/sbin目錄
文檔手冊:/usr/share/doc或man目錄

9、擴(kuò)展:光盤的掛載和解掛

① 解掛操作

命令:umount

語法:# umount 當(dāng)前設(shè)備的掛載點(diǎn)(路徑)

例如:
#umount /run/media/root/CentOS\ 7\ x86_64/

linux自有服務(wù)4.9.1

② 掛載光盤

首先新建一個掛載點(diǎn),然后使用mount命令進(jìn)行掛在,掛載點(diǎn)可以理解為就是一個空目錄

命令:mount

語法:# mount  設(shè)備文件原始地址(/dev目錄)  要掛載的位置路徑(盤符)

設(shè)備原始地址:地址統(tǒng)一都在/dev 下,然后根據(jù)大小確定具體name 值,拼湊在一起組成原

始地址,例如當(dāng)前:"/dev/sr0"

用法:mount 設(shè)備 掛載點(diǎn)
示例代碼:
#mkdir /mnt/dvd
新建一個目錄作為掛載點(diǎn)

#mount /dev/sr0 /mnt/dvd
將光驅(qū)設(shè)備/dev/sr0 掛載到 /mnt/dvd這個掛載點(diǎn)

#df -T
可以看到已經(jīng)成功掛載
linux自有服務(wù)4.9.3
分享到:
在線咨詢 我要報名
和我們在線交談!