1,对Linux下软件的了解

  源码包:未编译,要编译安装。

  二进制包:已编译,可直接安装。

2,centos和ubuntu下的软件包对比:

  [centos]rpm文件手动安装,使用rpm指令        ——       [ubuntu]deb文件手动安装,使用dpkg指令
  [centos]yum在线安装                                              ——       [ubuntu]apt-get在线安装 
 
3,可以知道镜像解压后的packages里存放的就是各种rpm包:

RPM的命名规则:

  如:

  

  httpd-2.2.15-15.el6.centos.1.i686.rpm

    httpd:表示软件包名

    2.2.15:表示软件版本

    15:软件发布的次数

    el6.centos:适合的linux平台

    i686:适合的硬件平台

    rpm:rpm包的扩展名

注意:我们需要挂在那个镜像,说白了就是插上光驱,查看光驱内的文件,但是在虚拟机中我们需要挂载:参考博客:https://www.cnblogs.com/qiyebao/p/4331290.html

  

4,RPM包依赖性

  树形依赖:a->b->c

  环形依赖:a->b->c->a

  模块依赖:模块依赖查询网站:www.rpmfind.net   也可以使用这个网站查询rpm包

为了解决包的依赖性问题,我们建议使用yum在线安装,这样避免包的依赖性安装。

已经安装的包:会在/var/lib/rpm目录下的数据库中记载

  

安装rpm包:rpm -ivh 包全名

      -i:install 安装

      -v:verbose 现实详细信息

      -h:hash  显示进度

      --nodeps:不检测依赖性

5,手动安装:

  1,关在光驱,进入到/mnt/cdrom/Packages目录中

  

  2,从我的安装图可知,需要先安装众多依赖,那只能从底层看起逐层安装,才能最后安装http-2.2.15-26.el6.centos.rpm这个rpm包

  3,从apr-1.3.9-5.el6_2.i686.rpm开始安装

  4,

  5,在安装的过程中看到以数字结尾的包,这些都是库包,是某些rpm包内的包,需要安装它所在的rpm包,通过www.rpmfind.net 去找他所属的rpm包,

然后只需安装apr-1.3.9-5.el6_9.1.i686.rpm就可以了。

  6,如果最后安装完毕了,我们可以检测一次,检测方法:重装一遍,httpd-2.2.15-26.el6.centos.i686.rpm

只要没有报错,就可以知道没有依赖问题了。

  7,到这一步,还没有安装完毕整个httpd-xxx这个rpm包,还需要把其他的以httpd-xxx开头的包也安装上。

可是在安装httpd-devel-xxx的过程出现了太多的依赖,所以,我还是放弃了。。。。。

===》还是使用yum命令在线安装了。

6,升级rpm包:
  rpm -Uvh 包全名

    -U:update升级

7,卸载rpm包:

  rpm -e 包名     (可以不死包全名,因为已经安装上了,在/var/lib/rpm数据库中有记载)

    -e:erase 卸载

    --nodeps:不检测依赖性

8,查询RPM包:

  1,查询rpm包的命令基本格式:rpm -q,如果有其他什么参数,统一放到-q后面。

  2,查询linux系统中已经安装的所有软件包:rpm -qa

  3,配合more命令使用:rpm -qa | more     配合head使用rpm -qa | head -5

  4,配合管道符|和grep命令使用:rpm -qa | grep httpd

  5,配合wc命令:rpm -qa | wc -l

  6,查询某个rpm包是否安装:rpm -q 包名(包名需要精确拼写)

  7,查询软件包的详细信息:rpm -qi 包名(包名需要精确拼写)

  8,查询已安装软件包安装过程中安装了的所有文件:rpm -ql 包名(包名需要精确拼写)

  9,查询指定文件所属的软件包:rpm -qf 文件路径和名称

  10,

  11,

9,上面是rpm包的手动安装,非常繁琐,因此我们建议使用yum在线安装:

  yum是rpm包管理工具,能够从源空间,自动下载目标rpm,并且自动安装。

  yum的rpm包下载源路径在/etc/yum.repos.d目录下的.repo文件配置中指定

  1,yum -y install 包名

  2,yum list

  3,yum check-update

  4,yum update

  5,yum update 包名

  6,yum -y update

  7,yum remove 包名

10,关于tar的讲解详见

Linux安装Tomcat-Nginx-FastDFS-Redis-Solr-集群——【第六集之基本命令使用】

(配置两个网卡的引用:http://www.cnblogs.com/52php/p/6368186.html)

Linux从入门到进阶全集——【第八集:软件包管理:rpm、tar、yum】的更多相关文章

  1. Linux从入门到进阶全集——【第十四集:Shell基础命令】

    1,Shell就是命令行执行器 2,作用:将外层引用程序的例如ls ll等命令进行解释成01表示的二进制代码给内核,从而让硬件执行:硬件的执行结果返回给shell,shell解释成我们能看得懂的代码返 ...

  2. Linux从入门到进阶全集——【第十四集:Shell编程-export命令】

    参考: https://www.cnblogs.com/guojun-junguo/p/9855356.html 功能说明:设置或显示环境变量. 语 法:export [-fnp][变量名称]=[变量 ...

  3. Linux从入门到进阶全集——【第十五集:安装apache服务器】

    1,查看是否安装了httpd软件包以及其依赖:rpm -qa httpd(rpm -qa | grep httpd),如果没有输出任何信息,表示你没有安装httpd软件包,如果有输出一般是已经安装了: ...

  4. Linux从入门到进阶全集——【第十四集:Shell编程】

    正则表达式(与通配符) 正则表达式:匹配字符串,属于包含匹配[只要包含匹配条件就行],grep,awk,sed等命令支持正则表达式 通配符(*,?,[]):匹配文件名,属于完全匹配[必须是完全匹配条件 ...

  5. 网卡配置文件详解 用户管理与文件权限篇 文件与目录权限 软连接 tar解压命令 killall命令 linux防火墙 dns解析设置 计划任务crond服务 软件包安装 阿里云 yum源 安装

    Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. ...

  6. 【转载】干货再次来袭!Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载八)用命令实现批量添加用户

    Windows添加用户需要至少5个界面,而Linux一条命令就搞定了,这是不是高效人士办公第一法则呢.本文不给你一堆参数和选项,不让你见识教条主义,只给你最实用的代码. 想每天能听到小妞的语音播报,想 ...

  7. Linux程序包管理rpm与yum

    Linux程序包管理 Linux中软件的安装主要有两种形式:一种是直接下载源代码包自行编译后安装,另一种直接获取rpm软件包进行安装. 程序的组成部分: 二进制程序:程序的主体文件,比如我们运行一个l ...

  8. Linux软件管理(rpm、yum、tar)

    RPM软件包安装 YUM安装 源代码安装 TAR包管理:实现对文件的备份和压缩 rpm包管理 rpm命令是RPM软件包的管理工具. -a:查询所有套件:-b<完成阶段><套件档> ...

  9. Linux学习篇(二)-软件包管理器、Yum 软件仓库

    红帽软件包管理器 在红帽软件包管理器(rpm)公布之前,Linux 系统软件的安装只能采取"源码包"的方式安装,需要自行编译源码并解决许多依赖关系,所以软件的安装.升级.卸载的难度 ...

随机推荐

  1. redis3.2.10单实例安装测试

    redis3.2.10单实例安装测试 主要是实际使用环境中使用,为了方便快速部署,特意记录如下: # root用户 yum -y install make gcc-c++ cmake bison-de ...

  2. k8s网络之设计与实现

    k8s网络主题系列: 一.k8s网络之设计与实现 二.k8s网络之Flannel网络 三.k8s网络之Calico网络 K8s网络设计与实现是在学习k8s网络过程中总结的内容.在学习k8s网络各种插件 ...

  3. Linux samba服务器的搭建

    目录 1. 安装samba 2. 配置smb.conf 3. 创建samba登陆用户 4. 创建samba共享文件夹 5. 重启samba服务 6. 访问samba共享文件夹 7. 参考资料 1. 安 ...

  4. Python——爬取人口迁徙数据(以腾讯迁徙为例)

    说明: 1.迁徙量是腾讯修改后的数值,无法确认真实性. 2.代码运行期间,腾讯迁徙未设置IP屏蔽和浏览器检测,因此下段代码仅能保证发布近期有效. 3.代码功能:爬取指定一天的四十(此四十是根据自己的城 ...

  5. 2018-2019 ICPC, NEERC, Southern Subregional Contest (Online Mirror, ACM-ICPC Rules, Teams Preferred)

    A. Find a Number 找到一个树,可以被d整除,且数字和为s 记忆化搜索 static class S{ int mod,s; String str; public S(int mod, ...

  6. Linux 文本去重 之 命令sort 与 uniq

    sort [-fbMnrtuk] [file or stdin] 选项与参数: -f :忽略大小写的差异,例如 A 与 a 视为编码相同: -b :忽略最前面的空格符部分: -M :以月份的名字来排序 ...

  7. Java IO与网络编程笔记

    <!doctype html>Java IO&NIO figure:first-child { margin-top: -20px; } #write ol, #write ul ...

  8. python+redis+kairosdb+cassandra+mysql环境搭建

    环境搭建: python安装: redis安装: 下载.解压.安装 1.wget http://download.redis.io/releases/redis-5.0.0.tar.gz 2.tar ...

  9. 堆,set,优先队列

    当我们需要高效的完成以下操作时: 1.插入一个元素 2.取得最小(最大)的数值,并且删除 能够完成这种操作的数据结构叫做优先队列 而能够使用二叉树,完成这种操作的数据结构叫做堆(二叉堆) 堆与优先队列 ...

  10. LRU 实现缓存

    LRU:Least Recently used 最近最少使用 1.使用LinkedHashMap实现 inheritance实现方式 继承map类 可以使用Collections.synchroniz ...