该文章linux知识点如下

1.linux中 软件包介绍

2.linux源码软件安装

3.linux二进制软件安装

4.linux rpm软件包管理

5.linux yum软件包管理

1.linux中 软件包介绍

  一般分为三种  【1】二进制格式软件包  【2】源码格式软件包  【3】脚本安装包

1.1 二进制包(RPM包,系统默认包)

  优点:包管理系统简单,只需要几个命令就可以实现安装、升级、查询、下载。 安装速度比源码包快得多

  缺点:【1】经过编译不再可以看到源代码。 【2】功能选择不如源码包灵活  【3】有依赖性(依赖别的软件包)

  1.1.1 RPM包安装

    rpm -ivh 包全名

    -i(install) 安装,-v(verbose) 详细信息 ,-h(hash) 进度,-nodeps不检测依赖性,-force强制安装

  1.1.2 RPM升级与卸载

    rpm -Uvh 包全名     // -u(upgrade) 升级  

    rpm -e 包名  // -e(erase) 卸载,-nodeps不检测依赖性

  1.1.3 RPM查询

    rpm -q 包名

    -q name :查询,-qa查询所有已安装的,-qi name 查询软件详细信息,

    -ql httpd 显示列表,-qf path :查询一个文件属于哪个包,-qp 包名:查文件是什么

    //查询系统文件属于哪个RPM包

    rpm -qf 系统文件名 (-f查询系统文件属于哪个软件包)

    //查询软件包的依赖性

    rpm -qR 包名 (-R 查询软件包的依赖性,-p查询未安装包信息   rpm -qRp 包全名)

    //RPM校验:rpm -V 包名

  1.1.4 RPM包默认安装位置

/etc/   配置文件安装目录
/usr/bin/ 可执行的命令安装目录
/usr/lib/   程序锁使用的函数库保存位置
/usr/share/doc/   基本的软件使用手册保存位置
/usr/share/man/ 帮助文件保存位置

  RPM包可以指定安装位置(但不推荐),RPM包安装目录到处都是(由包制作者决定)。

  1.1.5 RPM包依赖问题

    (1)模块依赖(库依赖):查询网站:www.rpmfind.net

      案例:如果安装一个rpm包,提示报错,说是如果要安装此文件,就要先安装XXX。这个时候就会出来具体的包名称信息。

      复制包的名称,然后去www.rpmfind.net搜索。

    

  1.1.6 YUM在线管理

    yum可以安装和卸载rpm包,但不能查询和校验rpm包,可以配置本地和网络源

    常用yum命令

yum list 查询所有可用软件包列表
yum search 关键字  搜索服务器上所有和关键字相关的包
yum -y install 包名 安装包
yum -y update 包名 升级(慎用)
yum -y remove 包名 卸载包,移除包
yum clean all 清楚yum源缓存
yum grouplist #列出所有可用的软件组列表
yum groupinstall 软件组名   安装指定软件组,组名可以有grouplist查询
yum groupremove 软件组名 卸载指定软件组

1.2源码包

  一般为   *.src.rpm、*.tar.gz/*.tgz、*.bz2

  优点:【1】如果有足够的能力,可以修改源代码。

     【2】可以自由选择所需要的功能。

       【3】软件是编译安装,所以更加适合自己的系统,更加稳定效率更高。

       【4】卸载方便。

  缺点: 【1】安装过程步骤较多,尤其安装比较大的软件集合时,容易出现拼写错误

      【2】编译过程时间较长,安装比二进制时间长

      【3】因为是编译安装,安装过程中报错新手难以解决

  1.2.1 源码包的安装(*.tar.gz/*.tgz、*.bz2)

  【1】安装准备

    (1)安装C语言编译器(因为源码包是C语言写的)  (2)下载源码包

  【2】安装注意事项

    源代码保存位置:/usr/local/src/

    软件安装位置:   /usr/local/

    如何确定安装过程报错: --安装过程停止  --并出现error,warning,或no的提示

  【3】源码包安装过程(以apache2安装来演示)

    (1)下载源码包

    (2)解压缩下载的源码包

    (3)进入解压缩目录

    (4)然后执行一个   ./configure(软件配置与检查定义需要的功能选项,检查系统环境是否符合安装要求,把定义好的功能选项和检测系统环境的信息都写入makefile文件,用户后续的编辑。)

      示例: ./configure --prefix=/usr/local/apache2   (指定安装路径在什么地方)

    (5)make编译成二进制文件(此时/usr/local/apache2下没有安装文件)--安装出错时,可以make clean让安装环境clean~    

    (6)make install(执行此命令后,才在/usr/local/apache2下安装文件),到这里就安装好了

    (7)到(6)就好了,然后我们直接去我们(4)中执行的软件安装位置去找到我们的软件,启动就好 /usr/local/apache2/bin/apachectl start

  【4】源码包的卸载过程

    make uninstall 或 手动删除

  1.2.2 源码包安装(*.src.rpm)

    安装:rpm -rebuild *.src.rpm

    源码编译生成二进制文件,路径:cd /usr/src/dist/RPMS

    到路径下找到自己需要的二进制包直接安装:rpm -ivh *.rpm

    说明:rpm --rebuild *.src.rpm 命令将月代码编译并在/usr/src/dist/RPMS下生成二进制的rpm包,然后再安装该二进制包即可。packgename如前所述。

  1.2.3 脚本包安装

    实际安装的还是源码包和二进制包,只是把安装步骤携程脚本,让初学者可以一键安装

    优点:对初学者来说简单快捷

    缺点:失去了自定义性   。      比如:安装./java16.bin 或 ./install.sh     卸载:根据说明执行脚本或删除相应的目录。

Linux学习笔记(13)linux软件安装rpm与yum--理论篇的更多相关文章

  1. linux学习笔记2 - linux常用命令

    转载请标注原链接:http://www.cnblogs.com/xczyd/p/5543731.html 第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装lin ...

  2. linux 基础入门(8) 软件安装 rpm、yum与源码安装详解

    8.软件 RPM包安装 8.1rpm安装 rpm[选项]软件包名称 主选项 -i 安装 -e卸载 -U升级 -q查找 辅助选项 -ⅴ显示过程 -h --hash 查询 -a-all查询所有安装的包 - ...

  3. Linux学习笔记之Linux通过yum安装桌面

    Centos系统最小化安装以后,进入默认是命令行模式,所以需要进一步安装桌面. 1,本文使用的是CentOS 7 Minimal版本. 2,启动linux操作系统,进入后没有图形界面,但是有时候还是希 ...

  4. Linux学习笔记之Linux最小化安装启动后如何配置

    在VM虚拟机中安装CentOS 7 时 有时候顾虑到电脑硬件性能,我们需要最小化安装,而最小化安装后与centos6的版本是有一些差异的,接下来我们就对刚安装好的最小化centos7做一些操作,来世我 ...

  5. Linux学习笔记之Linux相关知识

    [想成为某一方面的大神,没有捷径可走,只能不断的记录.练习.总结.coding……] notes:主要从网上摘录了一些关于Linux的历史以及一些相关内容,以便对Linux系统有一定的了解.这不但可以 ...

  6. Linux学习笔记——查看Linux系统信息的方法

    由于Linux的发行版本比较多,并且有些差异性,所以,分析问题时我们常常需要知道自己的Linux系统的版本信息,以下是我搜集到的一些方法 1:显示电脑以及操作系统的相关信息 qian@ubuntu:~ ...

  7. Linux学习笔记之Linux第一课-基本介绍

    Linux简介 Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的. Linux是一套免费使用和自由传播的类Unix操作系统,是一个基 ...

  8. Linux学习笔记1——Linux的目录结构

    / 是根目录 ~是主目录 bin 存放二进制可执行文件(Is,cat,mkdir等) boot 存放用于系统引导时使用的各种文件 dev 用于存放设备文件 etc 存放系统配置文件 home 存放所有 ...

  9. Linux学习笔记之Linux启动引导过程

    早期时,启动一台计算机意味着要给计算机喂一条包含引导程序的纸带,或者手工使用前端面板地址/数据/控制开关来加载引导程序.尽管目前的计算机已经装备了很多工具来简化引导过程,但是这一切并没有对整个过程进行 ...

随机推荐

  1. curl编译

    首先下载并解压: wget http://curl.haxx.se/download/curl-7.37.1.tar.gz tar -xzvf curl-7.37.1.tar.gz 编译安装: cd ...

  2. 关于dbutils中QueryRunner看批量删除语句batch

    //批量删除 public void delBooks(String[] ids) throws SQLException { QueryRunner qr = new QueryRunner(C3P ...

  3. HBase学习笔记——Java API操作

    1.1.  配置 HBaseConfiguration 包:org.apache.hadoop.hbase.HBaseConfiguration 作用:通过此类可以对HBase进行配置 用法实例: C ...

  4. 国内外知名IT科技博客(强烈推荐)

    国内 1.36氪(www.36kr.com): 目前国内做的最风生水起的科技博客,以介绍国内外互联网创业新闻为主的博客网站,自己建立有36Tree互联网创业融投资社区.36氪的名字源于元素周期 表的第 ...

  5. MySQL集群系列1:2台机器搭建双主集群

    先配置静态IP 2台机器mysql密码一样,最好在同一局域网内,最好在mysql刚安装时就配置好,后面有数据了不好同步. 本文实现了2台机器mysql数据同步成功: 配置my.cnf 先关闭防火墙 s ...

  6. 加速I/O的基本规则

    作为这个讨论的开始,这里有几个如何加速I/O的基本规则: 1. 避免访问磁盘 2. 避免访问底层的操作系统 3. 避免方法调用 4. 避免个别的处理字节和字符 很明显这些规则不能在所有的问题上避免,因 ...

  7. 《linux系统及其编程》实验课记录(一)

    实验 1:登录和使用基本的 Linux 命令 实验环境: 安装了 Red Hat Enterprise Linux 6.0 可运行系统,并且是成功验证系统. 有另外一个无特权用户 student,密码 ...

  8. boost实用工具:assign库了解学习

    许多时候,我们需要为容器初始化或者赋值,填入大量的数据; STL容器仅提供了容纳这些数据的方法,但是填充的步骤是相当地麻烦(insert.push_back); 于是,boost::assign出现了 ...

  9. Sort List[leetcode] 由归并排序的递归和循环,到本题的两种解法

    归并排序能够有两种思路----top-down 和 bottom-up top-down: 递归实现,将数组分成两半.分别处理.再合并. 伪代码例如以下: split ( A[], l, r) { i ...

  10. 【BZOJ1816】[Cqoi2010]扑克牌 二分

    [BZOJ1816][Cqoi2010]扑克牌 Description 你有n种牌,第i种牌的数目为ci.另外有一种特殊的牌:joker,它的数目是m.你可以用每种牌各一张来组成一套牌,也可以用一张j ...