<fieldset id='08t43'></fieldset>
<i id='08t43'></i>
  1. <acronym id='08t43'><em id='08t43'></em><td id='08t43'><div id='08t43'></div></td></acronym><address id='08t43'><big id='08t43'><big id='08t43'></big><legend id='08t43'></legend></big></address>
  2. <tr id='08t43'><strong id='08t43'></strong><small id='08t43'></small><button id='08t43'></button><li id='08t43'><noscript id='08t43'><big id='08t43'></big><dt id='08t43'></dt></noscript></li></tr><ol id='08t43'><table id='08t43'><blockquote id='08t43'><tbody id='08t43'></tbody></blockquote></table></ol><u id='08t43'></u><kbd id='08t43'><kbd id='08t43'></kbd></kbd>

    <dl id='08t43'></dl>

    1. <span id='08t43'></span>
      <ins id='08t43'></ins>

      <i id='08t43'><div id='08t43'><ins id='08t43'></ins></div></i>

          <code id='08t43'><strong id='08t43'></strong></code>
        1. 如何创建属于自己的GNU/Linux发行版

          • 时间:
          • 浏览:3
          • 来源:124软件资讯网

            作为建立gNewSense的一部门 ,我们导出了Builder工具  ,允许在Ubuntu Hardy的基础上建立新的GNU/Linux刊行版  。通过一个简朴的设置文件  ,你就能够选择刊行版的名称 ,版本号  ,口号以及你想要安装或者移除默认的软件包  。图像将会自动天生  。虽然这些剧本主要的目的是为了建立gNewSense ,可是它照旧一个不错值得使用的工具  。需要注重的是你可以不遵照下面的步骤使用gNewSense  ,由于你可以从网站的镜像下载到相关的镜像文件  。

            你需要至少60GB的硬盘空间  ,最好有一个很是快的网络毗连(由于你将要下载40GB的数据) 。同时你的镜像点(也可以在统一个系统中)也需要40GB左右的空间  。若是你会使用硬链接 ,就能够制止一些重复的下载  。这一些操作都将在Ubuntu Hardy(或者更高版本的)系统执行  。所有的下令都必须运行在Root权限下  。

            若是你有什么问题  ,可以发到我们的IRC中 。Builder这个工具还只是测试版软件 ,我已经良久没有从源码重新编译过该工具 ,由于有些代码已经修悔改了  。

            第一步:GPG Key

            软件库中许多最近版本的apt ,需要经由GPG署名的版本文件  ,这样可以保证刊行版的集成度 ,以是我们的第一步就是建立一个GPG Key  。

            gpg --gen-key

            这个下令就可以让你做到这些 。确保Key只有一个空缺的密码  。把这个Key的指纹信息记载下来  ,由于之后你将在设置文件中用到它  。

            第二步: Deb镜像(可选的)

            为了制止重复下载文件  ,我建议建立一个Ubuntu main和universe软件库的镜像点  。这样的话或许需要40GB的空间  。

            debmirror --verbose --progress --method=http --host=ie.archive.ubuntu.com --arch=i386 --source \
            --dist=hardy,hardy-security,hardy-updates,hardy-backports --section=main,main/debian-installer,universe \
            --ignore-release-gpg --root=ubuntu /the/target/directory

            你也可以建一个Apache服务器 ,这样你就能通过HTTP看到这个镜像点  。这个步骤是可选的  ,可是我强烈推荐各人制作一个当地的Ubuntu镜像点  。

            第三步: 软件包

            你需要安装一些软件包 ,使得Builder运行顺畅  。

            apt-get install reprepro debmirror build-essential apache2 subversion cdebootstrap debootstrap imagemagick
            apt-get install squashfs-tools netpbm syslinux bittornado fakeroot devscripts equivs sharutils mkisofs
            svn co http://svn.gnewsense.svnhopper.net/gnewsense/builder/trunk builder
            cd builder

            若是这内里还缺少某些软件包 ,请见告我 。

            第四步: 设置

            用文本编辑器 ,打开设置文件  。你主要体贴的设置有MIRROR ,RELEASE  ,DISTRONAME  ,DOMAIN  ,BASEDIR  ,和REPOAPT 。 若是另有其它的定制要求可以修改设置文件的其它设置部门  。

            MIRROR 指的是你在第二步中建立的镜像点 ,或者Ubuntu镜像点  ,它应该包罗宁静的软件包 。

            MIRRORDIST 指的是镜像点的刊行版本  ,通常是“Ubuntu“

            DISTRONAME 指的是你的刊行版名称  ,只能包罗字母和数字 。

            BASE_RELEASE 指的是你的版本号  。版本号应该是小写的  ,由于它将在路径泛起  。

            TAGLINE 泛起在开机启动和登录的屏幕中  。

            SIGNINGKEY 指的是第一步中你设置的GPG Key  ,不能包罗任何空格 。

            BASEDIR 指的是放置软件库、livecd、暂时文件的目录名称  ,REPODST 指的是当前文件系统下建设的镜像点位置($BASEDIR/刊行版名称的小写形式)  。

            REPOAPT 指的是编译剧本放置的路径 ,用来下载软件包  。我们假定在archive.DOMAIN和security.DOMAIN以及subdomains处都是类Ubuntu的安装方式 。

            RSYNC_DEST 指的是可以通过push-repo 或者push-cd来同步的软件库和livecd的位置  。

            LOGO_LETTER 指的是标志中的字母 。

            META_*_{ADD,REMOVE} 在你的默认的软件包建设之后  ,用来治理哪些软件包你想增添或者想把它从Ubuntu默认的软件包移除  。

            *_VERSION 指的是给软件包版本添加的号码  。每次你要重编译一个软件包的时间  ,你需要增添这些 。多数都是从1最先计  。

            第五步: 结构软件库

            ./gen-repo && ./do-update

            这一步需要一些时间  。当这个下令运行的时间  ,软件库有可能会纷歧致  。这就是为何在第七步中你只需要将改动放到镜像点中  。每次有新的版本(例如宁静库更新了)重新执行 do-update下令就可以了(若是需要的话 ,也只可以执行debmirror)  。

            若是你在64位的内核上运行32位的用户法式  ,安装linux32软件包  ,然后执行下令

            ./gen-repo && linux32 ./do-update

            第六步: 建立LiveCD

            ./gen-livecd

            建立好的镜像文件将放在 $LIVECDDIR/$DISTRONAME_L-livecd-$LIVECD_VERSION.iso

            ./gen-cdsource
            ./stage-cd

            这两个下令将建立一个源码包 ,并把这个ISO放置在 $REPODST/cdimage

            第七步:把你的软件库放到镜像点并公然

            现在可以在你的镜像点公然你的软件库(dists和pool)地址和LiveCD  ,将你的新刊行版向天下公然  。

            ./push-repo
            ./push-cd

            ? Brian Brazil 2006
            Minor edits by Karl Goetz