Linux软件安装——软件包管理

Linux软件安装——软件包管理简介

一、软件包分类

  1. 源码包:
    ->脚本安装包(比较少)
  2. 二进制包(RPM包、系统默认包)

二、源码包:

源码包的优点是:

  1. 开源,如果又足够的能力,可以修改源代码
  2. 可以自由选择所需的功能
  3. 软件是编译安装,所以更加适合自己的系统,更加稳定也效率高
  4. 卸载方便

源码包的缺点是:

  • 安装过程步骤较多,尤其安装较大的软件集合时(如LAMP环境搭建),容易出现拼写错误
  • 编译过程时间长,安装比二进制安装时间长
  • 因为是编译安装,安装过程一旦报错新手很难解决

三、RPM包

二进制包的优点:

  • 包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载
  • 安装速度比源码包安装快得多

二进制包的缺点:

  • 经过编译,不可以再看到源代码
  • 功能选择不如源代码灵活
  • 依赖性

四、RPM管理——rpm命令管理

(一)RPM包命名规则

  httpd-2.2.15-15.e16.centos.1.i686.rpm
    httpd        软件包名
    2.2.15        软件版本
    15           软件发布的次数
    e16.centos    适合的Linux平台
    i686         适合的硬件平台
    rpm         rpm包扩展名

(二)RPM包依赖
  • 树形依赖 a → b → c a \rightarrow b \rightarrow c abc
  • 环形依赖 a → b → c → a a \rightarrow b \rightarrow c \rightarrow a abca
  • 模块依赖:模块依赖查询网站: www.rpmfind.net
(三)包全名与包名
  • 包全名:操作的包是没有安装的软件包时,使用包全名。而且要注意路径。
  • 包名:操作已经安装的软件包时,使用包名。是搜索/var/lib/rpm/中的数据库
(四)RPM安装

  rpm -ivh 包全名
选项:
   -i(install)   安装
  -v(verbose)  显示详细信息
  -h(hash)   显示进度
  --nodeps   不检测依赖性

(五)RPM包升级

  rpm -Uvh 包全名
选项:
   -U(upgrade)   升级

(六)RPM包卸载

  rpm -e 包名
选项:
   -e(erase)    卸载
  --nodeps     不检测依赖性

(七)RPM查询
  1. 查询是否安装
      rpm -q 包名
        -q(query)       查询
      rpm -aq 包名
        -a(all);          查询所有已经安装的包
  2. 查询软件包详细信息
      rpm -qi 包名
        -i(information);      查询软件信息
        -p(package);        查询未安装包信息
  3. 查询包中文软件安装位置
      rpm -ql 包名
        -l(list);           列表
        -p(package);        查询未安装包信息
  4. 查询系统文件属于哪个RPM包
      rpm -qf 系统文件名
        -f(file);           查询系统文件属于哪个软件包
  5. 查询软件包的依赖性
      rpm -qR 包名
        -R(require);       查询软件包的依赖性
        -p(package);       查询未安装包信息
(八)RPM包校验

  rpm -V 已安装包名
    -V(verify);       校验指定RPM包中的文件(verify)

验证内容的8个信息的具体内容如下:

  • S    文件大小是否改变
  • M   文件的类型或文件的权限(rwx)是否改变
  • 5   文件MD5校验和是否改变(可以看成文件内容是否改变)
  • D   设备的中,从代码是否改变
  • L   文件路径是否改变
  • U   文件的属主(所有者)是否改变
  • G   文件的属组是否改变
  • T   文件的修改时间是否改变
  • 没有修改用… 表示

文件类型:

  • c   配置文件(config file)
  • d   普通文档(documentation)
  • g   "鬼“文件(ghost file),很少见,就是该文件不应该被这个RPM包包含
  • l    授权文件(license file)
  • r    描述文件(read me)
(九)RPM包中文件提取
  • rpm2cpio   包全名(将rpm包转换为cpio格式的命令)
  • cpio -idv .文件绝对路径(是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件)

四、RPM管理——yum命令管理

(一)网络yum源

$ vi /etc/yum.repos.d/CentOS-Base.repo

  • [base]    容器名称,一定要放在[]中
  • name    容器说明,可以自己随便写
  • mirrorlist   镜像站点,这个可以注释掉
  • baseurl    我们的yum源服务器的地址。默认是CentOS官方的yum源服务器,是可以使用的,如果你觉得慢可以改成你喜欢的yum源地址
  • enabled    此容器是否生效,如果不写或写成enable=1都是生效,写成enable=0就是不生效
  • gpgcheck   如果是1是指RPM的数字证书生效,如果是0则不生效
  • gpgkey    数字证书的公钥文件保存位置。不用修改
(二)yum查询命令
  • $ yum list #查询所有可用软件包列表
  • $ yum search 关键字 #搜索服务器上所有和关键字相关的包
(三)yum安装命令
  • $ yum -y install 包名
  • 选项:
       install    安装
       -y     自动回答yes
(四)yum升级命令
  • $ yum -y update 包名
  • 选项:
       update    升级
       -y     自动回答yes
    注:不要直接打 yum -y update
(五)yum卸载命令
  • $ yum -y remove 包名
  • 选项:
       remove    卸载
       -y     自动回答yes
    注:没事不要用yum卸载
(五)yum软件组管理命令
  • $ yum grouplist #列出所有可用的软件组列表
  • $ yum grouplist 软件组名 #安装指定软件组,组名可以由grouplist查询出来
  • $ yum groupremove 软件组名 #卸载指定软件组
(五)光盘yum源搭建步骤

1)挂载光盘

  • $ mount /dev/cdrom /mnt/cdrom/

2)让网络yum源文件失效

  • $ cd /etc/yum.repos.d/
  • $ mv CentOS-Base.repo \
  • $ mv CentOS-Debuginfo.repo \
  • $ mv CentOS-Vault.repo \

3)修改光盘yum源文件

  • $ vim CentOS-Media.repo
    [c6-media]
    name=CentOS-$releasever - Media
    baseurl=file:///mnt/cdrom
    #地址为你自己的光盘挂载地址
    #file:///media/cdrom
    #file:///media/cdrecorder/
    #注释这两个不存在的地址
    gpgcheck=1
    enabled=1
    #把enable=0改成enable=1,让这个yum源配置文件生效
    gpgkey=file:///etc//pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
(六)源码包安装管理

1) 区别

  • 安装之前的区别:概念上的区别
  • 安装之后的区别:安装位置不同

2)RPM包安装位置

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

3)源码包安装位置

  • 安装在指定位置当中,一般是 usr/local/软件名/

4)安装位置不同带来的影响

  • RPM包安装的服务可以使用系统服务管理命令(service)来管理,例如RPM包安装的apache的启动方法是:
      /etc/rc.d/init.d/http start
      service httpd start
  • 而源码包安装的服务则不能被服务管理命令管理,因为没有安装到默认路径中,所以只能用绝对路径进行服务管理,如:
      /usr/local/apche2/bin/apachectl start
(七)源码包安装过程

1)安装准备

  • 安装C语言编译器
  • 下载源码包(http://mirror.bit.edu.cn/apche/htpd/)

2)安装注意事项

  • 源码包保存位置: /usr/local/src/
  • 软件安装位置: /usr/local/
  • 如何确定安装过程报错:
      安装过程停止
      并出现error、warning或no的提示

3)源码包安装过程

  1. 下载源码包
  2. 解压缩下载的源码包
  3. 进入解压缩目录
  4. ./configure 软件配置与检查
      - 定义需要的功能选项
      - 检测系统环境是否符合要求
      - 把定义好的功能选项和检测系统环境的信息都写入Makefile文件,用于后续的编辑
  5. make 编译
      make clean 清空文件
  6. make install 编译安装

4)源码包的卸载
源码包的卸载只要卸载目录下的文件,不会遗留其他问题。

(八)脚本安装包

1)脚本安装包

  • 脚本安装包并不是独立的软件包类型,常见安装的是源码包
  • 是人为把安装过程写成了自动安装的脚本,只要执行脚本,定义简单的参数,就可以完成安装
  • 非常类似Window下软件的安装方式

2)Webmin的作用

  • Webmin是一个基于Web的Linux系统管理界面。你就可以通过图形化的方式设置用户账号、Apache、DNS、文件共享等服务。

3)Webmin安装过程

  • 下载软件
      http://sourceforge.net/projects/webadmin/files/webmin/
  • 解压缩,并进入加压缩目录
      $tar -zxvf webmin-1.610.tar.gz
      $cd webmin-1.610
  • 执行安装脚本
      $./setup.sh
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值