Linux基礎(五):軟體包
阿新 • • 發佈:2019-02-05
一、軟體包管理簡介
(一)軟體包分類
1、原始碼包:(絕大部分是c,c++)
3、RPM升級 1)語法:
(三)rpm查詢 1、查詢是否安裝 1)語法:
3、查詢包中檔案安裝位置 1)語法:
4、查詢系統檔案屬於哪個RPM包 1)語法:
2、rpm包中檔案提取 1)語法:
三、yum線上管理 (一)IP地址配置和網路yum源 1、IP地址配置 1)使用setup工具:setup 2)啟動網絡卡:vi /etc/sysconfig/network-scripts/ifcfg-eth0
2、網路yum源(預設就是好用的) 1)ls /etc/yum.repos.d
2)vi /etc/yum.repos.d/CentOS-Base.repo
(二)yum命令 1、查詢 1)yum list:查詢所有可用軟體包列表
(三)光碟yum源 1、步驟 1)掛載光碟
四、原始碼包管理 (一)原始碼包與RPM包的區別 1、區別:
3、原始碼包安裝位置
- 指令碼安裝包
- RPM包(redhat系才有)
- 系統預設包
- 開源,可以修改原始碼
- 可以自由選擇所需的功能
- 軟體是編譯安裝,更加穩定效率更高
- 解除安裝方便(刪除原始碼包的安裝檔案)
- 安裝步驟較多,容易出錯
- 編譯時間長,比二進位制安裝時間長了
- 編譯安裝,安裝過程中一旦報錯新手很難解決
- 包管理系統簡單,只需要幾個命令就可以實現包的安裝、升級、查詢、解除安裝。
- 安裝速度快,因為已經編譯過了。
- 看不到原始碼
- 功能選擇步入原始碼包靈活
- 依賴性,A依賴B依賴C,安裝解除安裝的順序需要正確
- httpd:軟體包名
- 2.2.15:版本
- 39:軟體釋出次數
- el6.centos:適合的Linux 平臺
- x86_64:適合的硬體平臺
- rpm:rpm包副檔名
- 樹形依賴:a-->b-->c
- 環形依賴:a-->b-->c-->a
- 包全名:操作未安裝的包,且注意路徑。
- 包名:操作已經安裝的軟體包。是搜尋/var/lib/rpm/中的資料庫。
- rpm -ivh 包全名
- -i(install):安裝
- -v(verbose):顯示詳細資訊
- -h(hash):顯示進度
- --nodeps:不檢測依賴X,建議檢測依賴
- 掛載處理:
- 新建掛載點:mkdir mnt/cdrom
- 掛載處理:mount -t iso9660 /dev/sr0 /mnt/cdrom
- 安裝
- rpm -ivh httpd-2.2.15-39.el6.centos.x86_64.rpm
- 需要使用包全名,可以使用 TAB 鍵補全
- 因為有依賴,所以比較麻煩(簡直想死)。需要使用 yum 命令解決
3、RPM升級 1)語法:
- rpm -Uvh
- -U(upgrade):升級
- rpm -e 包名
- -e(erase):解除安裝
- --nodeps:不檢查依賴性
- rpm -e httpd
- 使用包名,因為是搜尋後臺資料庫。
(三)rpm查詢 1、查詢是否安裝 1)語法:
- rpm -q 包名:查詢包是否安裝
- -q(query):查詢
- rpm -qa:查詢所有已經安裝的RPM包
- -a(all):所有
- rpm -q httpd:查詢httpd 是否安裝
- rpm -qi httpd:查詢httpd詳情,i是詳細資訊
- rpm -qa:列出所有
- rpm -qa | grep httpd:所有的搜尋查詢,然後利用管道符檢索
- rpm -qi 包名
- -i:查詢軟體資訊
- -p:查詢未安裝包資訊,加包全名
- rpm -qi httpd:查詢httpd詳情
- rpm -qip httpd-2.2.15-39.el6.centos.x86_64.rpm:查詢未安裝的包資訊
3、查詢包中檔案安裝位置 1)語法:
- rpm -ql 包名
- -l:列表(list)
- -p:查詢未安裝包資訊,加包全名
- rpm -ql httpd:查詢httpd
- rpm -qlp httpd-2.2.15-39.el6.centos.x86_64.rpm:查詢未安裝的包資訊
4、查詢系統檔案屬於哪個RPM包 1)語法:
- rpm -qf 系統檔名
- -f:查詢系統檔案屬於哪個軟體包(file)
- rpm -qf man.config
- rpm -qR 包名
- -R:查詢軟體包的依賴性(requires)
- -p:查詢未安裝包的資訊
- rpm -qR httpd
- rpm -qR httpd-2.2.15-39.el6.centos.x86_64.rpm
- rpm -V 已安裝的包名
- -V:校驗指定rpm包中的檔案(verify)
- rpm -V httpd
- 8個內容資訊
- 檔案型別
2、rpm包中檔案提取 1)語法:
- rpm2cpio 包全名 | cpio
-idv . 檔案絕對路徑
- rpm2cpio :將rpm包轉換為cpio格式的命令
- cpio:是一個標準工具,它用於建立文件和從檔案檔案中提取檔案
- cpio 【選項】<【檔案】【裝置】
- -i:copy-in 模式,還原
- -d:還原時自動新建目錄
- -v:顯示還原過程
- cpio 【選項】<【檔案】【裝置】
- 一行輸不下,使用 "\"
三、yum線上管理 (一)IP地址配置和網路yum源 1、IP地址配置 1)使用setup工具:setup 2)啟動網絡卡:vi /etc/sysconfig/network-scripts/ifcfg-eth0
- 把ONBOOT="no"改為 ONBOOT="yes"
2、網路yum源(預設就是好用的) 1)ls /etc/yum.repos.d
- CentOS-Base.repo,預設是生效的
- CentOS-Media.repo,沒有網路,光碟就要生效這個
2)vi /etc/yum.repos.d/CentOS-Base.repo
- [base]:容器名稱,一般要放在【】中
- name:容器說明,可以自己隨便寫
- mirrorlist:映象站點,這個可以註釋掉
- baseurl:我們的yum源伺服器的地址。預設是CentOS官方的yum源伺服器,是可以使用的。也可以修改成國內的,速度會比較快。
- enabled:此容器是否生效,如果不寫或者寫成emabled=1都是生效,寫成enabled=0是不生效。
- gpgcheck:如果是 1 是指RPM的數字證書生效,0 則是不生效。
- gpgkey:數字證書的公鑰檔案儲存位置。不用修改。
(二)yum命令 1、查詢 1)yum list:查詢所有可用軟體包列表
- 從遠端伺服器上查詢,前提是 linux 可以連線網際網路 。就是網路yum源配置好的地址。
- yum list | more:分屏顯示
- yum search httpd:搜尋httpd包
- install:安裝
- -y:自動回答yes
- yum -y install gcc:gcc是c語言編輯器,安裝原始碼包的時候,必須有gcc。
- rpm -q gcc:檢視是否安裝好
- 不加軟體包,會全部升級,包括linux核心也會升級(會死的)
- 不加軟體包,會級聯刪除,會出問題的。
- 不要使用yum 升級與解除安裝,不安全。
- yum grouplist:列出所有可用的軟體組列表
- yum groupinstall + 軟體組名:安裝指定軟體組,組名可以由grouplist查詢出來
- yum groupremove + 軟體組名:解除安裝指定軟體組
(三)光碟yum源 1、步驟 1)掛載光碟
- 新建掛載點:mkdir mnt/cdrom
- 掛載處理:mount -t iso9660 /dev/sr0 /mnt/cdrom
- 修改後綴,如把CentOS-Base.repo 改為 CentOS-Base.repo.bak
- CentOS-Base.repo,預設是生效的
- 其他的都修改
- CentOS-Media.repo,沒有網路,光碟yum源。
- 或者進入檔案,修改生效標誌,enabled=0
- baseurl=file:///mnt/dcrom:地址為光碟的掛載地址,自己定義。註釋掉其他的yum源
- gpgcheck=1:證書有效
- enabled=1:生效
四、原始碼包管理 (一)原始碼包與RPM包的區別 1、區別:
- 安裝之前的區別:概念上的區別
- 安裝之後的區別:安裝位置不同
- 安裝在預設位置中,不建議手動修改。
3、原始碼包安裝位置
- 安裝在指定位置中,一般是:/user/local/軟體名/
- /etc/rc.d/init.d/httpd start:絕對路徑中啟動
- service httpd start:使用 service 命令管理
- service network restart,reahat特有命令
- service: 是固定去系統預設的路徑中查詢,不會搜尋local路徑
- 所以只能管理RPM包
- /user/local/apache2/bin/paachectl start
- 指令碼安裝包並不是獨立的軟體包型別,常見安裝的是原始碼包
- 是人為把安裝過程寫成了自動安裝的指令碼,只要執行指令碼,定義簡單的引數,就可以完成安裝。
- 非常類似於windows下軟體的安裝方式
- Webmin 是一個基於web的 linux 系統管理介面。可以通過圖形化的方式設定使用者賬號、apache、DNS、檔案共享等服務。
- du -sh webmin-1.610:檢視大小