Linux軟件安裝——安裝軟件的命令
摘要:本文主要學習了如何在Linux系統中安裝、更新、卸載軟件。
rpm命令
rpm命令用來在Linux系統上進行軟件的安裝。
基本語法
安裝命令:
1 rpm -ivh 包全名
如果沒有安裝則安裝,如果已經安裝則升級:
1 rpm -Uvh 包全名
如果沒有安裝則不安裝,如果已經安裝則升級:
1 rpm -Fvh 包全名
卸載命令:
1 rpm -e 包名
查詢安裝信息:
1 rpm [選項]
選項說明
關於軟件安裝的選項:
1 -i:安裝。 2 -v:顯示更詳細的信息。 3 -h:顯示安裝進度。 4 -nodeps:不檢測依賴性安裝。軟件安裝時會檢測依賴性,確定所需的底層軟件是否安裝,如果沒有安裝則會報錯。如果不管依賴性,想強制安裝,則可以使用這個選項。注意,這樣不檢測依賴性安裝的軟件基本上是不能使用的,所以不建議這樣做。 5 -replacefiles:替換文件安裝。如果要安裝軟件包,但是包中的部分文件已經存在,那么在正常安裝時會報“某個文件已經存在”的錯誤,從而導致軟件無法安裝。使用這個選項可以忽略這個報錯而覆蓋安裝。 6 -replacepkgs:替換軟件包安裝。如果軟件包已經安裝,那么此選項可以把軟件包重復安裝一遍。 7 -force:強制安裝。不管是否已經安裝,都重新安裝。也就是-replacefiles和-replacepkgs的綜合。 8 -test:測試安裝。不會實際安裝,只是檢測一下依賴性。 9 -prefix:指定安裝路徑。為安裝軟件指定安裝路徑,而不使用默認安裝路徑。 10 -U:如果該軟件沒有安裝則直接安裝,如果安裝過則升級至最新版本。 11 -F:如果該軟件沒有安裝則不會安裝,如果安裝過則升級至最新版本。 12 -e:表示卸載。
關於查詢軟件安裝信息的選項:
1 -q 包名:查詢指定軟件是否安裝。 2 -qa:查詢已經安裝的所有軟件。 3 -qi 包名:查詢軟件的詳細信息,包含開發商、版本與說明等。 4 -ql 包名:查詢安裝軟件的用到的文件和目錄。 5 -qc 包名:查詢軟件的所有配置文件。 6 -qd 包名:查詢軟件的所有說明文件。 7 -qR 包名:查詢軟件包的依賴關系。 8 -qip 包全名:查詢未安裝的軟件包信息。 9 -qf 系統文件名:命令查詢系統文件屬於什么軟件。
yum命令
使用yum命令可以實現查詢、安裝、升級和卸載RPM包。
基本語法
查詢命令:
1 yum [選項]
安裝命令:
1 yum install -y 包名
升級命令:
1 yum update -y 包名
卸載命令:
使用yum卸載軟件包時,會同時卸載所有與該包有依賴關系的其他軟件包,即便有依賴包屬於系統運行必備文件,也會被yum無情卸載,帶來的直接后果就是使系統崩潰。
除非你能確定卸載此包以及它的所有依賴包不會對系統產生影響,否則不要使用yum卸載軟件包。
1 yum remove 包名
清理緩存:
1 yum clean all
選項說明
關於軟件查詢的選項:
1 list 包名:查詢執行軟件包的安裝情況。 2 list:查詢所有已安裝和可安裝的軟件包。 3 list updates:查詢所有可更新的軟件包。 4 list installed:查詢所有已安裝的軟件包。 5 list extras:查詢已安裝但不在倉庫里的軟件包。 6 info 包名:查詢指定軟件包的詳細信息。 7 info:查詢所有軟件包的詳細信息。 8 info updates:查詢所有可更新軟件包的詳細信息。 9 info installed:查詢所有已安裝軟件包的詳細信息。 10 info extras:查詢已安裝但不在倉庫里軟件包的詳細信息。 11 search 關鍵字:從源服務器上查找與關鍵字相關的所有軟件包。 12 provides 系統文件名:查詢提供指定內容的軟件包。 13 repolist:查詢倉庫里已安裝的軟件包。 14 repolist all:查詢倉庫里所有的軟件包。 15 repolist enabled:查詢倉庫里可用的軟件包。 16 repolist disabled:查詢倉庫里不可用的軟件包。
使用舉例
在使用nslookup命令時,發現沒有這個命令:
1 [root@localhost ~]# nslookup www.baidu.com 2 -bash: nslookup: 未找到命令 3 [root@localhost ~]#
在服務器上查詢相關軟件包,結果沒有查到:
1 [root@localhost ~]# yum search nslookup 2 已加載插件:fastestmirror 3 Loading mirror speeds from cached hostfile 4 * base: mirror.bit.edu.cn 5 * extras: mirror.bit.edu.cn 6 * updates: mirror.bit.edu.cn 7 警告:沒有匹配 nslookup 的軟件包 8 No matches found 9 [root@localhost ~]#
查看這個命令包含在哪個軟件包里:
1 [root@localhost ~]# yum provides nslookup 2 已加載插件:fastestmirror 3 Loading mirror speeds from cached hostfile 4 * base: mirror.bit.edu.cn 5 * extras: mirror.bit.edu.cn 6 * updates: mirror.bit.edu.cn 7 extras/7/x86_64/filelists_db | 246 kB 00:00:00 8 http://mirrors.huaweicloud.com/centos/7.6.1810/updates/x86_64/repodata/f08e65d2341e5f1e17bd68956e26e896fd4a46b39b2a8392b4be4898e1ad4dd0-filelists.sqlite.bz2: [Errno 14] HTTP Error 404 - Not Found 9 正在嘗試其它鏡像。 10 To address this issue please refer to the below knowledge base article 11 12 https://access.redhat.com/articles/1320623 13 14 If above article doesn't help to resolve this issue please create a bug on https://bugs.centos.org/ 15 16 http://mirror.jdcloud.com/centos/7.6.1810/updates/x86_64/repodata/f08e65d2341e5f1e17bd68956e26e896fd4a46b39b2a8392b4be4898e1ad4dd0-filelists.sqlite.bz2: [Errno 14] HTTP Error 404 - Not Found 17 正在嘗試其它鏡像。 18 http://mirrors.tuna.tsinghua.edu.cn/centos/7.6.1810/updates/x86_64/repodata/f08e65d2341e5f1e17bd68956e26e896fd4a46b39b2a8392b4be4898e1ad4dd0-filelists.sqlite.bz2: [Errno 14] HTTP Error 404 - Not Found 19 正在嘗試其它鏡像。 20 http://mirror.bit.edu.cn/centos/7.6.1810/updates/x86_64/repodata/f08e65d2341e5f1e17bd68956e26e896fd4a46b39b2a8392b4be4898e1ad4dd0-filelists.sqlite.bz2: [Errno 14] HTTP Error 404 - Not Found 21 正在嘗試其它鏡像。 22 http://mirror.lzu.edu.cn/centos/7.6.1810/updates/x86_64/repodata/f08e65d2341e5f1e17bd68956e26e896fd4a46b39b2a8392b4be4898e1ad4dd0-filelists.sqlite.bz2: [Errno 14] HTTP Error 404 - Not Found 23 正在嘗試其它鏡像。 24 updates/7/x86_64/filelists_db | 4.9 MB 00:00:11 25 32:bind-utils-9.9.4-72.el7.x86_64 : Utilities for querying DNS name servers 26 源 :base 27 匹配來源: 28 文件名 :/usr/bin/nslookup 29 30 31 32 32:bind-utils-9.9.4-73.el7_6.x86_64 : Utilities for querying DNS name servers 33 源 :updates 34 匹配來源: 35 文件名 :/usr/bin/nslookup 36 37 38 39 32:bind-utils-9.9.4-74.el7_6.1.x86_64 : Utilities for querying DNS name servers 40 源 :updates 41 匹配來源: 42 文件名 :/usr/bin/nslookup 43 44 45 46 [root@localhost ~]#
發現是在 bind-utils 這個包里,使用安裝命令安裝即可:
1 [root@localhost ~]# yum install -y bind-utils 2 已加載插件:fastestmirror 3 base | 3.6 kB 00:00:00 4 extras | 3.4 kB 00:00:00 5 updates | 3.4 kB 00:00:00 6 updates/7/x86_64/primary_db | 7.4 MB 00:00:02 7 Loading mirror speeds from cached hostfile 8 * base: mirror.bit.edu.cn 9 * extras: mirror.bit.edu.cn 10 * updates: mirror.bit.edu.cn 11 正在解決依賴關系 12 ... 13 完畢! 14 [root@localhost ~]#
至此,安裝就完成了。