包管理器:rpm
ldd +二進制程序 查看二進制程序所依賴的庫文件
ldconfig 管理及查看本機裝載的庫文件
-p 查看一緩存的所有可用庫文件及文件路徑的映射關系
配置文件:/etc/ld.so.conf, /etc/ld.so.conf.d/*.conf
緩存文件:/etc/ld.so.cache
1.程序的組成清單(獨有)
文件清單
安裝卸載時運行的腳本
2.數據庫(公共):/var/lib/rpm
程序包名稱及版本
依賴關系
功能說明
包安裝後生成的各文件路徑及校驗碼信息
rpmbuild 制作rpm包
rpm
-i
-v 詳細提示
-h 進度條
-vv 更詳細信息(多用於排錯)
-q(a) 查詢已安裝的rpm包
-f 查看指定的文件由哪個程序包安裝生成
-p rpmfile 針對尚未安裝的程序包文件做查詢操作
-ivh 常用格式
--test: 測試安裝,但不真正執行安裝,即dry run模式
--nodeps:忽略依賴關系
--replacepkgs | replacefiles 重裝
--nosignature: 不檢查來源合法性
--nodigest:不檢查包完整性
--noscripts:不執行程序包腳本
%pre: 安裝前腳本; --nopre
%post: 安裝後腳本; --nopost
%preun: 卸載前腳本; --nopreun
%postun: 卸載後腳本; --nopostun
升級:
rpm
-Uvh
-Fvh
rpm {-U|--upgrade} [install-options] PACKAGE_FILE...
rpm {-F|--freshen} [install-options] PACKAGE_FILE...
upgrade:安裝有舊版程序包,則“升級” 如果不存在舊版程序包,則“安裝”
freshen:安裝有舊版程序包,則“升級” 如果不存在舊版程序包,則不執行升級操作
rpm -Uvh PACKAGE_FILE ...
rpm -Fvh PACKAGE_FILE ...
--oldpackage:降級
--force: 強制安裝
查詢
rpm {-q|--query} [select-options](對什麽類別查詢) [query-options](查詢什麽)
-q
[select-options]
-a: 所有包
-f: 查看指定的文件由哪個程序包安裝生成
-p rpmfile:針對尚未安裝的程序包文件做查詢操作
--whatprovides CAPABILITY:查詢指定的CAPABILITY由哪個包所提供
--whatrequires CAPABILITY:查詢指定的CAPABILITY被哪個包所依賴
[query-options]
--changelog:查詢rpm包的changelog
-c: 查詢程序的配置文件
-d: 查詢程序的文檔
-i: information
-l: 查看指定的程序包安裝後生成的所有文件
--scripts:程序包自帶的腳本
--provides: 列出指定程序包所提供的CAPABILITY
-R: 查詢指定的程序包所依賴的CAPABILITY
查詢常用組合:
-qi 安裝的信息
-qf 文件是由哪個包生成的
-qc 生成的配置文件
-ql 生成的所有文件列表
-qd 生成的文檔
-qpi 還沒安裝包的信息
-qpl 還沒安裝的包的列表
-qpa 所有還沒安裝的包
卸載
rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts] [--notriggers] [--test] PACKAGE_NAME ...
-e 卸載
校驗
rpm {-V|--verify} [select-options] [verify-options]
-v
S file Size differs 文件大小
M Mode differs (includes permissions and file type) 權限
5 digest (formerly MD5 sum) differs
D Device major/minor number mismatch
L readLink(2) path mismatch
U User ownership differs
G Group ownership differs
T mTime differs
P capabilities differ
包來源合法性驗正及完整性驗正
完整性驗正:SHA256
來源合法性驗正:RSA
公鑰加密
對稱加密:加密、解密使用同一密鑰
非對稱加密:密鑰是成對兒的
public key: 公鑰,公開所有人
secret key: 私鑰, 不能公開
導入所需要公鑰
rpm --import /etc/pki/rpm-gpg/
RPM-GPG-KEY-CentOS-7
數據庫重建:
/var/lib/rpm
rpm {--initdb|--rebuilddb}
initdb: 初始化
如果事先不存在數據庫,則新建之 否則,不執行任何操作
rebuilddb
重建數據庫索引目錄,無論當前是否存在
包管理器:rpm