【转载】linux-查询rpm包相关安装、卸载脚本
?
?
測試過程中,有時要測試開發自己打的rpm包,為了確認打包正確,需要查詢rpm包相關安裝、卸載腳本,可以使用命令:
?
[root@6 /]#rpm -q --scripts mysql
postinstall scriptlet (using /bin/sh):
/sbin/install-info /usr/share/info/mysql.info.gz /usr/share/info/dir
/sbin/ldconfig
preuninstall scriptlet (using /bin/sh):
if [ $1 = 0 ]; then
? ? /sbin/install-info --delete /usr/share/info/mysql.info.gz /usr/share/info/dir || :
fi
postuninstall scriptlet (using /bin/sh):
if [ $1 = 0 ] ; then
? ? /sbin/ldconfig
fi
?
會有一些下面這些標識聲明的腳本段
?
preinstall scriptlet (using /bin/sh)::安裝前執行腳本
postinstall scriptlet (using /bin/sh)::安裝后執行腳本
preuninstall scriptlet (using /bin/sh)::卸載前執行腳本
postuninstall scriptlet (using /bin/sh)::卸載后執行腳本
?
如果安裝過程中,不想執行其中一個腳本,可以指定:
-nopre:不執行安裝前腳本?
--nopost:不執行安裝后腳本
--nopreun :不執行卸載前腳本
--nopostun:不執行卸載后腳本
?
全部不執行,使用:--noscripts 即相當于前面四個的總合
?
?
################
?
?
?
linux RPM包安裝、更新、刪除等操作命令簡明總結, 如何查看yum安裝的軟件路徑 ?
?
rpm -ivh package.rpm 安裝一個rpm包
rpm -ivh --nodeeps package.rpm 安裝一個rpm包而忽略依賴關系警告
rpm -U package.rpm 更新一個rpm包但不改變其配置文件
rpm -F package.rpm 更新一個確定已經安裝的rpm包
rpm -e package_name.rpm 刪除一個rpm包
rpm -qa 顯示系統中所有已經安裝的rpm包
rpm -qa | grep httpd 顯示所有名稱中包含 "httpd" 字樣的rpm包
rpm -qi package_name 獲取一個已安裝包的特殊信息
rpm -qg "System Environment/Daemons" 顯示一個組件的rpm包
rpm -ql package_name 顯示一個已經安裝的rpm包提供的文件列表
rpm -qc package_name 顯示一個已經安裝的rpm包提供的配置文件列表
rpm -q package_name --whatrequires 顯示與一個rpm包存在依賴關系的列表
rpm -q package_name --whatprovides 顯示一個rpm包所占的體積
rpm -q package_name --scripts 顯示在安裝/刪除期間所執行的腳本l
rpm -q package_name --changelog 顯示一個rpm包的修改歷史
rpm -qf /etc/httpd/conf/httpd.conf 確認所給的文件由哪個rpm包所提供
rpm -qp package.rpm -l 顯示由一個尚未安裝的rpm包提供的文件列表
rpm --import /media/cdrom/RPM-GPG-KEY 導入公鑰數字證書
rpm --checksig package.rpm 確認一個rpm包的完整性
rpm -qa gpg-pubkey 確認已安裝的所有rpm包的完整性
rpm -V package_name 檢查文件尺寸、 許可、類型、所有者、群組、MD5檢查以及最后修改時間
rpm -Va 檢查系統中所有已安裝的rpm包- 小心使用
rpm -Vp package.rpm 確認一個rpm包還未安裝
rpm2cpio package.rpm | cpio --extract --make-directories *bin* 從一個rpm包運行可執行文件
rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm 從一個rpm源碼安裝一個構建好的包
rpmbuild --rebuild package_name.src.rpm 從一個rpm源碼構建一個 rpm 包
?
?
1. rpm -qa|grep 軟件包名
2. rpm -ql 軟件包名? (l是L的小寫,不是堅線)
?
這里以hdf5軟件包為例:
?????? 首先采用 yum install hdf5
??????? #yum install hdf5
????? #rpm -ql hdf5-1.8.7-1.el6.rf.x86_64
?
?
?
以下內容摘自<<Linux鳥哥的私房菜>>:
?
rpm 全名是 “RedHat Package Manager",簡稱則為RPM。當被這個軟件管理機制是由Red Hat這家公司發展來的。RPM是以一種數據記錄的方式來將你所需要的軟件安裝到你的Linux系統的一套管理機制。rpm的優點如下:
?
1. RPM內含已編譯過的程序與設置文件等數據,可以讓用戶免除重新編譯的困擾。
?
2. RPM在被安裝之前,會先檢查系統的硬盤容量、操作系統版本等,可避免文件被錯誤安裝。
?
3. RPM文件本身提供軟件版本信息、依賴屬性軟件名稱、軟件用途說明、軟件所含文件信息,便于了解軟件。
?
4. RPM管理的方式使用數據庫記錄RPM文件的相關參數,便于升級、刪除、查詢與驗證。
?
?
?
RPM默認安裝路徑:
?
?
?
?
| /etc | 一些設置文件放置的目錄如/etc/crontab |
| /usr/bin | 一些可執行文件 |
| /usr/lib | 一些程序使用的動態函數庫 |
| /usr/share/doc | 一些基本的軟件使用手冊與幫助文檔 |
| /usr/share/man | 一些man page文件 |
?
轉載于:https://www.cnblogs.com/xuanbjut/p/10983327.html
總結
以上是生活随笔為你收集整理的【转载】linux-查询rpm包相关安装、卸载脚本的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IMYAOPTableView 源码学
- 下一篇: 精益质量管理中执行防错管理的八大要点