yum 和 rpm操作

转自:https://my.oschina.net/u/3803405/blog/1791255/

Linux系统下yum命令查看安装了哪些软件包: 
$yum list installed //列出所有已安装的软件包 


yum针对软件包操作常用命令: 
1.使用YUM查找软件包 
命令:yum search php


2.列出所有可安装的软件包 
命令:yum list php


3.列出所有可更新的软件包 
命令:yum list updates 


4.列出所有已安装的软件包 
命令:yum list installed 


5.列出所有已安装但不在 Yum Repository 内的软件包 
命令:yum list extras 


6.列出所指定的软件包 
命令:yum list +包名


7.使用YUM获取软件包信息 、显示yum包的信息:
命令:yum info PACKAGE_NAME


8.搜索yum包:
命令:yum search PACKAGE_NAME


9.列出所有可更新的软件包信息 
命令:yum info updates 


10.列出所有已安装的软件包信息 
命令:yum info installed 


11.列出所有已安装但不在 Yum Repository 内的软件包信息 
命令:yum info extras 


12.列出软件包提供哪些文件 
命令:yum provides

 

13、更新具体的yum包:

$ yum update PACKAGE_NAME

14.显示已启用的yum存储库的列表:

$ yum repolist

15.清除yum缓存:

 

$ yum clean all

$ yum clean all

 

16.找出哪个yum包提供了一个特定的文件(例如:/usr/bin/nc)):

$ yum whatprovides "*bin/nc"

17.卸载yum包装:

$ yum remove PACKAGE_NAME

 

18.取出yum包装:

$ yum downloader PACKAGE_NAME

20.重新安装一个yum包:

$ yum reinstall PACKAGE_NAME

 

 

查到某些软件是否安装了。总结起来就是这样几类:

1、rpm包安装的,可以用rpm -qa看到,如果要查找某软件包是否安装,用 rpm -qa | grep “软件或者包的名字”。

[root@localhost ~] rpm -qa | grep ruby

 

2、以deb包安装的,可以用dpkg -l能看到。如果是查找指定软件包,用dpkg -l | grep “软件或者包的名字”;

[root@localhost  ~] dpkg -l | grep ruby

 

3、yum方法安装的,可以用yum list installed查找,如果是查找指定包,命令后加 | grep “软件名或者包名”;

[root@localhost ~] yum list installed | grep ruby

 

4、如果是以源码包自己编译安装的,例如.tar.gz或者tar.bz2形式的,这个只能看可执行文件是否存在了,

上面两种方法都看不到这种源码形式安装的包。如果是以root用户安装的,可执行程序通常都在/sbin:/usr/bin目录下。

说明:

其中rpm yum Redhat系linux的软件包管理命令,dpkg debian系列的软件包管理命令

5、安装一个软件所有依赖的包

yum localinstall -y java.1.1.0.rpm

 

软件的配置管理

1)Linux平台下软件分类,按照软件的内容分为二进制软件、源码包软件;

2)二进制包特点:软件的内容直接可以使用的,系统能够直接识别,直接运行,后缀以rpm、.zip结尾,或者基于rpm、yum工具去安装;

3)源代码包特点:软件的内容不能直接使用的,内容包括.c .h .cpp等,后缀以tar、zip、tar.gz、tar.bz2,需要通过GCC编译器编译,生成二进制文件,方可使用;安装的方式:./configure;make;make install;

4)RPM软件、YUM软件区别是什么?没有大的区别,都是用于管理以.rpm结尾的二进制包,RPM、YUM可以实现软件的安装、卸载、更新等管理;

5)RPM软件管理不能自己解决依赖软件包,而YUM可以自行解决各种依赖包,企业生产环境推荐使用YUM工具的,RPM安装的软件包,必须在本地存在(也可以使用http下载),YUM安装的软件包可以在线自动下载;

6)为嘛YUM可以自行下载软件,因为服务器可以上网,YUM内部工作机制问题,YUM是C/S模式,客户端、服务端,客户端基于repo文件找到服务端镜像地址,根据地址镜像rpm软件安装、配置,如果镜像地址是外网,需要服务器能够上外网;

7)YUM服务器端负责发布工作.rpm结尾软件包+依赖关系+基础数据库信息,服务器端一般通过HTTP、FTP协议进行发布;

8)YUM客户端,基于YUM命令,自动去查找YUM服务器端相关的软件+依赖关系,客户端使用YUM命令,首先会检查/etc/yum.repos.d是否有.repo结尾的文件,如果没有repo结尾的文件,则无法使用yum安装软件;

9)BAT企业,都是内部构建本地YUM源,YUM在内部节约外部带宽,节省成本,同时加快运行效率;

10)服务器内部传输带宽至少1000Mb,

 

 

常见问题:

yum install ntpdate,报错如下:

Loaded plugins: fastestmirror, priorities

http://mirror.centos.org/centos/7/os/x86_64/repodata/repomd.xml: [Errno 14] curl#6 - "Could not resolve host: mirror.centos.org; Name or service not known"

Trying other mirror.

 

Could not resolve host不能解析地址

解决方法两种:

  1. Ping mirror.centos.org是否能够返回IP地址,检测服务器DNS配置和网关配置,是否正确,问题可以被解决;

修改配置文件DNS:vim /etc/resolv.conf

2、

执行rpm -e vsftpd指令,报错信息如下:

error: Failed dependencies:

vsftpd = 3.0.2-22.el7 is needed by (installed) vsftpd-sysvinit-3.0.2-22.el7.x86_64

解决方法两种:

  1. rpm -e vsftpd-sysvinit vsftpd 卸载依赖的包;
  2. rpm -e vsftpd --nodeps 不依赖其他的包,可能会不完整;

error: open of vsftpd-3.0.2-22.el7.x86_64.rpm failed: No such file or directory

解决方法两种:

  1. 找不到该文件,从光盘镜像ISO找到该文件,然后上传至当前目录;
  2. 可以使用rpm -ivh在线安装,在百度上面查找,然后复制地址,例如: rpm -ivh http://rpmfind.net/linux/centos/7.4.1708/os/x86_64/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值