转自: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. ScriptOJ-safeGet#99

    const safeGet = (data, path) => { if(!path) return undefined; const pathArr = path.split('.'); le ...

  2. python:a+=b 和a=a+b? 基础数据类型也不能乱用

    python:a+=b 不等于a=a+b? a+=b 调用的是__iadd__方法,但是a+b调用的是__add__方法.对于自定义的对象,我们通过覆盖两个方法来实现+=和+操作,但是基础数据类型呢? ...

  3. 向jsp中引入公共文件

    前沿,在网页开发中,总会存在某几个.js或者某几个.css是所有.jsp文件的公用文件,为了方便引用 我们把这些在公共的.js及.css文件放到一个.jsp文件中,只需要将这个引入所有公共.js及.c ...

  4. CentOS添加明细路由

    网络架构图   根据最近为客户设计的网络架构,简单的梳理一个网路架构图,当然实际上的网络架构要比这个架构图复杂的多,咱们这边只是用这个图作为一个简单的示例. 拓扑分析   我们要实现专线两端不同网段的 ...

  5. WPF简单的分页控件实现

    XAML代码(使用ItemsControl控件实现): <UserControl x:Class="SunCreate.Vipf.Client.UI.CityDoor.PageCont ...

  6. 优化版小程序canvas,增加失败逻辑,及完善文字

    wxml <view class="shareBox" style="backgound:{{isShow ? '#000' : '#fff'}}" wx ...

  7. Behavior Tree 用 Lua 实现一个最简行为树

    local function Traverse(node, ...) local t = node.type if t == SELECTOR then , #node do if Traverse( ...

  8. js内存空间的那点事

    由于js具有自动垃圾回收机制,导致接触js后一直没去关注js的内存分配及变量回收等原理,只是懵懂的了解用变量标记法(null)可以手动的去清除或是回收:是时候弥补这个大坑了... 垃圾回收两种方法 一 ...

  9. OkHttp 入门篇

    OkHttp是一个HTTP & HTTP2的客户端,能够用来进行Android 和 Java 开发. HTTP是现代应用的最基本的网络环境.让你的HTTP更加有效的工作能够让你的东西加载更快而 ...

  10. Dispatch Queue 之内存中常驻的几个结构

    _dispatch_main_q 也就是主要主队列,一定运行在主线程里. // 6618342 Contact the team that owns the Instrument DTrace pro ...