rpm、yum、编译安装轻松管理centos7程序包(10)
- UID
- 1066743
|
rpm、yum、编译安装轻松管理centos7程序包(10)
5.5 校验
查询包安装之后生成的文件是否发生了改变
rpm {-V|--verify} [select-options] [verify-options]
# rpm -V zsh
S.5....T. c /etc/zshrc
常见用法:rpm -V PACKAGE_NAME
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
程序包的合法性验正:
来源合法:
由我们信任的制作者提供
依赖于:制作者的数字签名;签名是作者使用自己的私钥加密程序包的特性码进行的;
内容合法:
包未被二次修改;完整性校验成功
依赖于:制作者提供的程序特征码;
验正方式:安装者用同样的特征码提取算法提取程序包的特征码,并与原作者提供的相比较;
验正其光盘中程序包的来源及完整性:
rpm --import /path/to/RPM-GPG-KEY-FILE
例如:# rpm --import RPM-GPG-KEY-CentOS-6
验正:rpm {-K|--checksig} PACKAGE_FILE
# rpm --import /misc/cd/RPM-GPG-KEY-CentOS-6
# rpm -K zsh-4.3.10-7.el6.x86_64.rpm
zsh-4.3.10-7.el6.x86_64.rpm: rsa sha1 (md5) pgp md5 OK
# rpm -K php-5.3.3-38.el6.x86_64.rpm
php-5.3.3-38.el6.x86_64.rpm: rsa sha1 (md5) pgp md5 OK
--nosignature: 不检查来源合法性
--nodigest: 不检查完整性
rpm管理器数据库:/var/lib/rpm
重建数据库:
rpm {--initdb|--rebuilddb} [-v] [--dbpath DIRECTORY]
--initdb: 初始化数据库,即数据库完全不存时,可新建之;
例如:
我删除__db.001、__db.002、__db.003、__db.004
# rm -rf /var/lib/rpm/__db.00{1..4}
# ll /var/lib/rpm/
总用量 57208
-rw-r--r--. 1 root root 5083136 11月 19 15:32 Basenames
-rw-r--r--. 1 root root 12288 11月 10 15:20 Conflictname
-rw-r--r--. 1 root root 1044480 11月 19 15:32 Dirnames
-rw-r--r--. 1 root root 5263360 11月 19 15:32 Filedigests
-rw-r--r--. 1 root root 20480 11月 19 15:32 Group
-rw-r--r--. 1 root root 20480 11月 19 15:32 Installtid
-rw-r--r--. 1 root root 49152 11月 19 15:32 Name
-rw-r--r--. 1 root root 24576 11月 19 15:07 Obsoletename
-rw-r--r--. 1 root root 46825472 11月 19 15:32 Packages
-rw-r--r--. 1 root root 1343488 11月 19 15:32 Providename
-rw-r--r--. 1 root root 696320 11月 19 15:32 Provideversion
-rw-r--r--. 1 root root 12288 11月 16 15:07 Pubkeys
-rw-r--r--. 1 root root 446464 11月 19 15:32 Requirename
-rw-r--r--. 1 root root 253952 11月 19 15:32 Requireversion
-rw-r--r--. 1 root root 90112 11月 19 15:32 Sha1header
-rw-r--r--. 1 root root 86016 11月 19 15:32 Sigmd5
-rw-r--r--. 1 root root 12288 11月 10 15:20 Triggername
# rpm --initdb /var/lib/rpm/
# ll /var/lib/rpm/
总用量 58048
-rw-r--r--. 1 root root 5083136 11月 19 15:32 Basenames
-rw-r--r--. 1 root root 12288 11月 10 15:20 Conflictname
-rw-r--r-- 1 root root 24576 11月 19 15:38 __db.001
-rw-r--r-- 1 root root 229376 11月 19 15:38 __db.002
-rw-r--r-- 1 root root 1318912 11月 19 15:38 __db.003
-rw-r--r-- 1 root root 753664 11月 19 15:38 __db.004
-rw-r--r--. 1 root root 1044480 11月 19 15:32 Dirnames
-rw-r--r--. 1 root root 5263360 11月 19 15:32 Filedigests
-rw-r--r--. 1 root root 20480 11月 19 15:32 Group
-rw-r--r--. 1 root root 20480 11月 19 15:32 Installtid
-rw-r--r--. 1 root root 49152 11月 19 15:32 Name
-rw-r--r--. 1 root root 24576 11月 19 15:07 Obsoletename
-rw-r--r--. 1 root root 46825472 11月 19 15:32 Packages
-rw-r--r--. 1 root root 1343488 11月 19 15:32 Providename
-rw-r--r--. 1 root root 696320 11月 19 15:32 Provideversion
-rw-r--r--. 1 root root 12288 11月 16 15:07 Pubkeys
-rw-r--r--. 1 root root 446464 11月 19 15:32 Requirename
-rw-r--r--. 1 root root 253952 11月 19 15:32 Requireversion
-rw-r--r--. 1 root root 90112 11月 19 15:32 Sha1header
-rw-r--r--. 1 root root 86016 11月 19 15:32 Sigmd5
-rw-r--r--. 1 root root 12288 11月 10 15:20 Triggername
--rebuilddb: 无论当前数据存在与否,都会直接重建此库; |
|
|
|
|
|