13.Linux之软件安装

1.安装包分类

  Linux中的软件安装包分为源码包和二进制包。顾名思义,源码包就是未经编译,包含源代码的安装包,需要自行编译;二进制包就是已经编译好,不包含源代码的安装包。

  源码包是开源的,可以根据自己需要进行定制修改,也可以自由选择安装哪些功能。由于源码包必须自行编译安装,所以更适合自己的系统环境,运行更稳定,效率也会更高。由于源码包一般会指定一个固定的安装位置(一般安装在/usr/local/目录下),所以卸载时会更方便,如果未指定安装位置,那么要卸载软件只能到一大堆目录下自行删除文件了。

  源码包也是有缺点的。由于需要自行编译安装,所以安装过程步骤较多,特别是安装较大的软件集合时(可能会出现过多的相关依赖项)。编译过程的时间长短不定,这要视软件本身大小和机器性能决定。

  二进制包属于一键安装,这是其优点。软件安装位置在源代码中指定,不同作用和类型的文件可能会安装到不同的目录下(卸载可以通过命令卸载,无需自行删除文件)。下面简单列举了一些一般性的安装位置说明:

/etc/配置文件的安装目录
/usr/bin/
可执行命令的安装目录
/usr/lib/程序执行所依赖的函数库的保存位置
/usr/share/doc/软件使用说明等的保存位置
/usr/share/man/
帮助文件的保存位置

        另外要说明的是二进制包也可以指定安装位置,不按照源代码中设定的进行安装,但不建议这样做。

2.rpm命令安装

2.1rpm包命名

一般rpm包(属于二进制安装包)都遵循如下的命名规则:

110303_Y1hF_2321626.png

  • 软件包名:httpd

  • 软件版本:2.2.15

  • 发布次数:15

  • 适用平台:el6.centos

  • 适用硬件:i686

  • 扩展名:rpm

在我们安装的虚拟机操作系统CentOS6.5中可以通过如下命令查看系统自带的rpm包:

111838_aaLe_2321626.png

2.2rpm安装、升级与卸载

  • 安装:rpm -ivh 包全名

    -i:install安装

    -v:verbose显示详细信息

    -h:hash显示安装进度

    --nodeps:不检测依赖性(不提示依赖哪些包而直接安装。除非依赖包已安装好,否则软件不能使用)

  • 升级:rpm -Uvh 包全名    该命令不常用

               -U:upgrade升级

    其它同安装

  • 卸载:rpm -e 包名

    -e:erase卸载

    --nodeps:不检测依赖性(不提示依赖哪些包而直接卸载,否则要先卸载依赖的包)

2.3rpm查询

  • 查询是否安装某rpm包:rpm -q 包名

    -q:query查询

  • 查询已安装所有rpm包:rpm -qa

    -a:all所有

    可通过grep命令配合使用,实现过滤查询

  • 查询rpm包详细信息:rpm -qi 包名

    -i:information查询软件信息

    -p:package查询未安装的包信息

  • 查询rpm包中文件安装位置:rpm -ql 包名

    -l:list列表显示

    -p:package查询未安装的包信息

  • 查询系统文件属于哪个rpm包:rpm -qf 文件名    文件必须属于一个rpm包,自己创建文件不能查询

    -f:file查询系统文件属于哪个软件包

  • 查询rpm包的依赖文件:rpm -qR 包名

    -R:requires查询软件包的依赖性

    -p:package查询未安装的包信息

3.yum在线安装

3.1yum源

  yum在线安装是将所有软件包放到官方服务器,当运行yum安装命令时,能够自动解决软件的依赖问题。下面介绍了yum源是如何规定的:

163700_p3tM_2321626.png

  在系统/etc/yum.repos.d/目录下有4个文件,分别配置了不同的yum源,默认只有CentOS-Base.repo生效。下面显示了该文件的一部分内容:

163948_4o1n_2321626.png

  • [base]:容器名称,一定要放在[]中;

  • name:容器的说明信息;

  • mirrorlist:镜像站点,可以注释掉;

  • baseurl:yum源服务器的访问地址。默认是CentOS官方服务器地址,出于下载速度的考虑,可以修改为自己喜欢的其它地址;

  • enabled:规定容器是否生效。不写或者enabled=1都代表生效,enabled=0代表不生效;

  • gpgcheck:规定数字证书是否生效。gpgcheck=1代表生效,gpgcheck=0代表不生效;

  • gpgkey:数字证书的公钥文件的保存位置。

  如果服务器不能访问网络,可以使用本地yum源。方法是使用/etc/yum.repos.d/目录下CentOS-Media.repo文件进行配置。在使用本地yum源前需要关闭yum网络源,可以将CentOS-Base.repo文件中的所有容器的enabled置为0,使它们失效,或者直接修改文件名,使系统无法找到该配置文件。

  然后按照2.1节中截图中的命令挂载光盘:mount /dev/sr0 /mnt/cdrom。

  最后修改CentOS-Media.repo文件的内容如下:

200757_ZDDd_2321626.png

  保存后,本地yum源即可使用。

3.2yum安装

  • 查询:yum list(列表显示所有软件包)、yum search 关键字(搜索服务器上所有和关键字相关的包)

  • 安装:yum -y install 包名

         -y:自动回答yes

   install:安装

  • 升级:yum -y update 包名

          update 升级更新

  • 卸载:yum -y remove 包名

          remove

3.3yum组安装

  • 查询:yum grouplist(列表显示所有软件组)

  • 安装:yum groupinstall 软件组名(安装指定软件组,组名必须为英文)

  • 卸载:yum groupremove 软件组名(卸载指定软件组,组名必须为英文)

4.源码包安装

  由于源码包需要自行编译安装,所以安装之前需要对源码进行编译。编译软件源码就需要用到C语言编译器GCC,所以我们需要安装该软件,可以通过rpm或者yum进行安装。

  下载的源码包一般存放在服务器的/usr/local/src/目录下。

  源码包的软件一般安装在服务器的/usr/local/目录下。

  源码包的安装一般都需要经过三个步骤:./configure、make、make install

  •  ./configure:软件配置与检查

   定义需要的功能选项

    监测系统环境是否符合安装要求

    把以上两项的信息写入Makefile文件,用于后续编辑

    一般通过--prefix选项来指定软件的安装位置,例如./configure --prefix=/usr/local/软件名

  •  make:编译

   可以通过make clean清除编译好的文件,再重新编译。

  • make install:安装

   执行完此命令后,才会在指定的安装位置生成安装文件。

  想要卸载安装的源码包软件,可以直接删除通过--prefix指定的安装目录即可。

5.脚本安装包

  脚本安装包实际使用的仍然是源码包或者二进制rpm包,只是将安装过程写成脚本,方便不熟悉软件安装的人使用。优点就是简单、快速、方便,缺点就是不能自行选择软件版本和选择安装哪些功能。


转载于:https://my.oschina.net/xingkongxia/blog/552033

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值