当前位置: 首页 > wzjs >正文

创业 建网站云南网站开发公司介绍

创业 建网站,云南网站开发公司介绍,长沙网站seo推广公司哪家好,aspnet网站开发实例项目所有 deb 包文件都遵循特定的命名约定&#xff1a; <软件名称>_<主版本号>-<修订版本号>_<硬件架构>.deb 假设您要发布名为 mynano 的程序&#xff0c;版本 1.0&#xff0c;该程序是为 64 位处理器(AMD64)构建的。您的 deb 文件名将类似于 mynano_1.0-…

        所有 deb 包文件都遵循特定的命名约定:

<软件名称>_<主版本号>-<修订版本号>_<硬件架构>.deb

        假设您要发布名为 mynano 的程序,版本 1.0,该程序是为 64 位处理器(AMD64)构建的。您的 deb 文件名将类似于 mynano_1.0-0_amd64.deb

制作 deb 包

        现在,我们已准备好生成包。确保您的系统中安装了 dpkg-deb 工具(来自 dpkg 软件包,可通过sudo apt install dpkg 安装):稍后将使用dpkg-deb 生成最终deb包。

        (1) 创建工作目录 创建一个临时工作目录以将包放入其中。遵循我们之前看到的相同命名约定。例如:

mkdir mynano_1.0-1_amd64/

        (2) 创建内部结构 将程序文件放在目标系统上应安装的位置。假设您希望将可执行文件安装到:/usr/bin/

        首先创建目录:

mkdir -p mynano_1.0-1_amd64/usr/bin/

        mkdir命令的-p标志将创建嵌套目录,如果其中任意目录不存在则自动创建。然后将可执行文件复制到其中:

# 假设你开发的程序可执行文件为 
~/YourProjects/mynano/src/targets/release/mynanocp ~/YourProjects/mynano/src/targets/release/mynano  mynano_1.0-1_amd64/usr/bin/

        (3) 创建文件control 该文件位于DEBIAN目录中(注意目录名为大写字母)

先创建文件夹:DEBIAN

mkdir mynano_1.0-1_amd64/DEBIAN

        然后创建空文件:control

touch mynano_1.0-1_amd64/DEBIAN/control

        填写control文件内容:

Package: mynano
Version: 1.0
Architecture: amd64
Maintainer: linuxlibs <info@linuxlibs.com>
Description: 基于nano的自定义编辑器
Depends: nano (>= 5.0)

其中:

  • Package– 程序名称;
  • Version– 程序版本;
  • Architecture— 目标架构;
  • Maintainer– 包裹维护负责人的姓名和电子邮件地址;
  • Description– 程序的简要说明。
  • Depends- 本软件包依赖的其他软件包。

        该文件可能包含其他有用的字段,例如Depends指出deb包的依赖项列表。那么如果借助 apt 命令安装 deb包的时候,就会先安装上 nano>=5.0版本的软件包,再安装 mynano。

        (5) 最后一步:构建 deb 包 按如下方式调用dpkg-deb:

dpkg-deb --build --root-owner-group <package-dir># 在我们的示例中:dpkg-deb --build --root-owner-group <mynano_1.0-1_amd64>

        这里的 --root-owner-group 标志使所有 deb 包内容都归 root 用户所有,这是标准方法。如果没有这样的标志,所有文件和文件夹的属主都为您当前的用户,但考虑到 deb 软件包将安装到的系统中并不一定存在与你同名账号,所以使用--root-owner-group 更合理。

        上面的命令将在工作目录旁边生成一个.deb的文件,或者如果包内有错误或丢失,则打印错误。如果操作成功,就可以分发这个生成的 deb 包给他人了。

以上制作deb包的方式,还有哪些可改进的地方:

        以上并没有加入文件安装后的额外处理脚本,而实际的deb软件包,很多在安装前、安装后还要执行一些初始化服务配置脚本;或执行测试命令验证安装效果是否正常;安装后通过脚本启动后台服务。

        如何实现?

        deb的规范支持添加 preinst、postinst、prerm 和 postrm 这4个脚本。置于/DEBIAN/目录下。注意,这4个文件对于制作deb包来说,不是必须的,有需要的时候才添加。

        例如我们为mynano在mynano_1.0-1_amd64/DEBIAN/ 目录下添加4个文件:

preinst 文件内容为:

#!/bin/bash
echo "来自preinst的消息"

postinst 文件内容为:

#!/bin/bash
echo "一些适合在安装后执行的处理逻辑"

prerm 文件内容为:

#!/bin/bash
echo "一些适合在卸载软件前执行的处理逻辑"

postrm 文件内容为:

#!/bin/bash
echo "一些适合在卸载软件后执行的处理逻辑"

并设置文件权限为0555或0755,以避免报错:

dpkg-deb: 错误: 维护者的脚本 preinst 的权限位是 644 (必须 >=0555 且 小于等于0775)`。

重新制作安装包:

chmod 755 mynano_1.0-1_amd64/DEBIAN/{preinst,postinst,prerm,postrm}                           # cp -pr mynano_1.0-1_amd64 mynano_1.0-2_amd64 #修订版本从1变为2
# 确保 preinst 等文件已在DEBIAN/目录下。
dpkg-deb --build --root-owner-group mynano_1.0-2_amd64

得到新的修订版的mynano deb包文件:mynano_1.0-2_amd64.deb

下面分别介绍每个脚本文件的作用:

  • preinst 安装前做一些初始化工作,如目录创建,文件创建,配置文件初始化等。
  • postInst 安装后做一些服务设置的处理。
  • prerm 此脚本通常会停止与包关联的任何守护程序。它在删除与包关联的文件之前执行。
  • postrm 此脚本用于修改链接或相关文件,然后删除安装包对应的系统文件。

http://www.dtcms.com/wzjs/790302.html

相关文章:

  • 产品价格的网站建设网站怎么做才 吸引人
  • 西部网站邮箱登录wordpress免费别人无法访问
  • 杭州 电子商务网站建设安徽省建设安全质量协会网站
  • 福建漳州网站建设哪家便宜桂林百度网站建设
  • 凡科网站怎么做链接头像logo启动 wordpress 博客
  • 合肥网站建设培训中心广州无线电集团有限公司
  • 目前网站建设用哪种语言内蒙e登记官网最新
  • h5游戏网站wordpress调用侧边栏
  • 网站怎么做公司好看的模板图片
  • 住房和城乡建设部网站安全月网站插件开发
  • 手机网站模板cms郑州防控升级
  • 用源码建设网站抖音seo关键词优化
  • 网站关键词怎样修改网页模版之家
  • 如何建设手机版网站网站建设要什么软件
  • 安康做网站电话电子商务主要学什么就业方向及前景
  • 网站建设的公司实习做什么找关键词
  • 企业建站程序哪个好柯林建站程序
  • 网站 域名 授权服务器 分布式云南网站备案查询
  • 海拉尔网站建设sjteam企业管理咨询论文
  • 电子商务网站建设心得在百度上做网站推广怎么弄
  • wordpress post id搜索引擎seo外包
  • 做网站用python好吗wordpress可以用织梦模板吗
  • 成都网站制作软件番禺厂家关键词优化
  • 保定做公司网站的长沙购物网站建设
  • 做网站代理需要办什么执照成都设计公司怎么选
  • 餐饮企业网站开发背景qq关键词排名优化
  • 免费软件库合集软件资料网站网站建设管理情况自查报告
  • 汉中网站建设电话域名禁止网站相关
  • 网站建设ppt浙江专业网站建设商城报价
  • 月子会所网站建设方案网站与网页之间的区别是什么