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. Activity之间的跳转和数据传输

    1.显式跳转 protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceSt ...

  2. pthread 线程立即取消的两种方法

    1.相关函数介绍 a. int pthread_cancel(pthread_t thread) 1发送终止信号给thread线程,如果成功则返回0,否则为非0值.发送成功并不意味着thread会终止 ...

  3. Exp6 信息收集与漏洞扫描

    一.实践过程 1.信息收集 1.1 通过DNS和IP查询目标网站的信息 (1)whois命令用来进行域名注册信息查询,可查询到3R注册信息,包括注册人的姓名.组织和城市等信息. whois baidu ...

  4. TCP/IP详解(包含ack,seq)

    前言 个人认为在web开发中,对于TCP/IP协议的理解是首当其冲的,在大多数框架的冲击下,使我们淡化了对于TCP/IP协议的理解. 理解好TCP/IP对于每个web开发者都是很有必要的. TCP/I ...

  5. Python:Mac 下 MQTT 服务器 Mosquitto 的配置

    我在Mac电脑上搭建时遇到了一些不同于网上大部分情况的问题,特此分享给可能也有遇到相同情况又找不到解决方法的人. 我的电脑系统:macOS Mojave 10.14.3. paho-mqtt 的安装 ...

  6. Intellij IDEA 4种配置热部署的方法【转】【补】

    热加载 热加载可以使代码修改后无须重启服务器,就可以加载更改的代码.(其实分java和非java代码,本处可以让java代码立即生效且不重启服务) 第1种:修改服务器配置,使得IDEA窗口失去焦点时, ...

  7. js制作可拖拽可点击的悬浮球

    兼容mouse事件和touch事件,支持IE9及其以上 效果展示:https://jsfiddle.net/shifeng/7xebf3u0/ // index.html <!DOCTYPE h ...

  8. 第十一节:WebApi的版本管理的几种方式

    一. 背景和方案 1. 多版本管理的概念 Android .IOS等 App 存在着多版本客户端共存的问题:App 最新版已经升级到了5.0 了,但是有的用户手机上还运行着 4.8.3.9 甚至2.2 ...

  9. 阿里云OSS的Bucket容量大小采集

    #!/usr/bin/env python3 #-*- coding: utf-8 -*- # 获取阿里云云监控中 OSS 中的bucket 的bucket大小 from aliyunsdkcore. ...

  10. Python——一个简单的类的创建和应用

    1.创建类,设置属性和给属性设定默认值,设置方法并访问类的属性: 2.利用类创建多个实例,以及调用类的方法的两种办法: 3.设置更新属性的函数,并更新实例的属性. class dog(object): ...