增。删,改,查
i,e,U,q
rpm -i <rpm file name> 安装指定的 rpm 文件
rpm -e <package-name> 删除指定的软件包
rpm -U <rpm file name> 用指定的 rpm 文件升级同名包
rpm -q <package-name> 查询指定的软件包在系统中是否安装
其中查询还有详细的命令,如下:
rpm -qf </path/to/file> 查询系统中指定文件所属的软件包 ubuntu: dpkg -S
例如: rpm -qf /bin/ls
rpm -qa 查询系统中安装的所有RPM软件包 ubuntu: dpkg -l
rpm -ql <package-name> 查询一个已安装软件包里所包含的文件 ubuntu: dpkg -L
rpm -qc <package-name> 查看一个已安装软件包的配置文件位置
rpm -qi <package-name> 查询一个已安装软件包的描述信息
rpm -qd <package-name> 查看一个已安装软件包的文档安装位置
rpm -qR <package-name> 查询一个已安装软件包的最低依赖要求
rpm -V <package-name> 校验指定的软件包
rpm -qpl <package-name> 查询一个未安装软件包里所包含的文件
rpm -qpc <package-name> 查看一个未安装软件包的配置文件位置
rpm -qpi <package-name> 查询一个未安装软件包的描述信息
rpm -qpd <package-name> 查看一个未安装软件包的文档安装位置
rpm -qpR <package-name> 查询一个未安装软件包的最低依赖要求
--------------------------------------------------------------------------------
ubuntu 包,文件管理(dpkg)
dpkg -l [表达式] ,含义, list,列出当前系统中所有的包.. (类似于rpm -qa)
dpkg -S <表达式> 含义, Search, 查询系统中某个文件属于哪个软件包. (类似于rpm -qf)
dpkg -s <软件包名> 含义, status, 查询已安装的包的详细状态信息.
dpkg -L <软件包名》 ,含义 listfiles,查询系统中已安装的软件包所安装的位置. (类似于rpm -ql)
dpkg-deb --info <软件包名> --列出一个deb软件包信息. (类似于 rpm -qpi),可以检查deb包依赖关系Depends
(实际上执行的是dpkg-deb 程序)
dpkg-deb --contents <软件包名> --列出deb软件包所包含的内容. (类似于 rpm -qpd). 与dpkg -L 不同.
该命令查询的是deb包内容, dpkg -L 查询是已经安装的包信息.
dpkg -i <.deb 文件名> 含义, (install) 手动安装软件包(这个命令并不能解决软件包之前的依赖性问题),
如果在安装某一个软件包的时候遇到了软件依赖的问题,可以用apt-get -f install在解决信赖性这个问题.
dpkg -r <软件包名> 含义, (remove) 卸载软件包.不是完全的卸载,它的配置文件还存在.
dpkg -P <软件包名> 含义, (purge)强制卸载(但是还是不能解决软件包的依赖性的问题)
ubuntu 下 apt-file 还有更强大的功能, 依据它自己的数据库, 我们还可以查询未安装的包信息, 及某个文件在哪个包中!
apt-file find <文件>
apt-file list <包名>
很强大,很厉害!
另外:ubuntu 用apt, centos 用yum 来安装卸载软件.(管理网络上的软件安装包?!)
----------------------------------------------
# yum 常用命令笔记
----------------------------------------------
yum search <some string> ;;查找软件包
yum provides <some string> ;;查询命令在什么包中
yum install <RPM> ;;安装
yum reinstall <RPKG> ;;重新安装
yum remove <RPKG> ;;卸载
yum deplist <RPKG> ;;查看一个软件包的依赖关系
yum update ;;更新
yum upgrade ;;升级系统
yum histroy ;;查看yum命令执行记录
yum info [all|avaiable|installed|updates|distro-extras|extras|obsoletes|recent]
;;查看软件包信息, 默认所有
yum clean [all | headers | packages | metadata | plugins | dbcache | expire-cache]
;;默认无,必需指明参数
yum list [all|avaiable|installed|updates|distro-extras|extras|obsoletes|recent]
;;默认列出所有
yum repolist [all|enabled|disabled]
;;默认列出enabled
yum makecache ;;生成meta信息
----------------------------------------------
# 安装 yum 工具包,提供了一些yum 工具
----------------------------------------------
yum install -y yum-utils
例:
yum-config-manager --add-repo https://mirrors.aliyun.com/repo/Centos-7.repo ;;添加yum源
yum-complete-transaction --cleanup-only ;; 尝试完成系统上不完整事务进程
package-cleanup --dupes ;; 列出重复的rpm包
package-cleanup –cleandupes ;; 去除重复的rpm包
package-cleanup --removenewestdupes
package-cleanup --problems ;; 列出可能存在的损坏包
yumdownloader --destdir=. <RPM> ;;
使用心得:
其实,yum 常用的功能是需要了解
yum list ;; 它的含义是列出所有可用的包. 而
yum search ;; (常用) 就是在所有可用包中查找你输入的包.
yum list installed ;; 是列出所有已安装的包,帮助你查看都安装的那些包.
它等价于
rpm -qa ;; (常用)用rpm 来列出所有已安装的包.
rmp -e --test ;; (常用) 不是真要删除包,只是测试一下该包被哪个包所依赖.
----------------------------------------------
查询包依赖:
----------------------------------------------
1. rpm -qpR
这种方法只适用于已安装的包。如果你需要检查一个未安装包的依赖关系,你首先需要把这个包先下载到本地来(不需要安装)
可以用yumdownloader 来只下载,不安装
2.yum deplist
3. repoquery
# repoquery -h
# repoquery -qR
为让repoquery正常的工作,需要保持网络的畅通,应为repoquery需要在Yum库中查找信息。
4. rpmreaper 也是一个很好的工具.