在Linux环境将python脚本打deb包

前言

自己编写的python脚本代码,自己运行还好,让别人用的时候,不方便传输,也不方便运行,制作成deb包后完美解决,网上搜索了很多文章,都没有一次打包成功过,故总结这样一份文档教程。

我当前使用的系统:
uos专业版

打包需要的库

sudo apt-get install build-essential
sudo apt-get install debmake

制作debian配置文件目录

源码目录下,创建debian的配置文件目录。在程序源代码目录下有一个叫做 debian 的新的子目录。这个目录中存放着许多文件,我们将要修改这些文件来定制软件包行为。其中最重要的文件当属 control, changelog, copyright, 以及 rules, 所有的软件包都必须有这几个文件。

执行命令快速创建配置文件目录

debmake -e myemail@foxmail.com -p rekols-monitor -u 1.0.0 -f "my"  -n -x1

-e:邮件地址
-p:软件包名
-u:软件版本号
-f:作者全名
-n: 这个参数是核心,直接从源码生成配置文件
-x1:这个参数的默认值就是x1,这里是说明这个参数的作用,deb包的构建过程有很多钩子方法,x1只是包含一些项目信息和构建信息的版本,x0就只有构建信息,但是x0参数已经被弃用,x2、x3、x4你会发现生成文件很多,一般没有特殊情况,最简即可,即使用默认参数x1即可

deb包目录

MYDEB/
├── debian
│ ├── changelog
│ ├── compat
│ ├── control
│ ├── copyright
│ ├── README.Debian
│ ├── rules
│ ├── source
│ │ ├── format
│ │ └── local-options
│ └── watch
├── script
├── script1.py
├── script2.py
├── script3.py
└── script4.py

修改control文件

原始文件内容如下,第 1–7 行是源代码包的控制信息。第 9–13 行是二进制包的控制信息。
按照自己的需求可以修改描述信息、支持架构等等信息

Source: mydeb
Section: unknown
Priority: optional
Maintainer: my <mydeb@foxmail.com>
Build-Depends: debhelper (>=11~)
Standards-Version: 4.1.4
Homepage: <insert the upstream URL, if relevant>

Package: mydeb
Architecture: any
Multi-Arch: foreign
Depends: ${misc:Depends}, ${shlibs:Depends}
Description: auto-generated package by debmake
 This Debian binary package was auto-generated by the
 debmake(1) command provided by the debmake package.

PS.
详细的设置可以查看文末官方文档(4.1,control部分)

创建install文件

install文件的目的是,安装deb包的时候,能把对应的脚本文件和share文件安装到指定的目录
例如,假设某个二进制文件 src/bar没有被默认安装,则应让 install 呈现成这样:

script /usr/lib/mydeb
script1.py /usr/lib/mydeb
script2.py /usr/lib/mydeb
script3.py /usr/lib/mydeb
script4.py /usr/lib/mydeb

创建links文件

links文件的目的,对需要直接执行的脚本文件创建链接

/usr/lib/mydeb/script /usr/bin/mydeb

进行打包

debian目录下还有很多文件可以按照自己的需求进行定制,不过这里用不上,暂时不做修改示列,比如最重要的rules文件,直接决定打包的成功与否

打包可以直接执行以下命令进行打包:

sudo dpkg-buildpackage

完成后,会在上级目录生成mydeb_1.0.0_amd64.deb,自此,打包结束。

debian目录下文件说明

changelog:此文件用于记录软件包的版本和更新历史。每次对软件包进行更改时,都应更新此文件以包含新的版本号、日期、作者和更改描述。

compat:此文件指定了软件包的兼容性级别。它定义了软件包与Debian操作系统版本之间的兼容性要求。该文件中的数字表示Debian版本号,例如9表示Debian 9或更高版本。

control:此文件是软件包的控制文件,包含了软件包的元数据和依赖关系。它定义了软件包的名称、描述、维护者、依赖关系和其他相关信息。

copyright:此文件包含软件包的版权信息和许可证条款。它指定了软件包的版权所有者、许可证类型和许可证文本。

docs:此目录用于存放软件包的文档文件。这些文件可以是用户手册、安装指南、示例配置文件等。

install:此文件用于指定软件包的安装规则。它告诉dpkg工具在安装软件包时应该将哪些文件复制到系统的哪些位置。

rules:此文件包含了构建软件包的规则和指令。它指定了如何编译、打包和安装软件包。

links文件用于创建符号链接(symbolic links)。符号链接是一种特殊类型的文件,它指向另一个文件或目录。通过创建符号链接,可以在文件系统中引用其他位置的文件或目录,而不需要复制或移动它们。

source:此目录包含软件包的源代码。如果软件包是通过源代码构建的,那么源代码文件应该放在这个目录下。

preinst(pre-installation script)文件是Debian软件包中的一个脚本文件,用于在软件包安装之前执行一些预安装操作。


官方制作deb的方法

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Python的.rpm安装是一种用于在Linux操作系统中安装Python解释器和相关库的软件。.rpm文件是一种专门用于Red Hat基于rpm管理系统的Linux发行版的软件格式。 要安装Python.rpm,可以按照以下步骤行操作: 1. 首先,确保已经下载了所需的.rpm安装文件。可以从Python官方网站或其他来源获取。 2. 打开终端,并使用root或sudo权限登录系统。 3. 使用以下命令执行安装操作:sudo rpm -i package.rpm 其中"package.rpm"是要安装的.rpm文件的名称。 4. 在安装过程中,系统将显示安装度和确认信息。根据需要,可能需要输入root或sudo密码。 5. 安装完成后,可以使用以下命令验证Python是否已成功安装:python -V 或者 python3 -V 这将显示Python版本信息,确认Python是否已成功安装。 此外,还可以使用其他.rpm软件管理工具安装Python.rpm,例如yum、dnf等。这些工具可以自动解决依赖关系,并确保所需的库和依赖项也同时安装。 需要注意的是,.rpm安装适用于Red Hat系列的Linux发行版,如CentOS、Fedora等。对于其他Linux发行版,可能需要使用其他软件格式或方法行安装,如.deb格式和apt命令等。 总结起来,使用.rpm安装可以方便地在Linux上安装Python解释器和相关库。以上是关于如何使用.rpmPython安装的基本步骤和注意事项。 ### 回答2: RPM(Red Hat Package Manager)是一种在Linux中安装软件的格式,也是一种软件管理工具。Python自身并没有提供RPM,但是可以通过使用RPM管理工具来安装Python。 要安装Python的RPM,首先需要在网上或者通过其他渠道下载所需的Python的RPM文件。这个RPM文件通常以.rpm作为后缀名。接下来,打开终端,并使用以下命令行安装: sudo rpm -ivh 文件名.rpm 这里,"文件名"是你下载的Python的RPM文件名。执行这个命令将会以管理员权限安装该RPM。系统将自动解析和安装该RPM,并将Python及其相关组件安装到系统中。 在安装完成后,可以通过以下命令来验证Python安装是否成功: python --version 如果成功安装,终端将会显示Python的版本号。此时,你可以在终端中直接运行Python解释器,执行Python脚本。 需要提醒的是,使用RPM安装Python时要注意与系统版本的兼容性。不同版本的RPM适用于不同的操作系统版本,而且RPM中还含了Python的一些依赖项,如库文件、模块等。因此,在选择RPM时,请务必确保与系统版本和架构的匹配,以免出现不兼容的情况导致安装失败。 当然,也可以通过其他方式安装Python,如源码编译安装、使用管理工具等。每种安装方式都有其特点和适用范围,可以根据具体需求选择合适的方法。 ### 回答3: RPM(Red Hat Package Manager)是一种常用的Linux软件管理工具,可以用来安装、升级和删除软件。下面是关于使用Python安装RPM的基本步骤: 1. 首先,确保你已经安装了Python解释器。可以通过运行`python --version`命令来验证是否已安装Python,并查看其版本号。 2. 下载所需的RPM 。可以在官方软件仓库、第三方软件站点或其他可信来源找到所需的RPM。请确保选择与你的操作系统版本和架构兼容的RPM。 3. 使用`cd`命令入下载目录,然后使用`ls`命令查看已下载的RPM。 4. 运行以下命令使用Python安装RPM:`sudo rpm -i package_name.rpm`,其中`package_name.rpm`是你要安装的RPM的名称。 5. 系统会要求你输入管理员密码,以获得安装RPM所需的权限。输入密码后,按下Enter键。 6. 安装过程可能需要一些时间,取决于RPM的大小和系统配置。安装完成后,系统会显示安装成功的消息。 7. 要验证安装是否成功,可以使用`rpm -q package_name`命令查询已安装的软件,其中`package_name`是你要查询的软件的名称。 需要注意的是,如果需要安装的RPM依赖于其他软件,系统可能会提示你缺少依赖项。此时,你需要手动安装所有依赖项,然后再尝试安装RPM。可以使用`yum`命令来管理和解决软件依赖关系。 以上就是使用Python安装RPM的简单步骤。希望对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值