Linux學習 軟體包管理

2021-09-02 22:59:38 字數 3140 閱讀 9347

rpm(red hat軟體包管理器)是一種開放的軟體包管理器,可執行於各種linux系統上,對於使用者來說,rpm簡化了linux系統的安裝、解除安裝、更新和公升級的操作。對於開發者來說rpm允許把原件編碼包裝成原始碼包和程式包,然後提供給使用者。

linux系統會保留當前安裝軟體包的資料庫,該資料庫位於/var/lib/rpm中,該目錄中大部分是二進位制形式的雜湊資料庫檔案

語法格式:rpm [選項] [rpm軟體包檔名稱]

-i:安裝軟體包

-v:輸出詳細資訊

--test:對安裝包進行測試,並不實際安裝

--nodeps:不驗證軟體包的依賴關係

--force:忽略軟體包和檔案的衝突

--percent:以百分比的形式輸出安裝進度

--justdb:更新資料庫,但不修改檔案系統

-e:刪除軟體包

-u:公升級軟體包

-q:查詢軟體包

--initdb:初始化rpm資料庫

--rebuilddb:從安裝資料報頭重建rpm資料庫

例:

#rpm -q openssh #查詢軟體包

>openssh-7.4p1-11.el7.x86_64

#rpm -e openssh #刪除軟體包

#rpm -qa #查詢所有已經安裝的軟體包

#rpm -qa | grep ssh

#rpm -ql crontab #查詢指定已安裝的軟體包包含的檔案列表

#rpm -qr crontabs #查詢軟體包的依賴關係

使用rpm命令安裝軟體包特別麻煩,原因在於需要手動尋找該軟體包所需要的一切依賴關係,當軟體包解除安裝時,由於解除安裝了某個依賴關係而導致其他的軟體包不能用。而yum則使變得簡單了,會自動化檢查收集相關依賴。yum關鍵是要有可靠的軟體倉庫。

是yum的主配置檔案

keepcache:快取是否需要儲存,1表示儲存

debugevel:除錯級別,預設為2

logfile:yum日誌檔案

exactarch:是否只公升級和安裝包的cpu體系一致的包

obsoletes:是否允許更新陳舊的rpm軟體包

是linux系統中yum源的配置檔案,通常乙個repo檔案定義了乙個或多個軟體倉庫的細節內容。

[rhel-source]:定義軟體源的名稱,會被yum識別

name:軟體倉庫名稱,$releasever變數定義了發行版本,$basearch變數定義了系統的架構

enabled=1:表示軟體倉庫定義的源是否啟用,1表示啟用

gpgkey:定義用於校檢的gpg金鑰

-y:所有問題都yes

-q:安靜模式操作

-v:顯示詳細資訊

-c 《配置檔案》:指定配置檔案路徑

-x 《軟體包》:排除指定軟體包

--installroot=《路徑》:設定安裝根目錄路徑

install 《軟體包名》:安裝指定的軟體包

reinstall 《軟體包名》:重新安裝軟體包

search 《軟體包名》:搜尋軟體包

list:列出目前yum所管理的所有軟體包名稱和版本

list installed:列出所有已安裝的軟體包

list updates:列出所有可更新的軟體包

info:列出目前yum所管理的所有軟體包名稱、版本和詳細資訊

info 《軟體包名》:列出指定軟體包的詳細資訊

update:全部更新

update 《軟體包名》:更新指定軟體包

check-update:檢查可更新的軟體包

remove 《軟體包名》:刪除指定軟體包

clean packages:清除快取目錄下的軟體包

clean:清除快取

原始碼包是指源**可見的軟體包,是基於linux系統最常見的軟體。大部分原始碼包軟體都是通過./configure、make及make install這三個命令來安裝。有些軟體是直接通過make和make install命令來安裝。

首先需要在linux系統中安裝相關的開發工具,比如gcc、gcc-c++、make、automake、c++、perl、python、gtk等開發工具或基礎包。除此之外還要安裝一些相應的開發包,一般檔名包括devel的,還有一些開發庫,如以lib開頭的。如果在編譯軟體時提示缺少檔案,主要原因就是缺少這些開發工具和開發庫,只需要找到這些軟體包並安裝即可。

yum install -y gcc gcc-c++ make automake perl python glibc gtk

tar zxvf 原始碼包.tar.gz #進入解壓縮生成的目錄,一般會有readme檔案和install目錄、doc目錄。

configure程式有很多選項,通過configure命令檢測安裝環境,最終建立makefile檔案,如果configure不成功,而去make的話,就會出現"make:***"沒有指定目標且找不到makefike的資訊。

可以使用configure --prefix=/usr/local/pcre指定軟體安裝的目錄。

configure它是個shell指令碼,主要用於編譯安裝源**庫和軟體。 ./configure是源**安裝的第一步,主要的作用是對即將安裝的軟體進行配置,比如加上 –with、–enable、–without、–disable 等等引數對編譯加以控制,檢查當前的環境是否滿足要安裝軟體的依賴關係,比如它會檢測你是不是有cc或gcc,並不是需要cc或gcc。生成makefile檔案,以便你可以用make和make install來編譯和安裝程式,最後執行make clean刪除一些臨時檔案。

當./configure成功結束後,就可以使用make命令正式編譯軟體了。

軟體編譯成功後需要使用make install命令安裝軟體

linux軟體包管理

二進位制軟體包管理 rpm,yum rpm的使用 rpm包格式 stdo 1.7.2p1 5.e15.i386.rpm stdo 軟體名 1.7.2p1 版本號 5.e15 發行號 i386 硬體平台 1 安裝軟體包 一般不能指定安裝目錄 rpm ivh 軟體包全部名稱 rpm i stdo 1.7...

Linux 軟體包管理

rpm redhat package manager redhat軟體包管理工具,類似windows裡面的setup.exe 是linux這系列作業系統裡面的打包安裝工具,它雖然是redhat的標誌,但理念是通用的。rpm包的名稱格式 apache 1.3.23 11.i386.rpm apache...

Linux軟體包管理

apt advanced package tool 是debian ubuntu等系統中的軟體包管理程式,使用apt可以找到想要的軟體包,而且安裝 解除安裝 更新也比較簡單,apt的原始檔為 etc apt 目錄下的sources.list檔案 修改資料來源 由於國內網路環境問題,故將ubuntu的...