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

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源端软件包扩展

默认使用ISO镜像文件中的软件包构建的HTTP YUM源,会发现缺少很多软件包,如果服务器需要挂载移动硬盘,Mount挂载移动硬盘需要ntfs-3g软件包支持,而本地光盘镜像中没有该软件包,此时需要往YUM源端添加ntfs-3g软件包,添加方法如下:

  • 切换至/var/www/html/centos目录,官网下载NTFS-3G软件包。

cd /var/www/html/centos/

wget http://dl.fedoraproject.org/pub/epel/7/x86_64/n/ntfs-3g-2016.2.22-3.el7.x86_64.rpm

http://dl.fedoraproject.org/pub/epel/7/x86_64/n/ntfs-3g-devel-2016.2.22-3.el7.x86_64.rpm

  • Createrepo命令更新软件包,同理,如需新增其他软件包,同样把软件下载至本地,然后通过createrepo更新即可,如图6-18所示:

createrepo –update centos/

图6-18 CreateRepo update更新软件包

  • 客户端YUM验证,安装NTFS-3G软件包,如图6-19所示:

常见问题:

1、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

3、CentOS7yum安装出现/var/run/yum.pid 已被锁定,解决办法 : 

root@bogon ~]# yum install -y gcc gcc+
已加载插件:fastestmirror, langpacks
/var/run/yum.pid 已被锁定,PID 为 11154 的另一个程序正在运行。
Another app is currently holding the yum lock; waiting for it to exit...
  另一个应用程序是:PackageKit
    内存:130 M RSS (1.4 GB VSZ)
    已启动: Mon May  1 16:17:14 2017 - 04:06之前
    状态  :睡眠中,进程ID:11154
Another app is currently holding the yum lock; waiting for it to exit...
  另一个应用程序是:PackageKit
    内存:130 M RSS (1.4 GB VSZ)
    已启动: Mon May  1 16:17:14 2017 - 04:08之前
    状态  :睡眠中,进程ID:11154

经过百度发现只要删除/var/run/yum.pid就可以正常使用了,即

rm -rf /var/run/yum.pid.
/sbin/service yum-updatesd restart

4、yum 安装软件时,报错:No package XXX available.

[root@localhost ~]# yum -y install redis
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: mirrors.163.com
 * base: mirrors.163.com
 * extras: mirrors.163.com
 * updates: mirrors.163.com
Setting up Install Process
No package redis available.
Nothing to do
解决方法:

1).先去更新一下yum仓库:
#yum -y update

5、yum安装软件报错:curl#6 - "Could not resolve host: mirrorlist.centos.org; Temporary failure in name resolut

# yum install -y epel-release
Loaded plugins: fastestmirror
Repository base is listed more than once in the configuration
Repository updates is listed more than once in the configuration
Repository extras is listed more than once in the configuration
Repository centosplus is listed more than once in the configuration
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was
14: curl#6 - "Could not resolve host: mirrorlist.centos.org; Temporary failure in name resolution"

1. Contact the upstream for the repository and get them to fix the problem.

2. Reconfigure the baseurl/etc. for the repository, to point to a working
        upstream. This is most often useful if you are using a newer
        distribution release than is supported by the repository (and the
        packages for the previous distribution release still work).

dns解析的问题,处理办法:
vim /etc/resolv.conf  加入:

nameserver 8.8.8.8
nameserver 8.8.4.4
search localdomain

参考链接 :yum命令不能使用的相关错误  :https://blog.csdn.net/rachel_luo/article/details/8692744

使用yum查询系统安装的软件及可以更新的软件并单独指定升级某一个软件的更多相关文章

  1. YUM查询软件信息

    我们常会碰到这样的情况,想要安装一个软件,只知道它和某方面有关,但又不能确切知道它的名字.这时yum的查询功能就起作用了.你可以用yum search keyword这样的命令来进行搜索,比如我们要则 ...

  2. yum安装时提示“尚未安装任何 GPG 公钥,请下载您希望安装的软件签名公钥并安装”

    在Linux操作系统中,安装软件依赖包时,出现了尚未安装任何 GPG 公钥,要求使用rpm --import public.gpg.key导入  问题: [root@server7 yum.repos ...

  3. linux安装软件的几种方式(kali平台)和一些实用的软件(持续更新)

    安装软件前我们先更改镜像源,编辑 /etc/apt/sources.list 文件, 在文件最前面添加以下条目: #中科大更新源 deb https://mirrors.ustc.edu.cn/kal ...

  4. 第一章-第四题(ACM 比赛的程序是软件么? “写程序” 和 ”做软件“ 有区别么?软件工程是不是教那些不怎么会写程序的人开发软件? 你怎么看?这个游戏团队, 有很好的软件,但是商业模式和其他软件之外的因素呢?有没有考虑到)--By梁旭晖

    引用 http://baike.baidu.com/link?url=z_phkcEO4_HjFG_Lt163dGFAubdb68IbfcfzWscTOrrZ55WbJEQKzyMQ5eMQKyatD ...

  5. 解决由于一个软件限制策略的阻止,windows无法运行此程序cmd.reg

    解决由于一个软件限制策略的阻止,windows无法运行此程序cmd.reg Windows Registry Editor Version 5.00 [-HKEY_LOCAL_MACHINE\SOFT ...

  6. ubuntu完全卸载一个软件

    今天卸载一个软件,老是有配置残留,网上找到了解决方案: 查看已安装的软件: dpkg -l |grep 软件名 找到一大堆相关的包,然后卸载核心的包: sudo apt-get remove --pu ...

  7. Ubuntu 如何使用apt命令安装、升级、卸载软件

    apt-get是一条linux命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索.安装.升级.卸载软件或操作系统. apt-get命令一般需要root权限执行,所以一般跟着su ...

  8. 打包mysql、tomcat、jdk为一个软件

    打包mysql.tomcat.jdk为一个软件 博客分类: 成长中的点滴  . 我们在本地开发web应用的时候,直接在IDE里面就可以完成jdk.容器.数据库的配置和集成. 但是如果当我们把应用程序交 ...

  9. JDBC连接(MySql)数据库步骤,以及查询、插入、删除、更新等十一个处理数据库信息的功能

    主要内容:  JDBC连接数据库步骤. 一个简单详细的查询数据的例子. 封装连接数据库,释放数据库连接方法. 实现查询,插入,删除,更新等十一个处理数据库信息的功能.(包括事务处理,批量更新等) 把十 ...

  10. android 检查软件是否有更新版本

    import java.net.HttpURLConnection; import java.net.URL; import java.util.HashMap; import com.yuxin.m ...

随机推荐

  1. 超全面总结Vue面试知识点,助力金三银四

    前言 本文会对Vue中一些常见的重要知识点以及框架原理进行整理汇总,意在帮助作者以及读者自测Vue的熟练度以及方便查询与复习.金三银四的到来,想必vue会是很多面试官的重点考核内容,希望小伙伴们读完本 ...

  2. 如果诸葛亮用C#写出师表...

    看到一篇18年的文章 "C++版<出师表>",站长觉得挺有意思的,就用C# 控制台也实现了一遍,技术上没啥难度,但复制代码费了1.2个小时,纯粹无聊写着玩,看者别在意枚 ...

  3. VSCODE配置tasks.json

    1.新建配置任务tasks.json 选择gcc.exe 可以在其中按需修改 { "version": "2.0.0", "tasks": ...

  4. css - 使用 figure 和 figcaption 快速实现 图片加文字的垂直方向的布局 ( 不支持ie9以下版本 )

    一,属性介绍 1. 浏览器支持 注释:Internet Explorer 8 以及更早的版本不支持 <figure> 标签.Internet Explorer 9, Firefox, Op ...

  5. WebApi输出json 不要把首字母转为小写

    services.AddControllers().AddJsonOptions(c => { c.JsonSerializerOptions.PropertyNamingPolicy = ne ...

  6. [转帖]Nginx Rewrite重写功能

    目录 一.rewrite的概述 1.1.概述 1.2 跳转场景 1.3 跳转实现 1.4 Rewrite实际场景 二.常用的nginx正则表达式 三.rewrite命令 3.1 rewrite的语法格 ...

  7. [转帖]VMWare ESXi中,不同的虚拟网卡性能竟然能相差三倍!

    https://zhuanlan.zhihu.com/p/525656364 正文共:1024 字 11 图,预估阅读时间:1 分钟 在上个实验中(VPP使用DPDK纳管主机网卡),我们已经初步实现了 ...

  8. [转帖] 使用socat反向Shell多台机器

    https://www.cnblogs.com/codelogs/p/16012319.html 场景# 很多时候,我们需要批量操作多台机器,业界一般使用Ansible来实现,但使用Ansible来操 ...

  9. Oracle 以及 达梦数据库简单查询所有表行数的存储过程

    1. 今天有一个场景需要查询一个数据库实例下面所有的表的行数. 本来想查询 user_tables 视图 但是发现 这个视图里面 达梦数据库 里面存的是null的.. 百度之后发现一个解决方案是 使用 ...

  10. file文件转为base64

    场景描述 在工作中,我们经常需要进行文件上传. 比如在进行图片上传的时候, 我们需要将上传的图片展示出来. 这个时候我们就需要将file文件转化为base64. 将file文件转化为base64 // ...