• Linux软件包管理


    一、软件包管理简介

    1、软件包分类

    ①源码包:

    优点为:开源,若有足够的能力,可以修改源代码;

    可以自由选择所需的功能;

    软件包是编译安装,更加适合自己的系统,更加稳定和高效;

    卸载方便。

    缺点为:安装步骤较多,尤其安装较大的软件合集时,容易出现拼写错误;

    编译时间较长;

    安装过程报错时,新手不易解决。

    ②RPM包:

    优点:包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载;

    安装速度快。

    缺点:经过编译,无法看到源代码;

    功能选项不如源码包灵活;

    依赖性不好解决。

    二、源码包管理--rpm命令管理

    1、rpm包命名

    例:tree-2.2.1.2-12.el6.centos.i686.rpm

    tree

    软件包名

    2.2.1.2

    软件版本

    12

    软件发布次数

    El6.centos

    适用的平台

    I686

    适合的硬件平台

    rpm

    rpm包扩展名

    2、RPM包依赖性

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

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

    模块依赖:模块依赖查询网站:www.rpmfind.net

    3、包全名与包名

    包全名:操作的包是没有安装的软件包时,使用包全名。要注意路径

    包名:操作已安装的软件包时,使用包名。

    三、软件包的管理

    1、命令rpm 安装rpm软件包

    语法:rpm 【选项】 软件包全名

    子参数: -i:安装

    -v:显示详细信息

    -h:显示进度

    -nodeps:不检查依赖性

    -u:升级

    -e:卸载

    -q:查询包是否安装

    -a:和-q合用,查询所有已经安装的rpm包

    -i:查询软件信息(rpm -qi 包名)

    -p:查询未安装包信息

    -l:列表与-q合用查询包中文件安装位置(rpm -ql 包名)

    -p:查询未安装包信息

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

    -R:查询软件包依赖性(rpm -qR 包名)

    -V:校验指定RPM包中的文件

    验证内容的八个信息:

    S

    文件大小是否改变

    M

    文件类型或文件权限是否改变

    5

    文件内容是否改变

    D

    设备的主从代码是否改变

    L

    文件路径是否改变

    U

    文件的属主是否改变

    G

    文件属组是否改变

    T

    文件的修改时间是否改变

    文件类型

    c

    配置文件

    d

    普通文件

    g

    鬼文件,不应该存在

    l

    授权文件

    r

    描述文件

    2、命令yum 在线管理软件包

    ①网络yum源

    例:vim /etc/yum.repos.d/CentOS-Base.repo

    [base]

    源名称

    Name=

    源说明

    Mirrorrlist

    镜像地址(可注释掉)

    baseurl

    yum源服务器地址

    enable

    是否生效1为是,0位否

    gpgcheck

    是否使用秘钥1为是,0为否

    gpgkey

    秘钥保存地址,不用修改

    ②yum包常用命令

    yum list: 查询所有可用软件包列表

    yum search 关键字:搜索服务器上所有和关键字相关的包

    yum install 包名:安装软件包

    -y:自动回答yes

    yum update 包名:升级

    yum remove 包名:卸载软件包

    ③yum软件组管理

    yum grouplist :列出所有可用软件组列表

    yum groupinstall 软件组名:安装指定的软件组

    yum groupremove 软件组名:卸载指指定软件组

    ④yum回滚或重做

    yum history list 软件包 :在yum历史中搜索某个软件

    yum history info N (N为编号):显示历史详细信息

    yum history redo N : 重做

    yum history undo N : 回滚

    3、本地源创建

    ①挂载光盘

    Mount /dev/sr0 /mnt

    ②创建源文件

    Vim /etc/yum.repos.d/名称.repo

    【名称】

    name=随便写

    baseurl=file:///mnt

    enable=1

    gpgcheck=0

    ③清理缓存

    yum clean all

    ④建立连接

    yum makecache

    四、源码包管理

    1、与rpm包区别

    安装前的区别:概念上的区别

    安装后的区别:安装位置不同

    2、rpm包安装位置

    rpm包默认安装位置:

    /etc

    配置文件安装位置

    /usr/bin

    可执行命令安装目录

    /usr/lib

    程序使用的函数库保存位置

    /usr/share/doc

    基本的软件使用手册保存位置

    /usr/share/man

    帮助文件保存位置

    3、源码包安装位置

    安装在指定位置,一般为/usr/local/软件名/

    4、安装位置带来的影响

    ①RPM包安装的服务可以使用系统服务管理命令来管理;

    ②而源码包安装的服务则不能被服务管理命令管理,因为没安在默认位置。只能使用绝对路径进行服务的管理:/usr/local/apache2/bin/apachectl start

    5、安装准备

    安装C语言编译器(yum groupinstall "开发工具" -y)

    下载源码包

    6、安装注意事项

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

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

    ③若出错则为:安装过程停止并出现error、warning或no的提示

    7、源码包安装过程

    ①下载源码包

    ②解压下载的源码包

    ③进入解压目录

    ./configure 进行软件配置与检查

    ④定义需要的功能选项;

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

    把定义好的功能选项和检测系统环境的信息都写入Makefile文件,用于后续编辑

    ⑤make 编译

    ⑥make install 编译安装

    8、软件的卸载

    不需要卸载命令,直接删除安装目录。

    五、脚本安装包与软件包选择

    1、脚本安装包

    ①脚本安装包并不是独立的软件包类型,常见安装的是源码包;

    ②是人把安装过程写成自动安装的脚本,执行脚本,定义简单的参数,就可以完成安装;

    ③类似于Windows下软件的安装

    2、webmin的作用

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

    3、Webmin安装过程

    ①下载软件:http://sourceforge.net/projects/webadmin/files/webmin/

    ②解压缩,并进入解压缩目录

    ③执行脚本安装

  • 相关阅读:
    [C++11新特性] weak_ptr和unique_ptr
    [C++11新特性] shared_ptr共享的智能指针
    VS2019 Qt5.15.2 开发环境搭建
    【C++11 新特性】Lambda表达式(三)
    【C++11 新特性】bind(二)
    【C++11 新特性】function(一)
    【IPC 进程间通信】有名管道的简单实现
    【IPC 进程间通信】常用进程间通信方式总结
    Qt 文件常见操作管理类
    【GitHub 开源分享】QML 在线预览工具
  • 原文地址:https://www.cnblogs.com/yxf-/p/11390937.html
Copyright © 2020-2023  润新知