制作属于自己的Linu发行版本

上传人:jin****ng 文档编号:199463670 上传时间:2023-04-11 格式:DOCX 页数:6 大小:20.74KB
收藏 版权申诉 举报 下载
制作属于自己的Linu发行版本_第1页
第1页 / 共6页
制作属于自己的Linu发行版本_第2页
第2页 / 共6页
制作属于自己的Linu发行版本_第3页
第3页 / 共6页
资源描述:

《制作属于自己的Linu发行版本》由会员分享,可在线阅读,更多相关《制作属于自己的Linu发行版本(6页珍藏版)》请在装配图网上搜索。

1、2022-01-3119:44【转】用Debian建设一个自己的Linux发行版(转)建设一个自己的Linux发行版是每个自由开源软件爱好者的一个幻想.这曾经是一件难度特别高的事情,能做一个Linux发行版的人也是凤毛麟角,自己能做一个Linux发行版曾经也是极其荣耀的事情.但是,本身提倡发挥自身潜力,提倡自己亲身实践精神的自由开源世界,是不会把大家都期盼的事情有意装扮成远离大众的冰雪美人,她会不断地改革自身的进展机制,让每个人都渐渐地参加到自己的进展中间来,从而也促进自身的进展.简而言之,现在,做一个Linux发行版并不是困难的事情.一做一个Linux发行版的基础问题.我想,要做一个Linu

2、x发行版,你首先要考虑的问题是:1为什么要一个Linux发行版?2是准备从无做起,还是在其他的Linux发行版的基础上进行修改?3做一个自己的Linux发行版的关键和难点是什么?4选择哪个现有的Linux发行版开头自己的工作.先来看第一个问题,为什么要一个Linux发行版?这个问题的答案很多,比较普遍的一种就是我就想做,没有理由,肯定要说理由的话,我就借用一句时髦的话JustforFun!,这就是很好的理由了.然后一个重要的理由是:我需要一个满足我自己的特别需要的Linux发行版,比如说:我正在学习Perl编程,我需要一个小型的,随时跟着我的perl编译系统,其他的东西都可以不要,那么我需要制

3、作一个支持USB启动的Linux发行版,上面只有基本系统加编辑器加Perl,我可以随身携带,只要有电脑我就可以随时开头我的学习.至于我为什么想做一个Linux发行版,缘由很简洁:我是一个老师!我觉得做一个符合教育规律,以教育相关软件为主的Linux发行版很有必要,再详细一点,我是一个地理老师,现在的新课程标准与时俱进,要求同学学习GIS学问,无论是必修模块还是选修模块都有要求我看不惯我们的地理教育者们一讲到GIS教育,就言必称Arcinfo和Mapinfo,仿佛那些即便是国内很富有的学术讨论机构都不舍得破费购买的软件是随处可拣一样.在在自由开源的软件世界里,有着极其丰富的3S(GIS,GPS,

4、RS)地理软件.就GIS软件而言,就有几十上百种之多,著名的如GrassQGis等,这些免费的软件虽然在功能上比不上商业软件,但是足以满足以理解基本GIS基本概念为目的的一般GIS教学.而且这些软件还有一些自己的优点和特长.再考虑到我们目前的学校电脑都是运行Window这一现实,我就想做一个自己的,以光盘形式启动和运行的,以GIS软件为主的,性能和运行速度都令人满足的Linux发行版.(注:类似的系统目前世界上已经有多个,包括联合国教科文组织的FreeDUC,即含有QGis,只不过还没有支持中文的)自己要做一个Linux发行版的第三个理由就是为名为利,有些人做一个发行版是为了赚钱和盈利,这并不

5、与自由软件以及GPL版权发生冲突,RedHat近来的盈利给很多的年轻人带来了新的幻想,都期盼自己或许能够成为下一代的比尔盖茨.此外一些人做了自己的发行版就在网络上供应免费下载,使用的人越多他就越高兴,他只收获自己所看重的善名和对自己技术的赞誉.总之,有很多的理由使我们需要建设一个自己的Linux发行版,尤其是工作在教育第一线的广阔老师!2如何开头做一个自己的Linux发行版然后我们要解决其次个问题,我做一个Linux发行版是选择从零做起还是在别人的Linux发行版的基础上,加以以自己的意愿而进行的修改呢?其实,我们所说的从零开头是相对而言.你从哪个零开头呢?是从自己编写一个OS开头?还是从自己

6、编译配置现有的Linux内核开头?我想我们是不行能从真正的零开头的,那也肯定不行能是一个人所能完成的工作,我们应当在前人的工作的基础上开头自己的工作就制作自己的Linux发行版而言,就是这种对前人工作的继承可以划分为这么两种状况:A只基于现有的Linux内核及其他源码做自己的Linux发行版这种状况其实就是基于LFS(LinuxfromSeratch)制作自己的Linux发行版.由于LFS是在采用源代码的基础上,从零开头建设自己的Linux发行版,因此,采纳这种方法制作自己的发行版最能使制作者深化了解Linux中各种软件之间的关系,深化了解Linux内部的一些运行机制但这种方式耗时长,难度相对

7、较大,适合对事情喜爱刨根问底的人士.基于LFS制作的Linux发行版看起来都是个人玩赏的作品,著名于大众的作品很少.B基于现有的其他Linux发行版制作自己的Linux发行版这种状况就是在现有的著名的Linux发行版中,选择自己中意的Linux发行版再依据自己的意愿进行剪裁,添加,加工,然后做成自己的Linux发行版.这种方式简洁快速,适合于一般用户或者急于制作出成品的用户.现在采纳这种方式制作的Linux发行版如同恒河沙数,已经难以统计,其中著名的作品不少,是否会有一两个成为下一代的OS霸主那也难说。为了快速简便地达到做一个自己的Linux发行版的目的,我们选择在已有的Linux发行版的基础

8、上加以改造以建立自己的发行版的方式。那么,我们选择哪个发行版作为我们的起点呢?回答这个问题之前,我们先来解决第三个问题。3做一个自己的Linux发行版的关键和难点是什么?做一个自己的Linux发行版的关键和难点在哪里呢?初入门者可能觉得难点在于如何启动一个自己的Linux系统,其实不然。我想定制一个自己的Linux发行版的关键就在于解决发行版之中的各种软件包之间的以来关系。自由开源软件既使用前人的源码,也对后人开放自己的源码,所以,自由开源软件总是相互使用各种不同的软件包,这一方面给软件的开发带来了极大的便利,另一方面也使各个软件包的之间的关系错综简单,常给软件的集成带来灾难性的后果。比如说,

9、你准备在你的发行版中安装软件A,B和C,而A的运行需要依靠包A1,A2和A3,B的运行需要依靠B1和B2,C的运行需要依靠Cl,为了安装软件A,B,C,你就必需安装Al,A2,A3,Bl,B2,C1,安装好了后,发觉A1的运行又要使用库All和A12,C1的运行需要使用库C11,等你费了九牛二虎之力找到All,Al2和Cll的源码来编译,安装之后,才发觉Al2和Cll是相互冲突的!你哭吧!所以,我认为做一个自己的Linux发行版的关键在于正确地解决好各个软件包之间的依靠关系。4选择哪个现有的Linux发行版开头自己的工作那么究竟选择哪个现有的Linux发行版开头自己的工作呢?我想这会司一个萝卜

10、和青菜的问题,你可以选择FC,你也可以选择Slackware,但是从我上面的叙述来看,明显我是倾向于选择基于Debian来开发定制自己的发行版的。我认为Debian的最大特长就在于其先进的,独特的软件包管理方式,通过世界各地的优秀的程序员的辛勤无私的工作,很好地解决了各种自由开源软件之间的依靠,冲突等关系,使Debian拥护可以采纳一种全部操作系统中最便利的方式安装软件,同时也给基于Debian开发定制自己的发行版带来了极大的便利性。当然,也有人可能会说,FreeBSD的软件包的管理方式也很便利和强大,为什么不选择FreeBSD呢?这是由于FreeBSD并不遵守GPL版权,其自己的FreeBS

11、D许可证并不允许基于FreeBSD开发共性化的发行版,所以我们只有望洋兴叹。现在我准备基于Debian开发定制我的发行版了,还能不能有更简便的开发之道呢?考虑到我的实际开发需求,我只需要开发一个用于教学用的演示系统,我最好做成一个LiveCD,即在光盘上运行的Linux定制系统,我准备基于Knoppix或Morphix系统来开发我的定制系统。Knoppix是一套基于Debian开发的著名的LiveCD系统,使用了一些独特的技术使得在它上面的再开发又比在Debian上面开发更简洁,而Morphix又是基于Knoppix开发的模块式的LiveCD,从它的名字看,Morphix的意思就是变形Linu

12、x,它是为定制共性化Linux而生的!它把定制Linux系统的简便性又推动了一步!但人们还是不满足,有人还在开发remaster,开发TR0M等,他们的目标在于:在一个图形界面下,点几下鼠标,新的定制的发行版就产生了!这一天可能不要多久就要来到!这是令人兴奋的消息还是令人恐怖的消息呢?至少我是感觉挺紧张的,我要快点写这篇文章,赶在那种软件产生之前完成这篇文章,否则的话,只要点几下鼠标就可以造出自己的发行版,谁还来看我的文章呢?Debian-Knoppix-Morphix,基于这三个发行版的定制开发越来越简洁,但在我的实际运用中,基于Morphix以及更简便的TROM工具的开发常常出错,而基于K

13、noppix的开发却很稳定,所以,我打算基于Knoppix开发一个中文版的GIS发行版。二详细的开发过程。以下是我的详细开发过程,当然是在参照各位前贤的文章基础上写的,但依据我自己的理解,并针对新的Knoppix版本做了一些变动。文章完全是在一台Windows机器上凭记忆所写,所以有些细节上的错误。1 预备工作:我想预备工作的第一步就是看一下你的电脑是否足够强大!最好一G内存,二G交换分区,十G以上硬盘!当然256M内存+1G交换分区也能工作,慢一些而已。硬盘空间尽可能大,我开头的时候大手大脚地进行定制,竟然搞到8G硬盘不够空间!当然,我下面写的过程是当心翼翼地使用硬盘空间,准时地删除和卸载不

14、用的空间,应当有3-4G硬盘空余就可以了。然后要安装cloop的相关软件。引入cloop我想是Knoppix的最大特点,我使用的是Debian系统,那么:#apt-getinstallcloop-utils就可以了。再然后就是获得最新版本的Knoppix了,当前的最新版本是3.7了,但好像还没有正式宣布,我们就使用3.6的版本吧,后面假设我下载来的是knoppix36.iso吧。刻不刻盘不影响后面的定制工作,我就不刻盘了。再就是建立工作名目,我在工作名目中建立了一个/wen的名目,其中又建立了old和new两个子名目,明显前者是存放knoppix36.iso的原有内容,而后者将存放经过我改造后

15、的内容。2 开头定制改造。先要挂载knoppix36.iso这个滚滚盘映像文件:#mount-oloop-tiso9660/root/knoppix36.iso/mnt/cdrom明显我下载的knoppix在root名目下而我把它挂载在/mnt/cdrom下,后面这两个参数都可以依据实际状况修改。现在你可以进入到/mnt/cdrom中去看一下knoppix中究竟有些什么东西了,有一个boot名目,明显这还启动有关,以后你要修改启动画面等,就要去修改这里面的东西了,我们现在临时不理睬这些。还有一个Knoppix名目,它下面有一些文件,其中一个KNOPPIX文件巨大达到近700M!这个就是我们要修

16、改的主体了!下面我们先把/mnt/cdrom下的全部内容拷贝到/wen/new下面,由于我们需要修改的只有KNOPPIX这一个文件,等下我们会删除的,但现在还有用:#cd/mnt/cdrom#cp-R*/wen/new/#umount/mnt/cdrom你现在甚至可以删除knoppix36.iso文件以节省硬盘空间了。下面我们要对/wen/new/KNOPPIX/KNOPPIX文件动手术了,这个文件巨达700M,还是使用cloop压缩的,所以我们首先要解压:#cd/wen/new/KNOPPIX/#extract_compressed_fsKNOPPIXtmp.iso将解压的结果以tmp.is

17、o的形式放在根名目下。留意这个解压过程极其漫长,我一般这时候烧开水,泡便利面,渐渐吃,打扫桌面,解压完了吗?No!早着呢!出去运动一下吧,等你把便利面消耗得差不多了,解压就基本完成了,看一下根名目,吓你一跳,tmp.iso竟然将近2G!现在肯定要删除文件/wen/new/KNOPPIX/KNOPPIX,由于我们要对tmp.iso进行改造以生成新的KNOPPIX文件,切记!再挂载tmp.iso并把全部内容拷贝到/wen/old/KNOPPIX下面,你应当相当熟识了:#mount-oloop-tiso9660/tmp.iso/mnt/cdrom#mkdir/wen/old/KNOPPIX#cd/m

18、nt/cdrom#cp-r*/wen/old/KNOPPIX#umount/mnt/cdrom为了节省硬盘,你现在连/tmp.iso也可以删除。再下面就要进入详细改造工作阶段了,这里主要是使用了chroot这个命令以及Debian系统便利的apt-get的安装、卸载软件,需要留意的事情有:为了使用网络,你需要在chroot环境下挂载proc,还要留意chroot环境下能够正确解析域名。后面这个问题我是这样解决的,再开一个console窗口,执行:#cp/etc/apt/sources.list/wen/old/KNOPPIX/etc/apt/sources.list#cp/etc/resolv

19、.conf/wen/old/KNOPPIX/etc/resolv.conf这样做的前提是你没有chroot之前你的网络是通畅的。还有一个解决方法是我先ping一下自己sources.list表中的apt源以获得IP,直接写入到chroot后的sources.list文件之中以省却DNS解析的麻烦。#chroot/wen/old/KNOPPIX/$mount-tproc/procproc现在你就进入到旧的KNOPPIX3.6之中了,你完全可以把它当作一个一般的Debian系统来对待,使用常用的命令来改造旧的系统:$apt-getremoveopenoffice.org$apt-getremove

20、kde-i18n-es,de,fr,it,nl(先删除几个我不常用的大的软件包,上面可以节省300-400M空间。你可以使用命令dpkg-query-l查看安装了哪些软件包,再依据自己的意愿进行删除)$apt-getinstallgrass$apt-getinstallqgis(安装了两个我需要的软件)简洁的改造工作完成,现在再做一点清理工作就可以退出了:$apt-getclean(删除刚下载的软件包,免得被包含到新的发行版中)$updatedb(更新软件数据库)$update-menus(更新菜单)$umountproc(切记!)下面就使用ctrl-d退出chroot环境,最终我们还要做两件

21、事情:一是将改造后的/wen/old/KNOPPIX重新压缩为KNOPPIX文件并写入/wen/new/KNOPPIX,二是/wen/new/做成一个光盘映像文件。这两步都要使用makeisofs命令,系统中没有的话要先自行安装。这两个命令都很长,我一般把它们写成脚本文件,以便利重复使用。#mkisofs-R-U-V-P-hide-rr-moved-cache-inodes-no-bak-pad/wen/old/KNOPPIX|nice-5create_compressed_fs-65536/wen/new/KNOPPIX/KNOPPIX留意以上要写在一行之内,这个压缩过程需要的时间和前面解压

22、的时间一样漫长再吃一包便利面吧!/wen/old名目不要删除,以后还可以在它的基础连续改造。制作光盘映像文件:(针对3.6版本而言,3.3版本有所差别)#mkisofs-pad-l-r-J-v-VWENPPIX-no-emul-boot-boot-load-size4-boot-info-table-bboot/isolinux/isolinux.bin-cboot/isolinux/boot.cat-hide-rr-moved-o/home/ftp/knoppix.iso/wen/new倒数其次个参数是指新生成的iso的位置,可自己调整。执行这个命令留意执行时的名目位置!虽然使用了肯定路径,好像这个命令也不能在其他名目执行。新的发行版就做好了,很简洁,但是要做好就难了,我们还有很多细节的工作要做:3 1修改启动画面等2修改启动脚本删除软件包以使自己的发行版尽量小,这可是费时费神的事情。4 自己改造的发行版通常运行比原版的慢,要进行优化。5 如何安装在硬盘和U盘。总之,做一个发行版,做好就难,维护就更难了。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!