軟體包分類:源**包 .tar.gz tar.bz2等格式,能夠看到所有的源**,分為指令碼安裝(專門人員寫好的shell指令碼,也屬於源**包)、編譯安裝等;二進位製包:rpm包、系統預設包
二進位製包缺點是依賴性問題;源**包都是編譯,所以避免的依賴性問題
rpm包命令規則:httpd-2.2.15-15.el6.centos.1.i686.rpm
httpd 軟體包名
2.2.15 軟體版本
15 發布次數
el6 redhat6系列
centos 適用於centos平台
i686 32位計算機系統,x86_64 64位計算機作業系統
rpm rpm字尾名
centos系統自帶的rpm包都在安裝光碟下的packages下,在虛擬機器中直接使用mount /dev/sr0 /mnt/cdrom 掛載後即可檢視
模組(單個檔案)依賴問題解決:
當安裝mysql時:rpm -ivh mysql-connector-odbc-5.1.5r1144-7.el6.x86_64.rpm
會提示需要依賴libodbcinst.so.2,而這個模組存在於某個rpm包中
這時候去**www.rpmfind.net可以查詢依賴模組存在於哪個rpm包中,從而安裝該依賴包
通過快捷搜尋centos,選擇相應的版本
rmp包安裝:rpm -ivh 包名 根據依賴繼續往下安裝,需要安裝一大堆
rpm依賴分為:樹形依賴、環形依賴、庫檔案依賴
rpm包公升級命令:rpm -uvh 包全名 如果沒有原始包,那麼公升級和安裝效果一樣,如果當前操作版本比已經安裝的包版本高,那麼就是公升級包
所有rpm包安裝記錄都在:/var/lib/rpm/下的資料庫檔案中
rpm包解除安裝:rpm -e 包名(不是包全名),比如:rpm -e httpd
解除安裝時也需要根據依賴性解除安裝,必須根據提示解除安裝錯誤提示的依賴包
無論安裝或者解除安裝都不要使用:--nodeps (不檢查依賴性) 這樣會引起很多殘留,導致依賴的其他包失效
linux刪除安裝包不會產生任何垃圾,只是刪除所有的安裝檔案即可
rpm包查詢,比如:rpm -q httpd
查詢所有的rpm包:rpm -qa
更常用的是利用管道匹配(包含匹配,查的更全):rpm -qa | grep httpd
查詢軟體包詳細資訊:rpm -qi httpd
查詢未安裝的軟體包資訊:rpm -qip 包全名 查詢包全名必須進入目錄當中查詢,而且必須輸入包全名
查詢包的檔案釋放位置:rpm -ql httpd 可以檢視所有檔案的列表
查詢未知安裝包將要安裝的位置:rpm -qlp 包全名
根據系統檔名查詢屬於哪個rpm包:rpm -qf 檔名
查詢rpm包依賴的包:rpm -qr httpd 一般情況下直接安裝即可,會給出提示(同樣可以使用-q)
rpm包校驗:rpm -v httpd 測試軟體包所有檔案資訊是否被篡改,包括內容,大小,屬性,許可權等
檢驗資訊:s 大小修改 m許可權修改 5 md5校驗修改,,可以用來判斷系統是否被入侵
系統命令丟失後,利用rpm包提取恢復過程:比如ls命令丟失:/bin/ls 通過whereis ls查詢
1、查詢ls命令屬於哪個rpm包:rpm -qf /bin/ls
2、在光碟rpm包目錄外執行(比如家目錄):
rpm2cpio /mnt/cdrom/packages/coreutils-8.4-37.el6.x86_64.rpm | cpio -idv ./bin/ls
現在就提取到當前目錄下
3、cd ./bin/然後轉移檔案:cp ls /bin/
然後ls命令就可以用了
yum原始檔位置:/etc/yum.repos.d/
預設的原始檔是:centos-base.repo
[base] 基本yum源
name 容器說明
mirrorlist 映象源 url備用站點預設注釋
enabled預設為1 生效
gpgcheck 數字證書驗證,建議為1,提高安全性
gpgkey 證書位置,計算機預設有,在目錄/etc/pki/rpm-pgp/下
搭建光碟yum源:
cd /etc/yum.repos.d/
使本地yum源失效:mv centos-base.repo cenos-bask.repo.bak
放入光碟機,掛載好光碟:mount /dev/sr0 /mnt/cdrom
vim /etc/yum.repos.d/centos-media.repo
修改baseurl=file:///mnt/cdrom 剩餘兩行新增注釋
修改enabled=1 使光碟yum源生效
然後儲存退出
yum list 可以檢視所有的yum源軟體列表,檢視的同時首先更新本地資料庫, 後面的yum源位置和我們設定光碟yum源[media]名稱一致,說明yum正常生效
yum search 關鍵字 檢視yum源相關包,比如:yum search httpd
yum源安裝:yum -y install 包名 (在yum安裝中,只有包名,不用包全名;-y是自動回答yes,全自動執行)
yum -y install gcc 安裝c語言編譯器
軟體公升級:yum -y update httpd (公升級的時候一定要做好準備,比如:關閉指定的服務,重啟伺服器,平台**更改等,如果有重大漏洞,建議公升級,伺服器正常執行過程當中,建議穩定性為先,新伺服器搭建前考慮所有環境公升級到最新穩定版本)
yum -y update 後面不加軟體包,更新所有的軟體,包括核心,生產過程中慎用
yum -y remove 包名 解除安裝指定包
建議伺服器初始使用最小化安裝,需要什麼軟體就安裝,盡量不解除安裝,解除安裝可能使其他軟體或者系統依賴丟失,影響穩定性
lang=en_us 更改語系為英語
lang=zh_cn.utf8 更改為中文
以上是臨時修改
yum grouplist 列出所有可用的軟體組列表
yum groupinstall 組名 安裝指定的組包
yum groupremove 組名 解除安裝指定的組包
關於軟體查詢,要使用rpm -q一系列的命令查詢
rpm或者yum安裝,一般不要指定安裝位置,否則啟動或者解除安裝會出現位置,建議全部預設
原始碼包安裝位置一般位於:/usr/local/軟體目錄或者/usr/軟體目錄 需要自己指定
原始碼包啟動一般使用絕對路徑加引數啟動,或者使用環境變數
原始碼包解除安裝直接刪除安裝目錄即可,不會殘留任何垃圾檔案
伺服器軟體有大量使用者訪問,建議手動安裝官方原始碼包,效率更高,效能更好
底層支援軟體比如gcc之類的建議使用自帶的yum源安裝或者rpm包即可
安裝原始碼包報錯現象:安裝終止或者出現error,no等提示
比如apache原始碼包安裝:httpd-2.4.18.tar.bz2
軟體配置檢查,定義功能選項,檢測環境是否符合要求,一般情況下必須指定安裝位置,目錄不需要手工建立:
./configure --prefix=/usr/local/apache
編譯:make
如果編譯報錯,則清除編譯的快取和臨時檔案,重新開始:make clean
安裝:make install 如果這一步報錯,需要執行make clean 並且刪除目錄:rm -rf /usr/local/apache
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的...