- rpm 指令,在red hat 的default 的軟件管理程式。
- step 1. 我要將安裝一個名稱 zsh 的軟件
- rpm -ivh zsh.XXXXX.rpm
- step 2. 找詢剛才安裝的軟件
- rpm -q zsh
- step 3. 找詢 zsh 軟件的所有安裝文件
- rpm -ql zsh
- step 4. 另外我們也可以以文件檔案到推算出,它是那一個軟件包
- rpm -qf /sbin/fdisk
- step 5. 如何卸載一個軟件包
- rpm -e zsh
- step 6. 在安裝之前查看要安裝軟件的詳細資訊
- rpm -qpi zsh.XXXXX.rpm
- step 7. 在安裝之也可以查看這一件軟件包會復制出那一些新的文件
- rpm -qpl zsh.XXXXX.rpm
- rpm顯示所安裝的套件【使用q選項】
- rpm -qa sendmail
- rpm查詢包括<檔案>的套件【使用f選項】
- rpm -Vf /bin/vi
- 上是的-V選項是驗證模式
- rpm查詢的p選項為以套件的檔案全名來查詢套件
- rpm -qp rhviewer.xxx.xxxxxxx.rpm
- rpm顯示安裝的詳細資訊【使用i選項】
- rpm -qi sendmail
- rpm顯示所安裝的位置以及檔案【使用選項l】
- rpm -ql sendmail
- rpm使用s選項顯示即綿中所有的檔案狀態
- rpm使用d選項顯示在套件中被標示為文件的檔案列表,包括了man pages,info pages,readme etc.
- rpm使用c選項顯示在套件中標示為設定檔的檔案列表。
- rpm安裝程式
- rpm -ivh vnc*
- rpm更新軟件
- rpm -Uvh vnc*
- U:表Upgrade
- rpm -Fvh vnc
- F:表freshen
- 更新軟件還可以更新成較舊的版本,你可以使用--oldpackage的選項來完成。
- rpm -Uvh --oldpackage rhviewer-2.51=02.i386.rpm
- rpm移除軟件
- rpm -e ftd.x.x
- rpm單純解開
- rpm2cpio [rpm的檔案名稱] | cpio -idv
- rpm還能透過ftp來進行遠程的套件安裝或查詢
- rpm -ivh ftp://ftp.cycu.edu.tw/xxx.rpm
- 使用遠程安裝時,務必使用-h選項,否則你可能不知道安裝程序是否還在進行中,此外還可以使用--percent選項來得知安裝進度的百分比
- rpm指令是不可以重覆安裝相一個程式的,若你需要重新install則需要使用到--replacepkgs參數
- rpm -ivh --replacepkgs xxxx.rpm
- 套件中某個檔案已被其他套件安裝你可以看見以下訊息
- xxx conflicts with file from xxx-xxx-xxx
- 若你確定要取代舊有的檔案可以使用--replacefiles選項來安裝
- rpm -ivh --replacefiles xxx.rpm
- 套件移除
- 指令格式:rpm -e 套件名稱
- 你還可以使用--nodeps選項來進行強行移除套件
- 套件驗證
- 要驗證套件中的元件是否與原始套件相符,可使用驗證模式。-V參數可以來驗證套件的正確性。驗證模式會比較原始套件資訊及安裝於系統中的套件檔案資訊,包括每個檔案的大小、MD5(一種加密方式)checksum、權限、型別、擁有者及所屬的檔案群組。一般常用的驗證方式如下:
- rpm -V reviewer
- 驗證rhviewer套件的正確性
- rpm -Vf /bin/vi
- 驗證包含/bin/vi檔案的套件
- rpm -Va
- 驗證所有的套件
- rpm -Vprhviewer-xxx-xxx-xxx.rpm
- 使用.rpm檔案來驗證套件正確性
- 在驗證後,正常狀態是不會有任何的輸出的,如有不一致的地方會可參考以下的列表。
- 5:MD5 checksum不合
- S:檔案大小不合
- L:符號連結錯誤
- T:檔案修改時間不合
- D:設備屬性不合
- U:做用者不合
- G:檔案群組不合
- M:模式不合,包含權限和檔案型態
- rpm的應用
- 查詢套件所安裝的檔案:rpm -ql package-name
- 查詢是否刪除套件檔案:當您誤刪了某些檔案,可是並不知道到底刪掉些什麼,此時只要執行rpm -Va 指令即可對小統估完整的套件驗證,而得襠是否刪除了某些套件檔案
- 查詢檔案屬於那個套件:遇到一些不認得的檔案,想要找出這個檔案是否屬於那一個套件,可執行rpm -qf file-name指令
- 驗證套件的正確性:上2個例子可以結合使用。rpm -Vf /bin/vi
- 其他rpm選項
- --noorder:允許相依套件不按次序安裝
- --noscripts:不執行安裝套件前後用來輔助安裝程序的script指令
- --replacekgs:以相同的套件置換已安裝於系統中的套件,可用來修複已損毀的套件
- --replacefiles:可置換存在於別的套件之的相同檔案
- --excludedocs:不安裝套件中的w的文件檔案
- --justdb:只將套件原始檔中的資訊更新至組態資料庫中,而不實際安裝
- --test:測式套件
- --ignorearch:不檢查套件所用的平台(i386)
- --ignoreos:不檢查套件所用的作業系統
yum 指令,可以把它看成 rpm 的智能化工具,他的底層就是調用rpm,yum的指令可以將依賴
的軟件包一並安裝;yum可以透過網站安裝。
step 1. yum install zsh
step 2. yum update php
step 3. yum update
檢查系統輸出系統內的可更新軟件包
step 4. yum remove zsh
用來卸載軟件包
- 指令範例:
- yum search mysql
---------------------------------------------------------------------------------------------------------
chkconfig 指令 ,它是一個系統服務管理工具,它可以檢查、設置以及更新服務。
step 1. chkconfig --list
查看系統服務的狀態
step 2. chkconfig --list xinetd
查看單一個服務
step 3. chkconfig --level 3,4 xinetd off
在系統運行等級是3,4時;關閉xinetd服務
- 指令範例:
- chkconfig iptables off
- 設置防火牆服務的自動啟動狀態為關閉
- chkconfig:列出或是修改在開機時自動啟動的服務
- 假設我們要在單人模式、圖形介面的時侯停止ssh的服務
- chkconfig --level 35 sshd off
- 列出所有全部資訊
- chkconfig --list
- 補充:chkconfig輸出的最後幾個服務是一些老式的服務集,今天已經很少有人使用這些服務。這些老式服務集的運行狀態,依賴于一個名為xinetd的服務。通常將這些依賴于xinetd的服務稱為非獨立服務。非獨立服務受xinet服務管理,因此如果要啟動這些服務,應該道先啟動xinetd。
- Red Hat還有一個指令ntsysv也可以設置服務的啟動狀態
- chkconfig指令還可以添加/刪除系統服務
- chkconfig -add
- 手動添加mysql的服務
- cp mysql.server /etc/init.d/mysqld
- chmod +x /etc/init.d/mysqld
- chkconfig --add mysqld
- chkconfig --list
- chkconfig -del
- 手動刪除mysql的服務
- chkconfig --del mysql
- 補充:並不是所有發行版都支持chkconfig命令。
---------------------------------------------------------------------------------------------------------
ntsysv 指令,由 chkconfig 的功能是相同
step 1. ntsysv
or
step 2. ntsysv --level 1
---------------------------------------------------------------------------------------------------------
apt-get 指令,也是軟件包管理用的工具
step 1. apt-get install rcconf
安裝一軟件包
step 2. apt-get remove rcconf
刪除一個軟件包
step 3. apt-get update rcconf
更新一個軟件包
---------------------------------------------------------------------------------------------------------
aptitude 指令,也是軟件包管理工具
以是是 aptitude 常用的指偷
step 1. aptitude show rcconf
step 2. aptitude install rcconf
step 3. aptitude search rcconf
---------------------------------------------------------------------------------------------------------
apt-key 指令,列出軟體包密鑰訊息
---------------------------------------------------------------------------------------------------------
apt-sortpkgs 指令,用於排序軟件包的索引文件
---------------------------------------------------------------------------------------------------------
dpkg 指令,用於也是軟件包管理工具
step 1. dpkg -c rcconf_1.21_all.deb
step 2. dpkg -i rcconf_1.21_all.deb
-i : install
step 3. dpkg -r rcconf
-r : remove
---------------------------------------------------------------------------------------------------------
dpkg-deb 指令,他可以把軟件包作打包、解包
step 1. dbkg-deb -I rcconf_1.21_all.deb
---------------------------------------------------------------------------------------------------------
dpkg-divert 指令,用來允許將引起沖突的文件安裝到轉移目錄,而非default軟件目錄,通常只
有在文件有沖突的時侯才會用到這一個指定
step 1. dpkg-divert --add /root/Packages
---------------------------------------------------------------------------------------------------------
dbkg-preconfigure 指令,用於在安裝前之詢問的方式來完成軟件的安裝、以及配置文件的設定
step 1. dpkg-preconfigure rcconf_1.21_all.deb
---------------------------------------------------------------------------------------------------------
dbkg-query 指令,用於查詢軟體包的資訊
step 1. dpkg-query -l rcconf
step 2. dpkg-query -L rcconf
查詢軟件包的相關文件列表
---------------------------------------------------------------------------------------------------------
dbkg-reconfig 指令,用於已安裝的軟件包作重新配置
---------------------------------------------------------------------------------------------------------
----編輯紀錄
- 2013/04/21
- 補允:chkconfig指令相關資訊
沒有留言:
張貼留言