rpm环境安装dpkg包管理工具


索引:dpkg-scanpackages、dpkg、dpkg-query、dpkg-source、dpkg-scansource


在centos、redhat、麒麟服务器版本中想对deb包进行管理,那么就需要安装dpkg包管理工具

主要是解决一些内网环境的特定包的需求

本次采用是src.rpm包重新制作rpm包


使用 rpmbuild命令编译 SRPM 包经历了以下 3 个过程:

先把 SRPM 包解开,得到源码包;

对源码包进行编译,生成二进制文件;

把二进制文件重新打包生成 RPM 包。


本次实验环境是arm架构+kylin服务版本操作系统,环境如下:

本次制作rpm包过程中主要是使用yum-builddep、rpmbuild等工具,一般默认安装,未安装则需要提前下载

一、下载dpkg包

deb包dpkg管理工具主要是由dpkg和dpkg-perl两个包,因此此次只要重建这两个包

由于arm架构,因此需要下载noarch或者aarch64架构的src包

顺便给大家安利软件包下载平,上面包含了很多linux不同发行版本和不同架构的包,大家自行索取。

https://pkgs.org/

正式开始下载:

wget https://download-ib01.fedoraproject.org/pub/epel/8/Everything/SRPMS/Packages/d/dpkg-1.20.9-4.el8.src.rpm

二、安装dpkg包

## 1.安装解压src.rpm包

rpm -i dpkg-1.20.9-4.el8.src.rpm

安装完成会在/root/目录生成rpmbuild目录

rpmbuild目录主要有两个目录:

SOURCES
#从 SRPM 包中解压出来的源码包(*.tar.gz)保存位置。
SPECS
#参数配置表,检查依赖包的时缺少的包可以通过里面修改。

进入SPECS内,有一个包名+spec文件

spec文件是配置规范文件,是RPM软件包编译过程的核心,它说明了软件包如何被配置、打那些补丁、安装哪些文件、安装到哪里、安装过程需要哪些系统级别活动。

## 2.检查包的依赖环境

cd ./rpmbuild/SPECS
yum-builddep dpkg.spec

通过yum-builddep进行依赖检查,检查系统未满足的依赖性则需要进行安装,通过yum和rpm直接安装并直到满足所有的依赖关系。



从上图可知需要po4a软件版本未符合,则需要安装高版本的po4a,并且版本大于0.59,本次直接下载0.63版本

wget https://repo.almalinux.org/almalinux/8/PowerTools/aarch64/os/Packages/po4a-0.63-1.el8.noarch.rpm
rpm -ivh po4a-0.63-1.el8.noarch.rpm --force --nodeps
#由于还需要的其他版本,因此可以采用加"--force --nodeps"进行强制安装
rpm -qa |grep po4a
#查询是否安装成功

重新进行依赖性检查

yum-builddep dpkg.spec

可以看到本次系统自动进行依赖包检查和安装,则根据默认进行安装,本次安装了之前检查不符合的软件包

安装完成后,可以再次进行依赖性检查

## 3.重新打包成rpm包

rpmbuild -ba dpkg.spec

安装完成后查看重新编译好的rpm包

cd /root/rpmbuild/RPMS
#本次src.rpm重新打包后生成了aarch64、noarch两个目录,根据不通的包则有不同。
cd aarch64/ && ls -la
##里面有4个aarch64架构的的包,而且包名也是根据系统进行重新命令

cd aarch64/ && ls -la
##里面有2个noarch架构的包

**## 4.安装重新打包后的包

rpm -ivh **.rpm

rpm环境安装dpkg包管理工具的更多相关文章

  1. Mac上安装brew 包管理工具

    Mac 上的包管理工具对于开发者来说是一件非常方便的工具,能够有效的对包进行管理. 所以这篇博客就来简单的讲一下brew 的安装和一些基础命令. brew 全称叫做Homebrew . 1. 首先来说 ...

  2. Linux服务器中安装python包管理工具pip

    pip是python的包管理工具,python的强大之处除了在于语法的简练,还有就是对众多的库支持了. 1.下载pip包管理工具 链接地址:https://pypi.python.org/pypi/p ...

  3. Deepin安装 ruby 包管理工具 RVM(适用于 Debian 系列)

    1. 安装 GPG keys 先安装 gpg2 工具 sudo apt install gnupg2 再安装 keys gpg2 --recv-keys 409B6B1796C275462A17031 ...

  4. 安装python包管理工具pip

    安装步骤(必须已经安装过python) 1>curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py 2>python get-pip ...

  5. 安装Windows包管理工具Chocolatey

    1.开始菜单里面用PS的管理员模式打开,执行一下命令. Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object Syste ...

  6. python3.4学习笔记(八) Python第三方库安装与使用,包管理工具解惑

    python3.4学习笔记(八) Python第三方库安装与使用,包管理工具解惑 许多人在安装Python第三方库的时候, 经常会为一个问题困扰:到底应该下载什么格式的文件?当我们点开下载页时, 一般 ...

  7. 利用chocolate包管理工具安装helm

    在powershell中执行 1 安装choco包管理工具 Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object Sys ...

  8. NodeJS 中npm包管理工具

    NPM 使用介绍 NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种: 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用户从 ...

  9. node的包管理工具:yarn和npm

    arn是Facebook发布的一款依赖管理工具,它比npm更快.更高效. NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题. 一.yarn官方网站: 英文官网:ht ...

  10. 【前端】NodeJs包管理工具NPM

    NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS部署上的很多问题. 测试是否安装成功,出现版本提示表示安装成功. npm -v NPM常用命令 官方文档:https://www.npm ...

随机推荐

  1. 图-kruskal算法,prim算法

    要求无向图 最小生成树: 连通性,累加和最小 并查集 结构 K算法 从最小的边开始,加上有没有形成环,没有就加,加上有环就不要 难点:如何判断加上一条边,有没有形成环. P算法 从点的角度开始

  2. GitHub desktop常见问题及解决办法

    1.There are unresolved conflicts in the working directory. 问题出现:A台电脑push代码后,可能新建了分支,然后B电脑打开GitHub de ...

  3. HTTPS安全加固配置最佳实践指南

    转载自:https://www.bilibili.com/read/cv16067729?spm_id_from=333.999.0.0 0x02 HTTPS安全加固指南 描述: 当你的网站上了 HT ...

  4. flutter系列之:查询设备信息的利器:MediaQuery

    目录 简介 MediaQuery详解 MediaQuery的属性 MediaQuery的构造函数 MediaQuery的使用 总结 简介 移动的开发中,大家可能最头疼的就是不同设备的规格了,现在设备这 ...

  5. TWS耳机蓝牙建连过程_HCI版本

    TWS耳机信息:Enco Air2 手机信息:onePlus8  ColorOS V12.1 其他准备工作:手机进入开发者模式,打开本地日志开关.可参考上一篇文章 https://www.cnblog ...

  6. Java注解(2):实现自己的ORM

    搞过Java的码农都知道,在J2EE开发中一个(确切地说,应该是一类)很重要的框架,那就是ORM(Object Relational Mapping,对象关系映射).它把Java中的类和数据库中的表关 ...

  7. wampServer配置WWW根目录遇到的坑

    直接在官网下载之后开始安装,一切正常 打开使用,一切正常 设置WWW目录.坑了一波 按照的都是百度上的教程,设置httpd.conf 这里配置之后网页访问127.0.0.1 还是localhost都还 ...

  8. 使用react+redux实现弹出框案例

    redux 实现弹出框案例 实现效果,点击显示按钮出现弹出框,点击关闭按钮隐藏弹出框 新建弹出框组件 src/components/Modal.js, 在index.js中引入app组件,在app中去 ...

  9. grpc中的拦截器

    0.1.索引 https://waterflow.link/articles/1665853719750 当我们编写 HTTP 应用程序时,您可以使用 HTTP 中间件包装特定于路由的应用程序处理程序 ...

  10. 3.pygame快速入门-游戏循环及动画实现

    游戏循环的开始,意味着游戏的正式开始,游戏循环的作用如下 1.保证游戏不会直接退出 2.变化图像的位置--动画效果 3.检测用户交互--按键.鼠标等     游戏时钟 pyagame提供了一个pyga ...