linux基礎之軟體包管理

2021-10-03 15:22:01 字數 4233 閱讀 3333

出自兄弟連講linux系列之6.1(27講)

1.1命名規則

httpd-2.2.15-15.el6.centos.1.i686.rpm   包全名

httpd 軟體包名

2.2.15 軟體版本

15 發行次數

el6.centos 適合的linux平台

i686 適合的硬體平台

rpm rpm包副檔名

注意:在某些安裝場景是有包全名包名的區別的,比如這個軟體包從來沒安裝或者從來沒公升級過就需要全名,而且還要注意路徑 操作已經安裝或解除安裝的軟體包使用包名,它呼叫了/var/lib/rpm中的資料庫1.2包依賴性

樹形依賴 a>b>c

環形依賴 a>b>c>a 解決方法同時安裝abc

模組依賴 www.rpmfind.net依賴查詢**1

1.3rpm安裝

rpm -ivh  包全名

-i install 安裝

-v vebose 顯示詳細資訊

-h hash 顯示進度

--nodeps 不檢測依賴性

1.4公升級

rpm -uvh  包全名

-u upgrade 公升級

1.5解除安裝

rpm -e  包名

-e erase 解除安裝

--nodeps 不檢查依賴性

1.6查詢

rpm -q 包名 query

rpm -qa 查詢所有已經安裝的rpm包 -a all

rpm -qi 包名 -i 查詢軟體資訊(information) -p 查詢未安裝包資訊(package)

rpm -ql 包名 -l 查詢包中檔案安裝位置 -l list -p 查詢未安裝包資訊(package)

rpm -qf 系統檔名 -f查詢系統檔案屬於哪個軟體包 -f file

rpm -qr 包名 -r 查詢軟體包的依賴性 (requires) -p 查詢未安裝包資訊(package)

1.7校驗和檔案提取

rpm -v 包名 -v校驗指定rpm包中的檔案 (verify)  包中任意檔案有修改的話就會有提示

修改標識:

s 檔案大小是否改變

m 檔案的型別或者檔案的許可權是否被改變

5 檔案md5校驗和是否改變

d 裝置中的**是否改變

l 檔案路徑是否改變

u 檔案的屬主(所有者)是否改變

g 檔案的屬組是否改變

t 檔案的修改時間是否改變

檔案型別:

c 配置檔案 config file

d 普通檔案 ducumentation

g 鬼檔案 ghost file,在這個安裝包中不應該出現的檔案

l 授權檔案 license file

r read me

檔案提取語法:

rpm2cpio 包全名 | cpio.idv .檔案絕對路徑

rpm2cpio 包全名 | \cpio.idv .檔案絕對路徑 \ 是指有時候命令太長需要換行的意思

場景:安裝包中某乙個配置檔案被刪除,不需要將完整的安裝包複製,而只需要複製其中乙個配置檔案就行了

rpm2cpio 將rpm包轉換為cpio格式的命令

cpio 乙個工具,用於建立軟體檔案檔案和從檔案檔案中提取檔案

cpio [-i-d-v] -i copy-in模式,還原 -d還原時自動新建目錄 -v顯示還原過程

例如:rpm2cpio /mnt/cdrom/packages/coreutils-8.4-19.el6.i686.rpm | cpio -idv ./bin/ls

2.1.查詢 yum list 查詢所有可用軟體包列表 yum search [包名] 搜尋伺服器上所有的關鍵字相關的包2.2.安裝 yum -y install [包名] -y 自動回答yes

2.3.公升級 yum -y update [包名] -y 自動回答yes

2.4.解除安裝 yum -y remove [包名]

2.5.軟體組管理命令

yum grouplist 列出所有可用的軟體組列表

yum groupinstall [軟體組名] 安裝指定軟體組,組名可以有grouplist查詢出來,安裝的組名只能是英文

yum groupremove [軟體組名] 解除安裝指定軟體組

2.6.光碟yum源搭建

第一步:掛載光碟 mount /dev/sr0 /mnt/cdrom

第二步:讓三個網路yum源失效 cd /etc/yum.repos.d/ mv centos-debuginfo.repo centos-debuginfo.repo.test ...

第三步:修改光碟yum原始檔 vim centos-media.repo 修改baseurl=file:///mnt/cdrom #本地光碟掛載點 注釋下面兩個多餘掛載點 修改enabled=1

重新上傳

取消重新上傳

取消3.1.原始碼包和rpm包的區別

大多數rpm包安裝位置

/etc 配置檔案安裝目錄

/usr/bin 可執行的命令安裝目錄

/usr/lib 程式所使用的函式庫儲存位置

/usr/share/doc 基本的軟體使用手冊儲存位置

/usr/share/man 幫助檔案儲存位置

一般原始碼包手動安裝位置

/usr/local/軟體名/ 安裝位置的不同帶來的影響

例如: rpm包安裝的apache的啟動為:/etc/rc.d/init.d/httpd start 簡化後為service httpd start

而原始碼包不能用service服務管理命令來啟動

原始碼包啟動啟動:/usr/local/apache2/bin/apachectl start 絕對路徑+軟體名+start

3.2.原始碼包安裝過程

第一步:安裝c語言編譯器 yum -r install gcc

第三步: ./configure軟體配置與檢查 定義需要的功能選項 ./configure --prefix=/usr/local/apache2 定義安裝路徑 檢測系統環境是否符合安裝要求 把定義好的功能選項和檢測系統環境的資訊都寫入makefile檔案,用於後續的編輯

第四步:編譯 編譯 make 編譯安裝 make install

第五步:啟動 vi install 檢視啟動方式 /usr/local/apache2/bin/apachectl start

注意: 遇到啟動故障可能是埠衝突或者是服務占用,把埠停掉或者把系統服務停掉就可以了

3.3.原始碼包的解除安裝

例如:rm -rf /usr/local/apache2/

進入目錄執行./setup.sh

Linux之軟體包管理

linux系統兩種軟體包格式 debian類 ded技術 發行版本 debian ubuntu xandros linspire red hat類 rpm技術 發行版本 fedora centos red hat enterprise linux opensuse mandriva pclinuxo...

Linux之軟體包管理

linux軟體安裝的兩種方式 二進位制格式軟體 rpm redhat package managemen 原始碼軟體 tar.gz tar.gz2 rpm軟體管理 光碟iso映象檔案 存放光碟的檔案預設放在 dev sr0目錄中 或對應的軟連線 dev cdrom 需要將其掛載在某個目錄下才可安裝使...

Linux基礎 rpm軟體包管理

任務 掛載光碟檔案到 media目錄,進去 media目錄下的packages目錄,檢視系統已安裝的所有rpm包,檢視系統是否安裝dhcp軟體包,安裝dhcp軟體包,檢視dhcp軟體包的資訊,檢視dhcp軟體包中所包含的所有檔案,檢視 bin ls檔案是由哪個軟體包產生,解除安裝dhcp軟體包 時間...