Linux

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > Linux > Linux将python脚本打deb包

在Linux环境如何将python脚本打deb包

作者:小鹿先生~

为方便传输和使用Python脚本,可以将其制作成deb包。本文详细介绍了在uos系统下使用debian目录和相关文件来定制和构建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

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目录下文件说明

官方制作deb的方法

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文