﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-Thinking in XiaoQiang-随笔分类-linux</title><link>http://www.blogjava.net/uiiang/category/16756.html</link><description>世人皆有悲哀，只有你不明白</description><language>zh-cn</language><lastBuildDate>Wed, 28 Feb 2007 18:59:43 GMT</lastBuildDate><pubDate>Wed, 28 Feb 2007 18:59:43 GMT</pubDate><ttl>60</ttl><item><title>ubuntu是怎样练成的</title><link>http://www.blogjava.net/uiiang/archive/2006/10/31/78300.html</link><dc:creator>小强</dc:creator><author>小强</author><pubDate>Tue, 31 Oct 2006 07:58:00 GMT</pubDate><guid>http://www.blogjava.net/uiiang/archive/2006/10/31/78300.html</guid><wfw:comment>http://www.blogjava.net/uiiang/comments/78300.html</wfw:comment><comments>http://www.blogjava.net/uiiang/archive/2006/10/31/78300.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/uiiang/comments/commentRss/78300.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/uiiang/services/trackbacks/78300.html</trackback:ping><description><![CDATA[
		<p>
				<span class="tpc_content">转自:http://mailboxpublic.googlepages.com/ubuntu%E6%98%AF%E6%80%8E%E6%A0%B7%E7%BB%83%E6%88%90%E7%9A%84<br /><br />这篇文章在互联网上被广泛转载，但是很多都不完整，误导新手。同时有许多人根本不尊重作者的辛勤劳动，没有给原文署名。因此，我把它放到googlepages来，作为正式的文章。如果有商业用途，请联系本人：yulewang \at gmail \dot com<br /></span>
		</p>
		<p>
				<span class="tpc_content"> ［转载请保持原样，请勿擅自修改，以免误导新手］<br /></span>
				<span class="tpc_content">yulewang 翻译</span>
				<span class="tpc_content">整理 <br /><br />二十一世纪到了，每个人都强调自己的个性，于是一种叫做DIY的东西悄然兴起。<br />操作系统作为全人类智慧的结晶，自然DIY起来难度极大，因而DIY出一个操作系统成就感绝对比买宜家的东西的成就感大。<br />为了不至于从头开始编写一个操作系统，我们当然把采用现成的操作系统作为一个底线。<br />当然，我们可以通过LFS让我们爽到底，但是，能够做到LFS的人可真的是凤毛麟角。而且更重要的是LFS简直在挑战我的忍耐程度。<br />我的这篇文章，教大家如何DIY一个自己的ubuntu发行版。在非常节省时间的情况下，达到耍酷的目的。<br /><br />就好比LFS一样，我们需要一个创作基地。我们首先建立一个变量。建立这个变量的好处很明显，即使你不用~/diy_ubuntu这个目录，一样可以照着这个文章继续做下去。<br />$ export WORK=~/diy_ubuntu<br />$ mkdir -p $WORK<br /><br />然后我们把光盘镜像文件挂到/mnt<br />$ sudo mount -t iso9660 -o loop dapper-live-i386.iso /mnt<br />$ cd $WORK<br /><br />复制文件光盘文件<br />$ mkdir ubuntu-livecd<br />$ cp -a /mnt/. ubuntu-livecd<br />$ chmod -R u+w ubuntu-livecd<br />$ sudo umount /mnt<br /><br />由于光盘中包含了很多windows下面的自由软件，我们来把不必要的文件删除。当然你可以保留。<br />$ rm -rf $WORK/ubuntu-livecd/programs<br /><br />把光盘中的压缩文件挂起来，这个样子以后你可以在$WORK/old目录中看到一个完整的linux操作系统的目录。<br />$ mkdir $WORK/old<br />$ sudo mount -t squashfs -o loop,ro $WORK/ubuntu-livecd/casper/filesystem.squashfs $WORK/old<br /><br />我们建立一个2GB大小的文件系统,然后把这个文件当作一个设备文件格式化，结果系统给出了一个警告，别理会它，选择是就是。<br />$ sudo dd if=/dev/zero of=$WORK/ubuntu-fs.ext2 bs=1M count=2147<br />$ sudo mke2fs $WORK/ubuntu-fs.ext2<br /><br />然后我们把这个空文件系统挂起来。<br />$ mkdir $WORK/new<br />$ sudo mount -o loop $WORK/ubuntu-fs.ext2 $WORK/new<br /><br />复制linux操作系统的文件.由于我们事先得到的linux是压缩的，所以我们把它解压了。<br />$ sudo cp -a $WORK/old/. $WORK/new<br /><br />当然现在$WORK/old就没有用处了。废掉它<br />$ sudo umount $WORK/old<br /><br />我们首先进入刚才得到的那个操作系统<br />$ sudo cp /etc/resolv.conf $WORK/new/etc/<br />$ sudo mount -t proc -o bind /proc $WORK/new/proc<br />$ sudo chroot $WORK/new /bin/bash<br /><br />现在你就进入系统了，高喊linux for human beings，大炼ubuntu，想干什么就干什么。<br /># vi /etc/apt/sources.list #选择适合你的源<br /># apt-get update<br /># apt-get dist-upgrade<br /># apt-get install 你想装的软件<br /># apt-get clean<br />.... #更多的配置<br />最后离开你的那个操作系统<br /># exit<br /><br />$ sudo umount $WORK/new/proc<br />$ sudo rm $WORK/new/etc/resolv.conf<br />现在你已经回到了你的初始状态中<br /><br />把manifest重新整一遍<br />$ sudo chroot $WORK/new dpkg-query -W --showformat='${Package} ${Version}\n' &gt; $WORK/ubuntu-livecd/casper/filesystem.manifest<br /><br />然后做一下“磁盘清理”<br />$ sudo dd if=/dev/zero of=$WORK/new/dummyfile<br />$ sudo rm $WORK/new/dummyfile<br /><br />重新压缩系统<br />$ sudo rm $WORK/ubuntu-livecd/casper/filesystem.squashfs<br />$ cd $WORK/new<br />$ sudo mksquashfs . $WORK/ubuntu-livecd/casper/filesystem.squashfs<br /><br />你的改动都保存了。现在把$WORK/new废掉<br />$ cd $WORK<br />$ sudo umount $WORK/new<br /><br />把文件的md5重新算一下<br />$ cd $WORK/ubuntu-livecd<br />$ sudo find . -type f -print0 |xargs -0 md5sum |sudo tee md5sum.txt<br /><br />建立光盘镜像，命令很长，忍受着点。<br />$ cd $WORK<br />$ sudo mkisofs -o ubuntu-new.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -r -V "My Cool Ubuntu Live CD" -cache-inodes -J -l ubuntu-livecd<br />然后你就可以用iso把光盘烧了<br /><br />然后你就可以在别人前面耍酷了。最后，王子和公主过着幸福的生活</span>
		</p>
<img src ="http://www.blogjava.net/uiiang/aggbug/78300.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/uiiang/" target="_blank">小强</a> 2006-10-31 15:58 <a href="http://www.blogjava.net/uiiang/archive/2006/10/31/78300.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Ubuntu Live CD 个性化定制</title><link>http://www.blogjava.net/uiiang/archive/2006/10/31/78298.html</link><dc:creator>小强</dc:creator><author>小强</author><pubDate>Tue, 31 Oct 2006 07:48:00 GMT</pubDate><guid>http://www.blogjava.net/uiiang/archive/2006/10/31/78298.html</guid><wfw:comment>http://www.blogjava.net/uiiang/comments/78298.html</wfw:comment><comments>http://www.blogjava.net/uiiang/archive/2006/10/31/78298.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/uiiang/comments/commentRss/78298.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/uiiang/services/trackbacks/78298.html</trackback:ping><description><![CDATA[
		<span class="tpc_title">Ubuntu Live CD 个性化定制全程图解<br /></span>
		<br />
		<font color="#ff0000">
				<strong>转载,未测试</strong>
		</font>
		<br />
		<br />
		<span class="tpc_content">个性化定制最为明显的好处就在于能够真正适合自己的需要。想要个性化定制 Ubuntu 的 Live CD 吗？想要体验 DIY 的乐趣吗？本文将以图解的方式全程为你提供指导与帮助。<br /><br />选择工具<br /><br />“工预善其事，必先利其器”。选择一款合适的定制工具，对于普通用户来说尤其重要。这儿有两种 Ubuntu Live CD 的定制工具：UCK 和 Reconstructor。前者可以增删 Live CD 中的语言包和应用程序，后者能够提供从 GNOME 桌面到应用软件的多方面定制功能。本文选择 Reconstructor 作为 Ubuntu Live CD 的定制工具，读者朋友也可以自行尝试 UCK。<br /><br />前期准备<br /><br />在正式定制之前，应该做好这些方面的准备工作：制作或收集需要用到的定制资源，如主题、壁纸、模块等等；Ubuntu Live CD 的原始 ISO 映像（Reconstructor 支持 6.06 及 6.10）；从 Reconstructor 官方网站下载定制程序；安装 Reconstructor 的使用依赖，如 squashfs-tools、libbogl-dev、mkisofs 等（详见 readme.txt 文件）。<br /><br />定制过程<br /><br />执行程序<br /><br />tar xvzj reconstructor-2.0.tar.gz<br />cd reconstructor-2.0/<br />sudo python reconstructor.py<br /><br />Reconstructor 在启动时会检查使用依赖，并提示用户安装未完成的依赖。接着会进入欢迎页面。<br /><b></b><br /><img onclick="if(this.width&gt;=640) window.open('http://bbs.linuxost.org/attachment/Mon_0610/187_188_2d13f9c3ef18253.png');" src="http://bbs.linuxost.org/attachment/Mon_0610/187_188_2d13f9c3ef18253.png" onload="if(this.width&gt;'640')this.width='640';" border="0" /><br /><br /><br />创建工作目录 <br />Reconstructor 默认会将工作目录创建于 /home/username/reconstructor，另外分别创建 remaster、root、initrd 三个子目录。工作目录仅在首次使用时才有必要创建，如果是再次使用，则无需创建。因为我们是初次使用，所以勾选其中的三个选项。然后，在 Live CD ISO Filename 选择先前下载好的原始 Ubuntu Live CD ISO 映像文件。<br /><b></b><br /><img onclick="if(this.width&gt;=640) window.open('http://bbs.linuxost.org/attachment/Mon_0610/187_188_32f9abfb2cee7b0.png');" src="http://bbs.linuxost.org/attachment/Mon_0610/187_188_32f9abfb2cee7b0.png" onload="if(this.width&gt;'640')this.width='640';" border="0" /><br /><br /><br />定制引导屏幕 <br />引导屏幕这部分可以定制 Live CD Splash 图像、引导选项文字的颜色、以及 Usplash 图像。需要注意是，Splash 图像要求是 pcx 格式，而 Usplash 则是编译好的 so 文件（对于 Ubuntu 6.06，Reconstructor 支持直接生成）。设置后，点击“Apply”按钮以便生效。<br /><b></b><br /><img onclick="if(this.width&gt;=640) window.open('http://bbs.linuxost.org/attachment/Mon_0610/187_188_7dc574190416391.png');" src="http://bbs.linuxost.org/attachment/Mon_0610/187_188_7dc574190416391.png" onload="if(this.width&gt;'640')this.width='640';" border="0" /><br /><br /><br />GNOME 桌面的定制 <br />GNOME 桌面包括登录屏幕、桌面、主题三部分的定制。其中，在登录屏幕中可以设置 GDM 主题、Splash 屏幕、背景颜色；桌面部分能够定制壁纸和字体；在主题中可以选择 GNOME 桌面所用的主题及图标。对于这些定制，用户既可以选择系统自带的，也可以使用自己的。从 GNOME LOOK 上可以找到这方面的丰富资源。<br /><b></b><br /><img onclick="if(this.width&gt;=640) window.open('http://bbs.linuxost.org/attachment/Mon_0610/187_188_69b0536609bd702.png');" src="http://bbs.linuxost.org/attachment/Mon_0610/187_188_69b0536609bd702.png" onload="if(this.width&gt;'640')this.width='640';" border="0" /><br /><br /><br />定制 Apt 源 <br />通过定制 Apt 源，就能够直接在 Live CD 中使用这些扩展的源，以便安装需要的应用程序。在你需要使用的源前打勾选择即可。对于其他的源，可以输入到下面的文本框中。<br /><b></b><br /><img onclick="if(this.width&gt;=640) window.open('http://bbs.linuxost.org/attachment/Mon_0610/187_188_b09bb494d968a95.png');" src="http://bbs.linuxost.org/attachment/Mon_0610/187_188_b09bb494d968a95.png" onload="if(this.width&gt;'640')this.width='640';" border="0" /><br /><br /><br />优化启动及关机过程 <br />在启动部分，可以选择在系统启动时需要运行的守护进程，如 ppp、laptop-mode 等。同时，Reconstructor 也能够对关机过程进行优化。<br /><b></b><br /><img onclick="if(this.width&gt;=640) window.open('http://bbs.linuxost.org/attachment/Mon_0610/187_188_c54d90dc56f9772.png');" src="http://bbs.linuxost.org/attachment/Mon_0610/187_188_c54d90dc56f9772.png" onload="if(this.width&gt;'640')this.width='640';" border="0" /><br /><br /><br />设置用户及口令 <br />切换到 Live CD 选项页，对在 Live CD 中要用到的用户、口令及主机名进行设置。<br /><b></b><br /><img onclick="if(this.width&gt;=640) window.open('http://bbs.linuxost.org/attachment/Mon_0610/187_188_7457ebdca6c4f2e.png');" src="http://bbs.linuxost.org/attachment/Mon_0610/187_188_7457ebdca6c4f2e.png" onload="if(this.width&gt;'640')this.width='640';" border="0" /><br /><br /><br />定制应用程序 <br />Reconstructor 的模块功能可以让用户按需定制应用程序，如安装程序、删除程序等。普通用户可以使用 Reconstructor 提供的现有模块：包括图像处理软件、生产力软件、多媒体软件、网络软件、服务器软件、及其他软件等。如果现有模块不能满足你的要求，那么可以通过输入安装或删除命令来实现对于软件的定制。<br /><b></b><br /><img onclick="if(this.width&gt;=640) window.open('http://bbs.linuxost.org/attachment/Mon_0610/187_188_75461c901a6c7ea.png');" src="http://bbs.linuxost.org/attachment/Mon_0610/187_188_75461c901a6c7ea.png" onload="if(this.width&gt;'640')this.width='640';" border="0" /><br /><br /><br />构建选项 <br />注意以上每一个部分的定制都需要点击“Apply”按钮。现在按“Next”进入构建选项页。在此设置 Ubuntu Live CD ISO 文件的保存路径、名称、架构。如果所有的都没有问题，那么继续下一步吧。<br /><b></b><br /><img onclick="if(this.width&gt;=640) window.open('http://bbs.linuxost.org/attachment/Mon_0610/187_188_2cc2648e61d31fa.png');" src="http://bbs.linuxost.org/attachment/Mon_0610/187_188_2cc2648e61d31fa.png" onload="if(this.width&gt;'640')this.width='640';" border="0" /><br /><br /><br />定制结束 <br />此时，需耐心等候一阵，直到看到 Finished 页面。<br /><b></b><br /><img onclick="if(this.width&gt;=640) window.open('http://bbs.linuxost.org/attachment/Mon_0610/187_188_15d4c231cb96117.png');" src="http://bbs.linuxost.org/attachment/Mon_0610/187_188_15d4c231cb96117.png" onload="if(this.width&gt;'640')this.width='640';" border="0" /><br /><br /><br />最后测试<br /><br />在 Ubuntu Live CD 定制结束后，先不要忙着刻盘，在虚拟机中测试一下，如果确认没有问题，那么就烧录并与朋友分享吧</span>
<img src ="http://www.blogjava.net/uiiang/aggbug/78298.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/uiiang/" target="_blank">小强</a> 2006-10-31 15:48 <a href="http://www.blogjava.net/uiiang/archive/2006/10/31/78298.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>