首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 系统运维 >

构建自各儿的debian软件包仓库

2012-09-21 
构建自己的debian软件包仓库by沈东良 http://blog.csdn.net/shendldeb是Debian软件包格式,文件扩展名为.de

构建自己的debian软件包仓库

                                                                                                                                        by沈东良 http://blog.csdn.net/shendl

         deb是Debian软件包格式,文件扩展名为.deb,跟Debian的命名一样,deb也是因DebraMurdock(Debian创始人IanMurdock的前妻)而得名。

        Debian包是Unixar的标准归档,将包文件信息以及包内容,经过gzip和tar打包而成。

        处理这些包的经典程序是dpkg,经常是通过apt来运作。

       通过Alien工具,可以将deb包转换成其他形式的软件包。


       Debian操作系统发行版是非常流行的Linux操作系统发行版。Linux最流行的桌面操作系统发行版Ubuntu也属于Debian家族,也使用deb包安装和管理软件。

      Debian家族的Linux操作系统,都会使用Debian软件包仓库管理deb软件包。这样,用户就可以使用apt命令搜索和安装对应的软件包。


      有时,我们需要安装一些自己构建的deb包,或者找到了一些第三方的deb包。我们可以使用

dpkg-i XXX.deb

      命令直接安装deb软件包。但是很多deb软件包依赖于很多其他的deb软件包。手工使用dpkg命令安装deb包时,可能会遇到很多问题。

        而apt命令会自动解析deb包的依赖关系,能够自动安装所有需要的其他deb包。

       此时我们就需要构建自己的debian软件包仓库了!



       本文将要介绍的就是这样一种构建debian软件包仓库的方法。用这种方法构建的debian软件包仓库,可以被所有Debian家族的Linux操作系统使用。



1,创建一个目录,用于存放所有deb包。

2,把所有需要的deb包复制到这个目录下。

3,命令行进入这个目录,执行:

dpkg-scanpackages./ /dev/null | gzip - > ./Packages.gz

        这会生成Packages.gz这个压缩文件,其中包含了这个目录下所有deb包的元数据。

        Apt工具需要使用这个元数据文件来获得这个Debian软件包仓库中的所有deb包的信息。


        每次你添加deb包到这个目录中时,都需要执行上述命令,以更新deb包的元数据。


         现在,你已经有了自己的Debian软件包仓库了。

        接下来,需要让你的Linux操作系统能够访问这个Debian仓库。

        你可以把仓库放在NAS服务器上,让Linux操作系统mountNAS服务器后,通过本地文件系统路径访问它。

        也可以通过Apache等Web服务器,把Debian仓库所在目录通过http方式导出。

        也可以通过ftp软件导出Debian仓库所在目录。



         编辑你的Linux操作系统发行版的/etc/apt/sources.list文件:

加入如下一行:

debfile:/deb ./

         第二个字段是访问你的debian仓库的路径。 如果是本地目录,就是file:开头的路径。

如果是http目录,就是http:协议的路径。

如果是ftp目录,就是ftp:协议的路径。


        经过测试,上述方法制作的Debian软件包仓库可以被所有Debian家族的Linux操作系统发行版所使用,不受发行版和操作系统版本的限制!



Enjoyit!

                                                                                                                                                              

                                                                                                                                                                            










热点排行