学会四招让你在linux下安装程序变得简单
一、背景
由于最近想自己摸索一些linux下的東西,開始玩起了Linux系統(tǒng),在安裝軟件的過程中有諸多的不解和困惑,現(xiàn)在終于搞明白了具體是怎么樣的安裝步驟和過程,先分享給你們同時(shí)也方便自己復(fù)習(xí)查閱。
二、基本概述
1.RPM
?? ??? ?RedHat Package Manager的簡(jiǎn)稱,即RedHat包管理器。
?? ??? ?以數(shù)據(jù)庫記錄的方式將軟件安裝到Liunx。
?? ??? ?軟件包事先編譯好并且打包成RPM機(jī)制的文件,類似于Windows的安裝程序。
?? ??? ?軟件信息記錄在本地?cái)?shù)據(jù)庫,方便查詢、升級(jí)、卸載。
?? ??? ?不允許自定義參數(shù)和設(shè)置,限制較多。
2.SRPM
?? ??? ?Source RPM,附帶源碼的RPM包,擴(kuò)展名為src.rmp。
?? ??? ?不可以直接安裝,需要通過編譯后再安裝。
?? ??? ?可以修改參數(shù)文件自定義配置項(xiàng)。
?? ??? ?和RPM比較類似。
3.YUM
?? ??? ?Yellow dog Updater,Modified的簡(jiǎn)稱,基于RPM包管理。
?? ??? ?能夠從指定的服務(wù)器自動(dòng)下載RPM包并且安裝,可以自動(dòng)處理依賴關(guān)系,并且一次安裝所有依賴的軟件包,無需繁瑣的一次次下載、安裝。
?? ??? ?使用簡(jiǎn)單、方便。
三、安裝方式介紹
1.源碼方式安裝linux軟件
下載源碼包到/usr/local/src
解壓縮源碼包
查看install和readme檔案安裝相依性軟件
./configure安裝軟件到特定位置
make clean清除目標(biāo)檔案
make編譯
make install
修改PATH
2.rpm方式安裝linux軟件
明確安裝包所在路徑或者網(wǎng)站(find /dirname–name ‘name*’)
查找rpm庫中是否已經(jīng)安裝 rpm -qa | grep 'softwareName'
安裝rpm –ivh /path/to/file.rpm
rpm常用參數(shù)
-i:安裝
-U:后接的軟件如果沒有安裝過則安裝,如果安裝過且版本較舊則更新
-F:后接的軟件如未安裝則不進(jìn)行安裝,如果安裝過且版本較舊則更新
-v:查看詳細(xì)安裝信息
-h:查看安裝進(jìn)度
rpm常用的長(zhǎng)選項(xiàng)
--nodeps:忽略相依性強(qiáng)制安裝
--replacepkgs:重復(fù)安裝已安裝過的軟件檔案
--force:強(qiáng)制安裝
--nosignature:忽略數(shù)字簽名認(rèn)證
--prefix:指定安裝路徑
--relocate:改變安裝路徑
--justdb:完善RPM關(guān)于此軟件檔案的數(shù)據(jù)庫文件
--initdb:初始化RPM數(shù)據(jù)庫
--rebuilddb:重建RPM數(shù)據(jù)庫
rpm查詢:RPM [options] [filename]
-q:查詢后面的軟件是否有安裝
-qa:列出此系統(tǒng)上已安裝的所有軟件
-ql:列出該軟件安裝后產(chǎn)生的所有文件完整目錄列表
-qd:列出該軟件安裝后產(chǎn)生的所有man文件完整目錄列表
-qf:列出該檔案所屬的已安裝軟件
-qi:列出該軟件的詳細(xì)信息
-qR:列出與該軟件的相依軟件有關(guān)的檔案
-p:未安裝的軟件包
-e:移除某個(gè)軟件(要從相依性的頂層開始)
rpm升級(jí):rpm –V[apf] [filename/dirname]
-V:后面加軟件名稱,顯示該軟件所含的被更動(dòng)過的檔案
-Va:列出系統(tǒng)上所有被改動(dòng)過的檔案
-Vf:列出某個(gè)檔案是否被更動(dòng)過
rpm數(shù)字簽名驗(yàn)證流程
獲取公鑰安裝包
安裝公鑰rpm --import /path/to/GPG-KEY
得到gpg-pubkey*檔案,包含簽章信息
安裝原廠軟件時(shí),rpm指令會(huì)去讀取簽章信息,與已導(dǎo)入的公鑰相比較。如果相同則安裝,不同則不允許安裝
3.SRPM安裝linux軟件
進(jìn)行編譯源包:rpmbuild [options]
--rebuild:將***.src.rpm源碼進(jìn)行編譯,并打包成rpm包
--recompile:將***.src.rpm源碼進(jìn)行編譯、打包,并進(jìn)行安裝
-ba:將數(shù)據(jù)編譯并同時(shí)產(chǎn)生RPM與SRPM
-bb:將數(shù)據(jù)僅編譯程RPM檔案
備注:SRPM包用rebuild創(chuàng)建成rpm包后,里邊會(huì)有一個(gè)*.spec配置檔案
后面步驟和rpm相同
4.YUM進(jìn)行安裝linux軟件
配置yum倉庫/etc/yum.repo.d/*
連接網(wǎng)絡(luò)
yum install softwareName
yum clean all刪除所有yum倉庫中的數(shù)據(jù)
查詢:yum[list|info|search|provides|whatprovides]參數(shù)
?? ??? ? search:查詢某個(gè)程序的名稱或是描述(yum search mysql)
?? ??? ? list:列出目前所有的管理的軟件以及版本(rpm -qa)
?? ??? ? info類似list,查詢軟件的功能、版本說明(rpm -qai)
?? ??? ? provides:通過文件查詢所屬軟件(rpm -qf)
安裝、升級(jí),yum [install|update]程序名
?? ??? ? install:安裝軟件
?? ??? ? update:升級(jí)軟件、不指定名稱則升級(jí)整個(gè)系統(tǒng)
卸載程序:yum[remove]程序名稱
yum的配置
?? ??? ? /etc/yum.repos.d/CentOS-Base.repo
?? ???? ? yum clean[package|headers|all]
?? ???? ? /var/cache/yum
四、總結(jié)
對(duì)于軟件技術(shù)來說,我覺得最重要的是分享和開源精神,因?yàn)檫@和分享快樂的原理相同,如果你有一份技術(shù),我有一份技術(shù),那我們彼此分享以后,每個(gè)人都變成了兩分技術(shù),不但沒有減少,反而增加了,這不正是我們所希望看到的么?何樂而不為呢?這也正是為什么我喜歡抽出休息時(shí)間來孜孜不倦的寫技術(shù)博客的原因。
轉(zhuǎn)載于:https://www.cnblogs.com/hafiz/p/6752619.html
總結(jié)
以上是生活随笔為你收集整理的学会四招让你在linux下安装程序变得简单的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Agent Job相关的系统表
- 下一篇: linux系统命令基础知识