rpm包管理

    • 相关知识
      • 接口
        • API:二进制接口
        • ABI:应用层接口,
      • 包的组成:
        • 二进制文件;库文件;配置文件;帮助文档
      • 程序包管理器
        • debian: deb,dpt apt-agt包管理前段工具
        • rehat:rpm;rpm yum包管理前段工具
        • fedora dnf包管理前段工具
      • 安装过的rpm包数据库
        • /var/lib/rpm/*
      • 管理查看二进制程序依赖的库文件
        • ldd /path/filename
      • 管理查看本机装载库文件
        • ldconfig -p 显示本机缓存库文件及路径
        • 配置文件 、etc/ld.so.conf ; etc/ld.so.conf.d/*.conf
        • 缓存:etc/ld.so.cache
      • 程序包组成:
        • 1程序清单
          • 文件清单 安装卸载的脚本
        • 2数据库
          • 程序包名称和版本,依赖关系,校检码。功能说明
      • 程序包获取
    • centosrpm命令管理程序
      • 安装,卸载。升级。查询;校检,数据库维护
        • 安装 –root=/ 可以指定安装在那个根系统
          • rpm -i -v和vv都是显示过程的 h显示进度的
            • –test测试安装 –nodeps忽略依赖关系(在依赖关系循环时) –replacepkgs重新安装
            • –nosignature不检查包的来源合法性 –nodigest不检查完整性
            • –noscripts不执行 程序包安装脚本 %pre安装前脚本 %post安装后脚本%preun卸载前脚本%postun卸载后脚本
          • rpm2cpio 包文件 | cpio “*.conf” 释放包文件
        • 升级
          • -U有旧包则升级,没有则安装 -F有旧包则升级,没有不安装 –oldpackage降级
        • 查询
          • 查询包
            • -a所有安装的包 -f查看指定文件由那个安装包安装
            • –whatprovides ca 查询指定的能力由那个包提供–whatrequires ca 查询指定的包被谁依赖
          • 查询包信息
            • –changelog查看rpm包的编译日志 -c查询配置文件 -d查询查询文档 -i包信息 -l查看生产文件 –scripts脚本信息 -p查看没有安装的包 -R查询指定包依赖的能力 –provides列出包提供的能力
        • 卸载 -e
        • 校检
          • 文件是否有变动 -V -K
          • 包来源性及完整性
            • 完整性:SHA256 来源合法:RSA
            • 使用私匙加密
          • 导入所需要公匙 rpm –import RPM-GPG-KEY-CentOS-7
        • 数据库
          • 数据库重建:–initdb不存在就安装,存在就不安装 rebuilddb重建
    • yum
      • 工作流程
        • 本地向yum仓库发出请求,yum仓库发回软件包及元数据(首次使用),本地缓存这些返回信息,安装后删除安装包,保留元数据,再次安装时只发回元数据的校检码和安装包
      • yum repository:yum repo
        • 存储众多rpm包,以及包相关的元数据放在特定目录下repodate
      • yum客户端配置
        • /etc/yum.conf;可为所有仓库提供公共配置
        • /etc/yum.repos.d/*repo为仓库提供配置
      • yum配置文件
        • 【base】仓库ID
        • name=centos 7 仓库名字 ,不指定会报错
        • baseurl=url://path/to/repository仓库路径 file:///date/http://172.20.77.1/pub/
        • enabled={0|1}开机是否启动默认启动 0关闭
        • gpgcheck={1|0}检查报的完整性
        • gpgkey=url 检查包的来源合法性
        • cost=1000 开销默认1000.
      • yum配置的变量
        • $releasever 系统主版本号 $arch平台 $basearch基础平台
      • 建立本地仓库 createrrepo path
      • yum命令
        • 命令选项
          • -y自动回答yes -q静默安装 –nogpgcheck禁止gpg chk
          • –disablerepo=repo 临时禁用仓库 -enablerepo=repo 临时启用 –noplugins禁用所有有插件
        • 显示仓库
          • repolist 查看启用仓库 加上all显示全部
        • 安装 install
        • 显示程序包
          • yum list {available |install| updates} 显示可用的包,可以安装的,可以升级的
        • 升级 update 检查升级 check-update 降级 downgrade
        • 卸载 remove
        • 查看安装包信息 indo
        • 查看程序特性 provides
        • 清理缓存 clean all 构建缓存 makecache
        • 搜索 search
        • 查看依赖关系 deplist
        • 本地包安装 localinstall
        • yum事务管理 history
        • 包组管理 groupinstall安装包组 grouplist列出包组 groupinfo查看信息 groupremove移除包组
    • 编译安装
      • 编译过程
        • 源代码–预处理–编译–汇编–链接–执行 每个过程都需要一个程序来处理
      • 源码组织格式
        • 多文件:文件中代码可能会跨文件依赖
          • c;c++: make项目管理 (configure配置–makefile. in 生成配置文件的模板,调用那个编译器汇编器等等–makefile)
          • jave maven
      • 编译三部曲 ./configure -h查看启用特性 yum list 查找特定包
        • .configure
          • 通过选项参数启用指定特性,生成配置文件
        • make 根据配置文件;构建应用程序
        • make install 生成相关文件和信息
        • 编译步骤
          • 第一步 configure 安装帮助文档INSTALL README
            • 指定安装位置和启用特性
              • .configure –prefix=/usr/local/apache2 –sysconfdir=/etc/httpd2
              • 选择路径 –prefix=/ 可以指定默认位置 所有文件会分好类,可以选择其他路径会安装在一起编译后要指定
              • system types 跨平台编译
              • –disable –enable 关闭或开启指定特性
              • –with安装包 –without不安装包
          • 第二步:make -j 4 指定用cpu核数
          • 第三步 make install
          • 编译后配置
            • 导出二进制程序目录到PATH变量
            • 导出库文件路径 /etc/ld.so.conf/*.conf 刷新缓存ldconfig -V
            • 导出头文件 基于连接 ln -sv
            • 导出帮助文档
          • curl 地址 |bash
      • 开发工具
        • autoconf:生成configure脚本
        • automake:生成makefile。in
      • 编译前提:
        • 开发工具:make gcc等 开发环境:开发库及头文件等等

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/96870

(1)
阿飞阿飞
上一篇 2018-04-22 20:40
下一篇 2018-04-22 20:59

相关推荐

  • Linux学习笔记——权限管理

    Linux学习笔记——权限管理 前言: Linux下的权限管理与日常使用的windows有众多与众不同之处。这些特性使得Linux在实际生产作业中更加安全与高效,发挥着各种灵活的作用。本文简要写下笔者对Linux权限管理的理解,供参考与复习,欢迎指正。 回顾: 确认文件的权限与所有者: 使用ll(即ls -l) 命令可查看这个文件的详细信息。 $ ll da…

    2018-04-07
  • Linux基本指令

    hostname  完整主机名cat +文件路径  可查看文件信息cat /etc/shells  显示所有shelluname -r    查看内核版本ls cpu   查看cpu信息free命令  查看内存 后面加-k是显示的内存以kb为单位,-m(MB),-g(GB),-h显示易读单位lsblk  查看硬盘dmesg  查看计算机启动的一些相关信息dm…

    2018-07-22
  • 计算机原理与Linux基础

    计算机的组成及功能 1、其实计算机的组织分为内部设备和外部设备, 内部设备:         CPU:运算器、寄存器、缓存         存储器:内存,RAM(Random Access Memory)         控制器:控制器是整个计算机系统的控制中心,它指挥计算机各部分协调地工作,保证计算机按照预先规定的目标和步骤有条不紊地进行操作及处理。 外部…

    Linux笔记 2018-05-13
  • LINUX 进程管理

    #### hostname hostname [OPTION] [HOSTNAME] 默认选项:修改主机名为[HOSTNAME] 备注:临时生效如果想永久生效则需要修改文件/etc/sysconfig/network文件 选项 -I :取出本机上所有的非回环地址 示例 “` [root@zhangxiao network-scripts]#hos…

    Linux笔记 2018-05-06
  • 从小白到小白😂

    不知道写啥,用我写的脚本练习题凑凑数

    Linux笔记 2018-04-15
  • 手把手系列(四)教你用kickstart自动化安装CentOS系统

    KickStart是一种半自动化的安装方式。安装者完全可以只告诉安装程序从何处获取ks.cfg文件,然后去忙自己的事情。等安装完毕,安装程序会根据ks.cfg中设置的重启选项来重启系统,并结束安装。

    2018-05-24