學會四招讓你在linux下安裝程式變得簡單

2021-09-08 12:42:57 字數 2627 閱讀 6745

一、背景

由於最近想自己摸索一些linux下的東西,開始玩起了linux系統,在安裝軟體的過程中有諸多的不解和困惑,現在終於搞明白了具體是怎麼樣的安裝步驟和過程,先分享給你們同時也方便自己複習查閱。

二、基本概述

1.rpm

redhat package manager的簡稱,即redhat包管理器。

以資料庫記錄的方式將軟體安裝到liunx。

軟體包事先編譯好並且打包成rpm機制的檔案,類似於windows的安裝程式。

軟體資訊記錄在本地資料庫,方便查詢、公升級、解除安裝。

不允許自定義引數和設定,限制較多。

2.srpm

source rpm,附帶原始碼的rpm包,擴充套件名為src.rmp。

不可以直接安裝,需要通過編譯後再安裝。

可以修改引數檔案自定義配置項。

和rpm比較類似。

三、安裝方式介紹

1.原始碼方式安裝linux軟體

解壓縮原始碼包

檢視install和readme檔案安裝相依性軟體

./configure安裝軟體到特定位置

make clean清除目標檔案

make編譯

make install

修改path

2.rpm方式安裝linux軟體

明確安裝包所在路徑或者**(find /dirname–name 『name*』)

查詢rpm庫中是否已經安裝 rpm -qa | grep 'softwarename'

安裝rpm –ivh /path/to/file.rpm

rpm常用引數

-i:安裝

-u:後接的軟體如果沒有安裝過則安裝,如果安裝過且版本較舊則更新

-f:後接的軟體如未安裝則不進行安裝,如果安裝過且版本較舊則更新

-v:檢視詳細安裝資訊

-h:檢視安裝進度

rpm常用的長選項

--nodeps:忽略相依性強制安裝

--replacepkgs:重複安裝已安裝過的軟體檔案

--force:強制安裝

--nosignature:忽略數字簽名認證

--prefix:指定安裝路徑

--relocate:改變安裝路徑

--justdb:完善rpm關於此軟體檔案的資料庫檔案

--initdb:初始化rpm資料庫

--rebuilddb:重建rpm資料庫

rpm查詢:rpm [options] [filename]

-q:查詢後面的軟體是否有安裝

-qa:列出此系統上已安裝的所有軟體

-ql:列出該軟體安裝後產生的所有檔案完整目錄列表

-qd:列出該軟體安裝後產生的所有man檔案完整目錄列表

-qf:列出該檔案所屬的已安裝軟體

-qi:列出該軟體的詳細資訊

-qr:列出與該軟體的相依軟體有關的檔案

-p:未安裝的軟體包

-e:移除某個軟體(要從相依性的頂層開始)

rpm公升級:rpm –v[apf] [filename/dirname]

-v:後面加軟體名稱,顯示該軟體所含的被更動過的檔案

-va:列出系統上所有被改動過的檔案

-vf:列出某個檔案是否被更動過

rpm數字簽名驗證流程

獲取公鑰安裝包

安裝公鑰rpm --import /path/to/gpg-key

得到gpg-pubkey*檔案,包含簽章資訊

安裝原廠軟體時,rpm指令會去讀取簽章資訊,與已匯入的公鑰相比較。如果相同則安裝,不同則不允許安裝

3.srpm安裝linux軟體

進行編譯源包:rpmbuild [options]

--rebuild:將***.src.rpm原始碼進行編譯,並打包成rpm包

--recompile:將***.src.rpm原始碼進行編譯、打包,並進行安裝

-ba:將資料編譯並同時產生rpm與srpm

-bb:將資料僅編譯程rpm檔案

備註:srpm包用rebuild建立成rpm包後,裡邊會有乙個*.spec配置檔案

後面步驟和rpm相同

4.yum進行安裝linux軟體

配置yum倉庫/etc/yum.repo.d/*

連線網路

yum install softwarename

yum clean all刪除所有yum倉庫中的資料

查詢:yum[list|info|search|provides|whatprovides]引數

search:查詢某個程式的名稱或是描述(yum search mysql)

list:列出目前所有的管理的軟體以及版本(rpm -qa)

info類似list,查詢軟體的功能、版本說明(rpm -qai)

provides:通過檔案查詢所屬軟體(rpm -qf)

安裝、公升級,yum [install|update]程式名

install:安裝軟體

update:公升級軟體、不指定名稱則公升級整個系統

解除安裝程式:yum[remove]程式名稱

yum的配置

/etc/yum.repos.d/centos-base.repo

yum clean[package|headers|all]

/var/cache/yum

四、總結

學會LINUX下的文獻管理

為了學習如何蒐集與整理文獻,我在網上查了許多資料,它們大多是經驗之談,其中不乏真知灼見,但是鮮有涉及文獻管理軟體的選擇與使用的。我也看過一些博士寫的科研心得,談及有關文獻管理方面的內容時,給出了一些較為低效的方式,譬如 不同主題存入不同資料夾。資料夾的題目要簡短。看過的文獻歸入子資料夾,最起碼要把有...

ecu故障現象 巧判ECU故障,學會這四招!

車輛大腦ecu在整車當中起到非常重要的作用,有時我們在維修中,如ecu損壞,但是診斷儀報出故障並不會直接指向ecu出現問題,那麼今天我們就來學習如何快速判定ecu是否存在故障,一 從車身反應現象及診斷情況確定故障點 一般客戶反應的現象和診斷情況,很大程度就能反應車身功能問題的存在,所以這些常規的問詢...

環境配置四 Linux下MySQL安裝使用

安裝原始檔 yum localinstall y mysql57 community release el7 11.noarch.rpm 安裝服務 yum install y mysql community server 啟動mysql systemctl start mysqld 根據引導配置 m...