Linux入門(mén):Linux自有服務(wù)及軟件包(linux自帶服務(wù)器)
typora-copy-images-to: ./media
自有服務(wù),即不需要用戶獨(dú)立去安裝的軟件的服務(wù),而是當(dāng)系統(tǒng)安裝好之后就可以直接使用的服務(wù)(內(nèi)置)
學(xué)習(xí)目標(biāo)
1、了解systemctl命令用途
2、掌握使用systemctl開(kāi)啟,關(guān)閉,重啟服務(wù)
3、了解常見(jiàn)自有服務(wù)NTPd,firewalld,crond的作用
4、掌握ntpdate時(shí)間同步原理與實(shí)現(xiàn)
5、掌握防火墻的相關(guān)操作(添加和刪除簡(jiǎn)單規(guī)則,開(kāi)啟,關(guān)閉防火墻)
6、了解源碼包和二進(jìn)制包的區(qū)別
7、掌握rpm包的卸載、安裝以及更新操作
8、了解計(jì)劃任務(wù)的作用
9、掌握計(jì)劃任務(wù)的編輯
一、自有服務(wù)概述
? 服務(wù)是一些特定的進(jìn)程,自有服務(wù)就是系統(tǒng)開(kāi)機(jī)后就自動(dòng)運(yùn)行的一些進(jìn)程,一旦客戶發(fā)出請(qǐng)求,這些進(jìn)程就自動(dòng)為他們提供服務(wù),windows系統(tǒng)中,把這些自動(dòng)運(yùn)行的進(jìn)程,稱為”服務(wù)“ ? 舉例:當(dāng)我們使用SSH客戶端軟件連接linux的時(shí)候,我們的服務(wù)器為什么會(huì)對(duì)連接做出響應(yīng)?是因?yàn)镾SH服務(wù)開(kāi)機(jī)就自動(dòng)運(yùn)行了。
? 所謂自有服務(wù),簡(jiǎn)單來(lái)說(shuō),可以理解為L(zhǎng)inux系統(tǒng)開(kāi)機(jī)自動(dòng)運(yùn)行的服務(wù)(程序)。
? 我們?nèi)绾喂芾磉@些自有服務(wù)呢?
二、systemctl管理服務(wù)命令
? 在centos7之前,通過(guò)service 和 chkconfig兩個(gè)命令來(lái)管理服務(wù)
service: 負(fù)責(zé)啟動(dòng),停止服務(wù),顯示服務(wù)狀態(tài)
chkconfig: 指定服務(wù)是否開(kāi)機(jī)啟動(dòng)
? 從Centos7開(kāi)始,統(tǒng)一使用systemctl來(lái)管理服務(wù), systemctl同時(shí)具有service和chkconfig命令的功能。
1、顯示服務(wù)
命令:systemctl
作用:管理服務(wù)
語(yǔ)法:#systemctl [選項(xiàng)]
選項(xiàng):list-units –type service –all:列出所有服務(wù)(包含啟動(dòng)的和沒(méi)啟動(dòng)的)
? list-units –type service:列出所有啟動(dòng)的服務(wù)
用法一:systemctl list-units --type service --all 不加具體服務(wù)名示例代碼:#systemctl list-units --type service --all含義:列出所有服務(wù),包括已運(yùn)行的和沒(méi)有運(yùn)行的空格可以翻頁(yè),q退出
用法二:systemctl list-units --type service 不加具體服務(wù)名示例代碼:#systemctl list-units --type service含義:列出已運(yùn)行的服務(wù)空格可以翻頁(yè),q退出
2、查看啟動(dòng)和停止服務(wù)
命令:systemctl
作用:管理服務(wù)
語(yǔ)法:#systemctl [選項(xiàng)] 服務(wù)名
選項(xiàng): status:檢查指定服務(wù)的運(yùn)行狀況
? start:?jiǎn)?dòng)指定服務(wù)
? stop:停止指定服務(wù)
? restart:重啟指定服務(wù)
? reload:重新加載指定服務(wù)的配置文件(并非所有服務(wù)都支持reload,通常使用restart)
用法三:systemctl 選項(xiàng) 服務(wù)名示例代碼:#systemctl status crond含義:查看crond服務(wù)的狀態(tài)
Active:active(running) 表示當(dāng)前crond服務(wù)是運(yùn)行狀態(tài)。
用法四:systemctl 選項(xiàng) 服務(wù)名示例代碼:#systemctl stop crond含義:停止crond服務(wù)
Inactive,表示crond服務(wù)當(dāng)前是停止?fàn)顟B(tài)
用法五:systemctl 選項(xiàng) 服務(wù)名示例代碼:#systemctl start crond含義:?jiǎn)?dòng)crond服務(wù)
用法六:systemctl 選項(xiàng) 服務(wù)名示例代碼:#systemctl restart crond含義:重啟crond服務(wù)#systemctl reload crond含義:重新加載crond服務(wù)配置文件
3、服務(wù)持久化
? 所謂服務(wù)持久化,就是服務(wù)在開(kāi)機(jī)的時(shí)候,是否自動(dòng)啟動(dòng)。
命令:systemctl
作用:管理服務(wù)
語(yǔ)法:#systemctl [選項(xiàng)] 服務(wù)名
選項(xiàng): enable:指定服務(wù)開(kāi)機(jī)自動(dòng)啟動(dòng)
? disable:取消服務(wù)開(kāi)機(jī)自動(dòng)啟動(dòng)
用法七:systemctl 選項(xiàng) 服務(wù)名示例代碼:#systemctl disable crond含義:取消crond服務(wù)開(kāi)機(jī)啟動(dòng)
用法八:systemctl 選項(xiàng) 服務(wù)名示例代碼:#systemctl disable crond含義:指定crond服務(wù)開(kāi)機(jī)啟動(dòng)
systemctl參數(shù)總結(jié)
三、常用自有服務(wù)(ntp,firewalld,crond)
1、ntp時(shí)間同步服務(wù)
? NTP是網(wǎng)絡(luò)時(shí)間協(xié)議(Network Time Protocol),它是用來(lái)同步網(wǎng)絡(luò)中各個(gè)計(jì)算機(jī)的時(shí)間的協(xié)議。
工作場(chǎng)景:
? 公司開(kāi)發(fā)了一個(gè)電商網(wǎng)站,由于訪問(wèn)量很大,網(wǎng)站后端由100臺(tái)服務(wù)器組成集群。50臺(tái)負(fù)責(zé)接收訂單,50臺(tái)負(fù)責(zé)安排發(fā)貨,接收訂單的服務(wù)器需要記錄用戶下訂單的具體時(shí)間,把數(shù)據(jù)傳給負(fù)責(zé)發(fā)貨的服務(wù)器,由于100臺(tái)服務(wù)器時(shí)間各不相同,記錄的時(shí)間經(jīng)常不一致,甚至?xí)霈F(xiàn)下單時(shí)間是明天,發(fā)貨時(shí)間是昨天的情況。
1)NTP同步服務(wù)器原理
? 標(biāo)準(zhǔn)時(shí)間是哪里來(lái)的?
? 現(xiàn)在的標(biāo)準(zhǔn)時(shí)間是由原子鐘報(bào)時(shí)的國(guó)際標(biāo)準(zhǔn)時(shí)間UTC(Universal Time Coordinated,世界協(xié)調(diào)時(shí)),所以NTP獲得UTC的時(shí)間來(lái)源可以是原子鐘、天文臺(tái)、衛(wèi)星,也可以從Internet上獲取。
? 在NTP中,定義了時(shí)間按照服務(wù)器的等級(jí)傳播,Stratum層的總數(shù)限制在15以內(nèi)
? 工作中,==通常我們會(huì)直接使用各個(gè)組織提供的,現(xiàn)成的NTP服務(wù)器==
2)到哪里去找NPT服務(wù)器
? NTP授時(shí)網(wǎng)站:http://www.ntp.org.cn/pool.php
3)時(shí)間同步操作
同步服務(wù)器時(shí)間方式有2 個(gè):一次性同步手動(dòng)同步、通過(guò)服務(wù)自動(dòng)同步。
手動(dòng)同步
用法一:ntpdate 時(shí)間服務(wù)器IP示例代碼:#ntpdate 120.25.108.11含義:從服務(wù)器120.25.108.11同步標(biāo)準(zhǔn)網(wǎng)絡(luò)時(shí)間到服務(wù)器(120.25.108.11服務(wù)器由阿里云提供,可以從http://www.ntp.org.cn/pool.php網(wǎng)站獲?。┳⒁猓簭木W(wǎng)絡(luò)同步時(shí)間,要確保自己的服務(wù)器可以訪問(wèn)互聯(lián)網(wǎng)
錯(cuò)誤信息:no servers can be used
含義:服務(wù)器不可用,這里的服務(wù)器是指網(wǎng)絡(luò)上的時(shí)間服務(wù)器,不可用,不代表是對(duì)方服務(wù)器有問(wèn)題,也有可能是你自己的服務(wù)器網(wǎng)絡(luò)不通,無(wú)法連接到網(wǎng)絡(luò)上的時(shí)間服務(wù)器。
自動(dòng)同步
用法二:?jiǎn)?dòng)ntpd服務(wù),并配置為開(kāi)機(jī)啟動(dòng)示例代碼:#systemctl start ntpd#systemctl enable ntpd含義:?jiǎn)?dòng)ntpd服務(wù),并配置為開(kāi)機(jī)啟動(dòng),服務(wù)啟動(dòng)后,系統(tǒng)會(huì)自動(dòng)同步網(wǎng)絡(luò)時(shí)間注意:從網(wǎng)絡(luò)同步時(shí)間,要確保自己的服務(wù)器可以訪問(wèn)互聯(lián)網(wǎng)
問(wèn)題1:?jiǎn)?dòng)ntpd服務(wù)后,是不是時(shí)間就自動(dòng)同步了?
啟動(dòng)后就自動(dòng)同步了
問(wèn)題2:需不需要讓ntpd服務(wù),開(kāi)機(jī)自動(dòng)運(yùn)行?
需要
ntpd服務(wù)配置文件位置 /etc/ntp.conf
2、firewalld防火墻
1)什么是防火墻
防火墻:防范一些網(wǎng)絡(luò)攻擊。有軟件防火墻、硬件防火墻之分。
防火墻選擇讓正常請(qǐng)求通過(guò),從而保證網(wǎng)絡(luò)安全性。
Windows防火墻:
2)傳統(tǒng)Linux防火墻
3、firewalld防火墻的概念
1)區(qū)域
CentOS6x中防火墻叫做iptables
CentOS7.x 中默認(rèn)使用的防火墻是firewalld
? firewalld增加了區(qū)域的概念,所謂區(qū)域是指,firewalld預(yù)先準(zhǔn)備了幾套防火墻策略的集合,類似于策略的模板,用戶可以根據(jù)需求選擇區(qū)域。
常見(jiàn)區(qū)域及相應(yīng)策略規(guī)則
2)運(yùn)行模式和永久模式
運(yùn)行模式:此模式下,配置的防火墻策略立即生效,但是不寫(xiě)入配置文件
永久模式:此模式下,配置的防火墻策略寫(xiě)入配置文件,但是需要reload重新加載才能生效。
==firewall默認(rèn)采用運(yùn)行模式==
4、firewalld防火墻的配置
1)查看,開(kāi)啟和停止firewalld服務(wù)
命令:systemctl
作用:管理服務(wù)
語(yǔ)法:#systemctl [選項(xiàng)] firewalld
選項(xiàng): status:檢查指定服務(wù)的運(yùn)行狀況
? start:?jiǎn)?dòng)指定服務(wù)
? stop:停止指定服務(wù)
? restart:重啟指定服務(wù)
? reload:重新加載指定服務(wù)的配置文件(并非所有服務(wù)都支持reload,通常使用restart)
? 使用systemctl來(lái)管理firewalld的服務(wù),具體命令前面已經(jīng)講過(guò),只是服務(wù)名換成了firewalld,這里不再贅述
2) 管理firewall配置
命令:firewall-cmd
作用:管理firewall具體配置
語(yǔ)法:#firewall-cmd [參數(shù)選項(xiàng)1] ….[參數(shù)選項(xiàng)n]
常用選項(xiàng):
①查看默認(rèn)使用的區(qū)域
用法一:firewall-cmd 選項(xiàng)示例代碼:#firewall-cmd --get-default-zone含義:查看默認(rèn)使用區(qū)域,當(dāng)前默認(rèn)使用區(qū)域?yàn)閜ublic
②查看所有可用區(qū)域
用法二:firewall-cmd 選項(xiàng)示例代碼:#firewall-cmd --get-zones含義:查看所有可用區(qū)域
③列出當(dāng)前使用區(qū)域配置
用法三:firewall-cmd 選項(xiàng)示例代碼:#firewall-cmd --list-all含義:查看所有可用區(qū)域
④列出所有區(qū)域的配置
用法四:firewall-cmd 選項(xiàng)示例代碼:#firewall-cmd --list-all-zones含義:查看所有可用區(qū)域
⑤添加允許通過(guò)的服務(wù)或端口
用法五:firewall-cmd 選項(xiàng)示例代碼:#firewall-cmd --zone=public --add-port=1024/tcp含義:在public區(qū)域,添加允許tcp協(xié)議的1024端口通過(guò)的規(guī)則#firewall-cmd --zone=public --add-service=ftp含義:在public區(qū)域,添加允許ftp服務(wù)通過(guò)的規(guī)則
⑥去掉允許通過(guò)的服務(wù)或端口
用法五:firewall-cmd 選項(xiàng)示例代碼:#firewall-cmd --zone=public --remove-port=1024/tcp含義:在public區(qū)域,去掉允許tcp協(xié)議的1024端口通過(guò)的規(guī)則#firewall-cmd --zone=public --remove-service=ftp含義:在public區(qū)域,去掉允許ftp服務(wù)通過(guò)的規(guī)則
⑦永久模式參數(shù)permaent
用法七:firewall-cmd 選項(xiàng)示例代碼:#firewall-cmd --permanent --zone=public --add-port=1024/tcp含義:在public區(qū)域,使用permanent參數(shù),永久添加允許1024端口通過(guò)的規(guī)則
⑧重新加載配置reload
用法七:firewall-cmd 選項(xiàng)示例代碼:#firewall-cmd --reload含義:重新加載配置
5、計(jì)劃任務(wù)crontab
1)計(jì)劃任務(wù)的作用
作用:操作系統(tǒng)不可能24 小時(shí)都有人在操作,有些時(shí)候想在指定的時(shí)間點(diǎn)去執(zhí)行任務(wù)(例如:每天凌晨 2 點(diǎn)去重新啟動(dòng)Apache),此時(shí)不可能真有人每天夜里 2 點(diǎn)去執(zhí)行命令,這就可以交給計(jì)劃任務(wù)程序去執(zhí)行操作了。
2)查看計(jì)劃任務(wù)
==語(yǔ)法:# crontab 選項(xiàng)==
常用選項(xiàng):
==-l:list,列出指定用戶的計(jì)劃任務(wù)列表==
==-e:edit,編輯指定用戶的計(jì)劃任務(wù)列表,簡(jiǎn)單來(lái)說(shuō),計(jì)劃任務(wù)就是一個(gè)文件==
-u:user,指定的用戶名,如果不指定,則表示當(dāng)前用戶
-r:remove,刪除指定用戶的計(jì)劃任務(wù)列表
示例代碼:列出當(dāng)前用戶的計(jì)劃任務(wù)列表
上述的提示,代表 root 用戶沒(méi)有計(jì)劃任務(wù)需要去做。
3)編輯計(jì)劃任務(wù)(重點(diǎn))
進(jìn)入計(jì)劃任務(wù)編輯文件
打開(kāi)計(jì)劃任務(wù)編輯文件后,可以在此文件中編寫(xiě)我們自定義的計(jì)劃任務(wù):
計(jì)劃任務(wù)的規(guī)則語(yǔ)法格式,以行為單位,一行則為一個(gè)計(jì)劃:
==分 時(shí) 日 月 周 需要執(zhí)行的命令==
例如:0 0 * * * reboot,代表每天0時(shí)0分執(zhí)行reboot指令。
取值范圍(常識(shí)):分:0~59時(shí):0~23日:1~31月:1~12周:0~7,0 和 7 表示星期天四個(gè)符號(hào):*:表示取值范圍中的每一個(gè)數(shù)字-:做連續(xù)區(qū)間表達(dá)式的,要想表示1~7,則可以寫(xiě)成:1-7/:表示每多少個(gè),例如:想每 10 分鐘一次,則可以在分的位置寫(xiě):*/10,:表示多個(gè)取值,比如想在 1 點(diǎn),2 點(diǎn) 6 點(diǎn)執(zhí)行,則可以在時(shí)的位置寫(xiě):1,2,6
特別補(bǔ)充:在Linux系統(tǒng)中,有些命令不能直接在計(jì)劃任務(wù)中使用,使用后,其也不會(huì)生效。如useradd命令。如果想讓其生效必須使用完整路徑。
問(wèn)題:如何查詢一個(gè)命令的真實(shí)路徑在哪個(gè)位置?
答:使用whereis 命令名稱
4)幾個(gè)小案例
問(wèn)題1:每月1、10、22 日的4:45 重啟network 服務(wù)
問(wèn)題2:每周六、周日的1:10 重啟network 服務(wù)
問(wèn)題3:每天18:00 至23:00 之間每隔30 分鐘重啟network 服務(wù)
問(wèn)題4:每隔兩天的上午8 點(diǎn)到11 點(diǎn)的第3 和第15 分鐘執(zhí)行一次重啟
分時(shí)日月周 命令或服務(wù)
問(wèn)題1:45 4 1,10,22 * * service network restart
問(wèn)題2:10 1 * * 6,7 service network restart
問(wèn)題3:*/30 18-23 * * * service network restart
問(wèn)題4:3,15 8-11 */2 * * reboot
案例:每1 分鐘往 root 家目錄中的 readme.txt 中輸一個(gè)1,為了看到效果使用追加輸出【輸出使用echo 命令,語(yǔ)法:# echo 輸出的內(nèi)容】
在末行模式下輸入:wq保存并退出,使用tail -f查看readme.txt動(dòng)態(tài)變化
注意:在計(jì)劃任務(wù)中,默認(rèn)最小單位就是分,不能再小了。如果需要做到秒級(jí)別則需要配合研發(fā)相關(guān)代碼。
5)擴(kuò)展
① crontab 權(quán)限問(wèn)題
crontab是任何用戶都可以創(chuàng)建的計(jì)劃任務(wù),但是超級(jí)管理員可以通過(guò)配置來(lái)設(shè)置某些用戶不允許設(shè)置計(jì)劃任務(wù) 。
==黑名單==配置文件位于:/etc/cron.deny 里面寫(xiě)用戶名,一行只能寫(xiě)一個(gè)
保存退出,切換到cndws普通用戶,執(zhí)行crontab命令,如下圖所示:
==白名單==還有一個(gè)配置文件
/etc/cron.allow (本身不存在,自己創(chuàng)建)
注意:白名單優(yōu)先級(jí)高于黑名單,如果一個(gè)用戶同時(shí)存在兩個(gè)名單文件中,則會(huì)被默認(rèn)允許創(chuàng)建計(jì)劃任務(wù)。
② 查看計(jì)劃任務(wù)文件保存路徑
問(wèn)題:計(jì)劃任務(wù)文件具體保存在哪里呢?
答:/var/spool/cron/用戶名文件中,如果使用root用戶編輯計(jì)劃任務(wù),則用戶文件名為root
③ 查看計(jì)劃任務(wù)日志信息
問(wèn)題:在實(shí)際應(yīng)用中,我們?nèi)绾尾榭炊〞r(shí)任務(wù)運(yùn)行情況?
答:通過(guò)計(jì)劃任務(wù)日志,日志文件位于/var/log/cron
四、Linux軟件包
1、軟件包概述
? 這是什么?
? Linux下也有很多可以安裝的軟件,而這些軟件的安裝包可細(xì)分為兩種,分別是源碼包和二進(jìn)制包。
1)源碼包
? 源碼包就是一大堆源代碼程序,是由程序員按照特定的格式和語(yǔ)法編寫(xiě)出來(lái)的。計(jì)算機(jī)只能識(shí)別機(jī)器語(yǔ)言,也就是二進(jìn)制語(yǔ)言,所以源碼包安裝之前需要編譯。
? 編譯過(guò)程耗時(shí)較長(zhǎng) ? 大多數(shù)用戶不懂開(kāi)發(fā),編譯過(guò)程中可能會(huì)有各種錯(cuò)誤,用戶無(wú)力解決。
? 為了解決使用源碼包安裝的問(wèn)題,Linux 軟件包的安裝出現(xiàn)了使用二進(jìn)制包的安裝方式。
2)二進(jìn)制包
? 二進(jìn)制包,也就是源碼包經(jīng)過(guò)成功編譯之后產(chǎn)生的包。
? 二進(jìn)制包是 Linux 下默認(rèn)的軟件安裝包,目前主要有以下 2 大主流的二進(jìn)制包管理系統(tǒng):
- ==rpm 包==管理系統(tǒng):功能強(qiáng)大,安裝、升級(jí)、査詢和卸載非常簡(jiǎn)單方便,因此很多 Linux 發(fā)行版都默認(rèn)使用此機(jī)制作為軟件安裝的管理方式,例如 Fedora、==CentOS==、SuSE 等。
- DPKG 包管理系統(tǒng):由 Debian Linux 所開(kāi)發(fā)的包管理機(jī)制,通過(guò) DPKG 包,Debian Linux 就可以進(jìn)行軟件包管理,主要應(yīng)用在 Debian 和 Ubuntu 中。
? RPM是RedHat Package Manager(RedHat軟件包管理工具)的縮寫(xiě)
? 作用:rpm 的作用類似于豌豆莢,華為應(yīng)用市場(chǎng),App Store,主要作用是對(duì)linux 服務(wù)器上的軟件包進(jìn)行對(duì)應(yīng)管理操作,管理分為:查詢、卸載、安裝/更新。
2、如何獲取rpm包
要想裝軟件,和windows 下一樣,先得找到安裝包:xxx.rpm
軟件包的獲得方式:
a. 去官網(wǎng)去下載(http://rpm.pbone.net);
b. 不介意老版本的話,可以從光盤(pán)(或者鏡像文件)中讀??;
3、從光盤(pán)獲取
3.1 虛擬機(jī)中加載光盤(pán)
3.2 使用 # lsblk(list block devices)或者df -T 查看塊狀設(shè)備的信息
Name:名稱Size:設(shè)備大小Type:類型mountPoint:掛載點(diǎn)此界面類似于Windows 下的磁盤(pán)管理界面:
3.3 進(jìn)入/run/media/root/CentOS 7 x86_64/Packages目錄
/run/media/root/CentOS 7 x86_64/Packages
ls
4、查詢某個(gè)軟件安裝情況
語(yǔ)法:# rpm -qa | grep 軟件名稱
選項(xiàng):
-q:查詢,query
-a:全部,all
示例代碼:查詢firefox瀏覽器的安裝情況,已安裝
rpm -qa |grep firefox
示例代碼:查詢qq軟件的安裝情況,未安裝
rpm -qa |grep qq
5、卸載某個(gè)軟件
卸載某個(gè)軟件
語(yǔ)法:# rpm -e 軟件的名稱(建議寫(xiě)完整的名稱,通過(guò)-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
卸載完成后,單擊firefox瀏覽器圖標(biāo),運(yùn)行結(jié)果如下圖所示:
6、安裝某個(gè)軟件
命令:rpm
作用:管理rpm軟件包
語(yǔ)法:# rpm -ivh 軟件包完整路徑名稱
選項(xiàng):
-i:install,安裝
-v:顯示進(jìn)度條
-h:表示以"#"形式顯示進(jìn)度條
示例代碼:將剛剛卸載的firefox火狐瀏覽器重新安裝(在DVD光盤(pán)1中)
用法:rpm -ivh 軟件包名稱示例代碼:#cd /run/media/root/CentOS 7 x86_64/Packages/進(jìn)入光盤(pá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查詢是否安裝完成
安裝完成后,打開(kāi)firefox瀏覽器
7、更新某個(gè)軟件
語(yǔ)法:# rpm -Uvh 完整的安裝包路徑
選項(xiàng):
-U:upgrade,升級(jí)
-v:表示顯示進(jìn)度條
-h:表示以#形式顯示進(jìn)度條
這里我會(huì)提供給大家firefox的高版本的安裝包
firefox-60.8.0-1.el7.centos.x86_64.rpm 這個(gè)包是用來(lái)升級(jí)的
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查詢升級(jí)后的firefox版本
8、rpm擴(kuò)展
8.1依賴關(guān)系
一個(gè)軟件必須先有其他軟件才能運(yùn)行,例如之前xmind啟動(dòng)過(guò)程中提示的缺少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版本的軟件包
錯(cuò)誤提示:
error:Failed dependencies:
提示安裝68版本的firefox需要依賴nspr4.21的版本,nss的3.44的版本,這就是我們說(shuō)的==依賴關(guān)系==。
為了解決依賴關(guān)系的問(wèn)題,有另外一個(gè)管理工具叫做==yum==,后面我們會(huì)講到
8.2 查看文件所屬的包名(實(shí)用)
語(yǔ)法:# rpm -qf 需要查詢的文件路徑
選項(xiàng):
-f:查詢文件所屬包
示例代碼:查詢/etc/ntp.conf 屬于哪個(gè)軟件包?
8.3查詢軟件安裝完成后,生成了哪些文件
語(yǔ)法:# rpm -ql 需要查詢的軟件包名稱
rpm -ql firefox
rpm -ql openssh
特別說(shuō)明:軟件安裝完成后,一共生成了以下幾類文件配置文件類:/etc目錄程序文件本身,二進(jìn)制文件命令:/usr/sbin目錄文檔手冊(cè):/usr/share/doc或man目錄
9、擴(kuò)展:光盤(pán)的掛載和解掛
① 解掛操作
命令:umount
語(yǔ)法:# umount 當(dāng)前設(shè)備的掛載點(diǎn)(路徑)
例如:
umount /run/media/root/CentOS 7 x86_64/
② 掛載光盤(pán)
首先新建一個(gè)掛載點(diǎn),然后使用mount命令進(jìn)行掛在,掛載點(diǎn)可以理解為就是一個(gè)空目錄
命令:mount
語(yǔ)法:# mount 設(shè)備文件原始地址(/dev目錄) 要掛載的位置路徑(盤(pán)符)
設(shè)備原始地址:地址統(tǒng)一都在/dev 下,然后根據(jù)大小確定具體name 值,拼湊在一起組成原
始地址,例如當(dāng)前:"/dev/sr0"
用法:mount 設(shè)備 掛載點(diǎn)示例代碼:#mkdir /mnt/dvd新建一個(gè)目錄作為掛載點(diǎn)#mount /dev/sr0 /mnt/dvd將光驅(qū)設(shè)備/dev/sr0 掛載到 /mnt/dvd這個(gè)掛載點(diǎn)#df -T可以看到已經(jīng)成功掛載
首發(fā)于黑馬程序員官網(wǎng)