转自:http://www.linuxidc.com/Linux/2008-04/12297.htm

deb是Debian Linux的软件包格式。一般来说是需要通过编译源码然后制作deb包,今天由于工作需要,想将一些现有的文件打包成deb包,苦苦寻找和研究如何处理,终于在下午3点时分成功制作出一个包。并自己亲手实践以保证每个步骤和最终结果的正确性。详情如下:

我是在Ubuntu 7.10上操作的,欲将/usr/src/soft目录下的文件打包,解包时这些文件也释放到/usr/src/soft目录下。

首先建立一个工作目录,比如在用户lionel目录下建立work目录:

#cd /home/lionel
#mkdir work
#cd work

因为安装软件包的时候默认是将文件释放到根目录下,所以可以设定好它的路径,同时我们还需建立一个DEBIAN目录:

#mkdir -p usr/src
#cp -a /usr/src/soft usr/src
#mkdir DEBIAN

比较关键的一步,用如下的方法在DEBIAN目录下创建一个control文件,并加入以下内容,内容可自定义:

#cat >DEBIAN/control< Package: soft
Version: 1.0.1
Section: utils
Priority: optional
Architecture: i386
Depends:
Installed-Size: 512
Maintainer: Linuxidc@126l.com
Description: soft package
EOF

然后就可以使用dpkg命令构建deb包了:

#dpkg -b . /home/lionel/soft_1.0.1_i386.deb

生成的包在/home/lionel目录下。

从整个过程来看,control文件是比较重要的,因此需要保证它的正确性。至于这些元数据的具体含义,以及为什么需要这些数据,稍后会再认真看一下。并且请注意每条命令前都是“#”,需要使用root权限执行这些操作。

Ubuntu下将现有的文件打包成deb包的更多相关文章

  1. windows下如何将Python文件打包成.exe可执行文件

    在使用Python做开发的时候,时不时会给自己编写了一些小工具辅助自己的工作,但是由于开发依赖环境问题,多数只能在自己电脑上运行,拿到其它电脑后就没法运行了.这显得很不方便,不符合我们的初衷,那么有没 ...

  2. linux下将一系列.o文件打包成.a文件

    参考链接:https://www.cnblogs.com/joshtao/p/7380627.html

  3. 【spring boot】idea下springboot打包成jar包和war包,并且可以在外部tomcat下运行访问到(转)

    转自:https://www.cnblogs.com/sxdcgaq8080/p/7727249.html   接着上一章走呗:http://www.cnblogs.com/sxdcgaq8080/p ...

  4. 【spring boot】6.idea下springboot打包成jar包和war包,并且可以在外部tomcat下运行访问到

    接着上一章走呗:http://www.cnblogs.com/sxdcgaq8080/p/7712874.html 然后声明一点,下面打包的过程中,scope一直都是使用默认的范围 <!--用于 ...

  5. idea下springboot打包成jar包和war包,并且可以在外部tomcat下运行访问到

    接着上一章走呗:http://www.cnblogs.com/sxdcgaq8080/p/7712874.html 然后声明一点,下面打包的过程中,scope一直都是使用默认的范围 <!--用于 ...

  6. 关于springmvc下服务器文件打包成zip格式下载功能

    关于springmvc下服务器文件打包成zip格式下载功能 2016年09月21日 11:22:14 toxic_guantou 阅读数:5731更多 个人分类: 技术点存储   版权声明:本文为博主 ...

  7. Pycharm下将py文件打包成exe文件

    1. 在PyCharm下安装PyInstaller 1. 首先,打开自己要发布的工程   2. 点击底部的[Terminal]打开终端,中输入命令pip install pyinstaller后回车, ...

  8. PyQt(Python+Qt)学习随笔:windows下使用pyinstaller将PyQt文件打包成exe可执行文件

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 在<windows下使用pyinstaller将多个目录的Pyt ...

  9. windows下使用pyinstaller将多个目录的Python文件打包成exe可执行文件

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 一.引言 需要将一个工程涉及两个目录的模块文件打包成exe,打包环境如 ...

随机推荐

  1. Java的 volatile关键字的底层实现原理

    我们知道volatile关键字的作用是保证变量在多线程之间的可见性,它是java.util.concurrent包的核心,没有volatile就没有这么多的并发类给我们使用.本文详细解读一下volat ...

  2. Django 载入静态文件地址

    1,Django框架中有专门存放静态文件的目录. 项目中的CSS.图片.js都是静态文件 配置静态文件 在settings 文件中定义静态内容 2,这些静态文件,他们统一存放在项目目录,templat ...

  3. 腾讯云的基本配置(centos 7.1)及mysql的使用

    因为想在微信上开发些东西,所以租用了一个月的腾讯云. 推荐选择的镜像是centos7.1.这个系统的选择和本地操作系统基本没有关系. 首先要登录到云主机中,用户名是root,密码是当初自己设置的那一个 ...

  4. drf2 FBV和CBV

    FBV 基于函数的视图 CBV 基于类的视图 也就是说我们是用函数编写视图~还是类编写视图 urlpatterns = [ path('admin/', admin.site.urls), path( ...

  5. Docker集群管理工具 - Kubernetes 部署记录 (运维小结)

    一.  Kubernetes 介绍 Kubernetes是一个全新的基于容器技术的分布式架构领先方案, 它是Google在2014年6月开源的一个容器集群管理系统,使用Go语言开发,Kubernete ...

  6. 一个友盟BUG的思考和分析:Invalid update

    1.友盟错误信息 Invalid update: invalid number of rows . The number of rows contained ) must be equal to th ...

  7. create-react-app创建的项目npm run build之后静态文件找不到

    create-react-app创建的项目npm run build之后,运行build中的index.html,什么都没显示,打开浏览器的F12,发现了几个红色的报错,提示几个文件找不到. 查看生成 ...

  8. Alpha代码规范、冲刺任务与计划

    Alpha代码规范.冲刺任务与计划 团队名称: 云打印 作业要求: Alpha代码规范.冲刺任务与计划 作业目标:代码规范.冲刺任务与计划. 团队队员 队员学号 队员姓名 个人博客地址 备注 2216 ...

  9. cad.net DeepCloneObjects WasErased

    /// <summary> /// 克隆图元到块表记录 /// </summary> /// <param name="objId">id数组& ...

  10. 微信小程序基础

    前言 什么是微信小程序,它是一种轻量级的APP,它与常规App来说,无需下载安装即可使用,它嵌于微信App中,要使用微信小程序你只需要搜索一下微信小程序的名称就好,如近期的"Google的画 ...