记录:323
场景:在CentOS 7.9操作系统上,使用rpm命令安装、卸载、查看软件包。
版本:
操作系统:CentOS 7.9
名词:
RPM:Red-Hat Package Manager的简称。一个命令行驱动的软件包管理工具,用来安装、卸载、校验、查询和更新Linux系统上的软件包。它生成具有.rpm扩展名的文件。
命名规则:rpm包命名规则一般包括名称、版本、架构、和.rpm后缀。
1.rpm常用命令
(1)帮助命令
命令:rpm --help
功能:查看rpm 支持全部命令和选项,在实际工作中,查看这个手册应该是必备之选。
(2)安装rpm包
安装指定包:rpm -ivh yum-utils-1.1.31-54.el7_8.noarch.rpm
安装指定包:rpm -ivh --nodeps yum-utils-1.1.31-54.el7_8.noarch.rpm
安装指定包:rpm -ivh --force yum-utils-1.1.31-54.el7_8.noarch.rpm
安装目录下全部包:rpm -ivh ./*
功能:安装指定软件包,-i是install安装;-v是打印详细日志;-h是在安装包时打印哈希标记,显示安装进度;--nodeps不校验依赖包;--force强制安装。
(3)卸载rpm包
卸载包命令:rpm -e yum-utils-1.1.31-54.el7_8
卸载包命令:rpm -e --nodeps yum-utils-1.1.31-54.el7_8
功能:卸载rpm包,-e是erase简写,就是清除卸载包;--nodeps,是代表不确认包的依赖。
(4)查看已安装的包
查询已安装的rpm包列表:rpm -qa
已安装包中的查询包含关键字的包:rpm -qa | grep yum-utils
(5)查看已安装包的信息
命令:rpm -qi yum-utils
功能:查看指定的已安装包的详细信息。比如包名称、版本、发行版本、架构、许可证、构建日期等。一般字段包括:Name、Version、Release、Architecture、InstallDate、Group、Size、License、Signature、SourceRPM、BuildDate、BuildHost、Relocations、Packager、Vendor、URL、Summary、Description。
(6)查看已安装包的文件
命令:rpm -ql yum-utils
功能:查看安装包的文件列表。
2.rpm命令和选项
命令:rpm --help
功能:查看rpm 支持全部命令和选项,在实际工作中,查看这个手册应该是必备之选。
- Usage: rpm [OPTION...]
-
- Query/Verify package selection options:
- -a, --all query/verify all packages
- -f, --file query/verify package(s) owning file
- -g, --group query/verify package(s) in group
- -p, --package query/verify a package file
- --pkgid query/verify package(s) with package identifier
- --hdrid query/verify package(s) with header identifier
- --triggeredby query the package(s) triggered by the package
- --whatrequires query/verify the package(s) which require a dependency
- --whatprovides query/verify the package(s) which provide a dependency
- --nomanifest do not process non-package files as manifests
-
- Query options (with -q or --query):
- -c, --configfiles list all configuration files
- -d, --docfiles list all documentation files
- -L, --licensefiles list all license files
- --dump dump basic file information
- -l, --list list files in package
- --queryformat=QUERYFORMAT use the following query format
- -s, --state display the states of the listed files
-
- Verify options (with -V or --verify):
- --nofiledigest don't verify digest of files
- --nofiles don't verify files in package
- --nodeps don't verify package dependencies
- --noscript don't execute verify script(s)
-
- Install/Upgrade/Erase options:
- --allfiles install all files, even configurations which might otherwise be skipped
- --allmatches remove all packages which match
(normally an error is generated if -
specified multiple packages) - --badreloc relocate files in non-relocatable package
- -e, --erase=
+ erase (uninstall) package - --excludedocs do not install documentation
- --excludepath=
skip files with leading component - --force short hand for --replacepkgs --replacefiles
- -F, --freshen=
+ upgrade package(s) if already installed - -h, --hash print hash marks as package installs (good with -v)
- --ignorearch don't verify package architecture
- --ignoreos don't verify package operating system
- --ignoresize don't check disk space before installing
- -i, --install install package(s)
- --justdb update the database, but do not modify the filesystem
- --nodeps do not verify package dependencies
- --nofiledigest don't verify digest of files
- --nocontexts don't install file security contexts
- --noorder do not reorder package installation to satisfy dependencies
- --noscripts do not execute package scriptlet(s)
- --notriggers do not execute any scriptlet(s) triggered by this package
- --nocollections do not perform any collection actions
- --oldpackage upgrade to an old version of the package (--force on upgrades does this automatically)
- --percent print percentages as package installs
- --prefix=
relocate the package to , if relocatable - --relocate=
= relocate files from path to - --replacefiles ignore file conflicts between packages
- --replacepkgs reinstall if the package is already present
- --test don't install, but tell if it would work or not
- -U, --upgrade=
+ upgrade package(s) - --reinstall=
+ reinstall package(s) -
- Common options for all rpm modes and executables:
- -D, --define='MACRO EXPR' define MACRO with value EXPR
- --undefine=MACRO undefine MACRO
- -E, --eval='EXPR' print macro expansion of EXPR
- --macros=
read instead of default file(s) - --noplugins don't enable any plugins
- --nodigest don't verify package digest(s)
- --nosignature don't verify package signature(s)
- --rcfile=
read instead of default file(s) - -r, --root=ROOT use ROOT as top level directory (default: "/")
- --dbpath=DIRECTORY use database in DIRECTORY
- --querytags display known query tags
- --showrc display final rpmrc and macro configuration
- --quiet provide less detailed output
- -v, --verbose provide more detailed output
- --version print the version of rpm being used
- Options implemented via popt alias/exec:
- --scripts list install/erase scriptlets from package(s)
- --setperms set permissions of files in a package
- --setugids set user/group ownership of files in a package
- --setcaps set capabilities of files in a package
- --restore restore file/directory permissions
- --conflicts list capabilities this package conflicts with
- --obsoletes list other packages removed by installing this package
- --provides list capabilities that this package provides
- --requires list capabilities required by package(s)
- --info list descriptive information from package(s)
- --changelog list change logs for this package
- --xml list metadata in xml
- --triggers list trigger scriptlets from package(s)
- --last list package(s) by install time, most recent first
- --dupes list duplicated packages
- --filesbypkg list all files from each package
- --fileclass list file names with classes
- --filecolor list file names with colors
- --fscontext list file names with security context from file system
- --fileprovide list file names with provides
- --filerequire list file names with requires
- --filecaps list file names with POSIX1.e capabilities
- Help options:
- -?, --help Show this help message
- --usage Display brief usage message
以上,感谢。
2022年11月19日