当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 33 篇帖子 ]  前往页数 1, 2, 3  下一页
作者 内容
1 楼 
 文章标题 : [经验分享]定制ubuntu-livecd的iso
帖子发表于 : 2008-07-03 10:07 
头像

注册: 2007-10-28 21:35
帖子: 1169
送出感谢: 0 次
接收感谢: 2
最近看到论坛很多朋友抱怨: 每次重装之后,都要重复安装中文支持,配置系统等工作。如果能定制ubuntu的livecd,安装之前把这些工作做了,就可以省下不少时间了。 当然最彻底的方法就是自己做一个ubuntu的livecd,这有法可依但是要解决很多细节问题,不适合新手。

这可以通过定制ubuntu-livecd的iso来实现,为什么不选alternate,先看它们的区别:
ubuntu-8.04-alternate-i386.iso VS ubuntu-8.04-livecd-i386.iso
alternate里面是一大堆的按顺序排列的包,安装时可以选择desktop,server,然后根据选择安装不同的包。
livecd里面最大的文件是一个文件系统映像,即filesystem.squashfs,其实就是squashfs格式的压缩包。

下面以 ubuntu-8.04-desktop-i386.iso为例:

1。 取出iso里面的所有内容
代码:
sudo mkdir  oldiso   newiso
sudo mount  ubuntu-8.04-desktop-i386.iso  oldiso  -o  loop
sudo  cp  oldiso/*   newiso/     -rp
sudo  umount  oldiso 

这个时候,newiso里面就是原来iso的全部内容。

2。 解压filesystem.squashfs,它位于newiso/casper/filesystem.squashfs
代码:
sudo unsquashfs newiso/casper/filesystem.squashfs

耐心等待,解压出来是一个squashfs-root目录,大小约是原来的3倍左右,新安装的系统是不是差不多是这个大小呢?

3。开始定制系统
代码:
sudo cp /etc/resolv.conf   squashfs-root/etc   
sudo  chroot  squashfs-root     

默认的shell可能是sh,输入/bin/bash 就可以了, 这时候可以像在正常系统一样,用apt-get等命令,当然没有图形界面。
有些程序需要proc,所以这里先挂载上。
代码:
mount none  /proc   -t proc

代码:
 apt-get  update 
sudo apt-get  install  language-pack-gnome-zh  language-pack-zh   ttf-arphic-uming  ttf-wqy-zenhei  ## 安装中文支持,和中文字体

.......
还有用apt-get 删除不用的软件,例如oo,游戏等就不多说了,最后记得
代码:
apt-get clean     ##删除文件列表包
autoremove    ##删除旧版本包
rm   /etc/resolv.conf   
umount  /proc


搞定之后,按ctrl+d 退出系统!!!

4.生成安装软件列表
代码:
sudo chroot  squashfs-root  dpkg-query -W --showformat='${Package} ${Version}\n' | sudo tee newiso/casper/filesystem.manifest
sudo cp -v newiso/casper/filesystem.manifest{,-desktop}


4.5REMOVE定义不安装的软件,ubiquity就是安装程序。
代码:
REMOVE='ubiquity casper live-initramfs user-setup discover1 xresprobe os-prober libdebian-installer4'
for i in $REMOVE ; do  sudo sed -i "/${i}/d" image/casper/filesystem.manifest-desktop; done


5. 重新压缩映像。
删掉原来newiso/casper/filesystem.squashfs,还是先备份吧。。
代码:
sudo mksquashfs  squashfs-root   newiso/casper/filesystem.squashfs   ##等待一段时间


6. 编辑diskdefines,这里定义一些版本信息。
nano newiso/README.diskdefines
$ cat README.diskdefines
#define DISKNAME Ubuntu 8.04.1 "Hardy Heron" - Release i386
#define TYPE binary
#define TYPEbinary 1
#define ARCH i386
#define ARCHi386 1
#define DISKNUM 1
#define DISKNUM1 1
#define TOTALNUM 0
#define TOTALNUM0 1

7. 生成各个文件的md5值.
代码:
sudo -s
(cd newiso && find . -type f -print0 | xargs -0 md5sum > md5sum.txt)
exit


8. 重新制作iso
代码:
cd newiso
sudo mkisofs -r -V "my ubuntu" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o "../myubuntu-804-livecd-iso" .
cd ../                   ### 这才是最重要的


定制好的iso文件是:myubuntu-804-livecd-iso, 先用虚拟机器试试吧。。 kvm/qemu用以下命令:
代码:
sudo  kvm -cdrom  myubuntu-804-livecd-iso  -localtime  -m 300   ##300是分配的内存



我还写过一个帖子,把当前使用的ubuntu做成livecd/usb,上述步骤只是它的一个部分。从中可以看出制作基于ubuntu发行版的思路来。
http://forum.ubuntu.org.cn/viewtopic.ph ... highlight=

希望对朋友们有用,欢迎交流: zhongxin.huang@gmail.com


最后由 yaska 编辑于 2008-08-06 12:51,总共编辑了 12 次


_________________
评价: 7.69% daf3707Iaalm
 
页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-07-03 10:11 
头像

注册: 2007-09-29 3:09
帖子: 5773
送出感谢: 0 次
接收感谢: 3
似乎很久前见过了定制livecd的方法了...

好像官网上也给过方法...

现在人都懒得搜索了... :roll:


_________________
HUNT Unfortunately No Talent...


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2008-07-03 10:13 
头像

注册: 2007-04-06 10:24
帖子: 2487
地址: ~/Shanghai
送出感谢: 0 次
接收感谢: 0 次
:D


_________________
http://silenceisdefeat.com/~greco
代码:
''.join([chr(ord(c)-2) for c in 'O{"G/ockn"ku<"itgeq0ujkBiockn0eqo'])
echo -n "Z3JlY28uc2hpQGdtYWlsLmNvbQ==" | base64 -d


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2008-07-03 10:16 
头像

注册: 2007-10-28 21:35
帖子: 1169
送出感谢: 0 次
接收感谢: 2
HuntXu 写道:
似乎很久前见过了定制livecd的方法了...

好像官网上也给过方法...

现在人都懒得搜索了... :roll:


是啊。。 我就当总结一下吧,主要是看最近论坛这个话题蛮多。。


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2008-07-03 11:39 

注册: 2008-02-21 19:36
帖子: 61
送出感谢: 0 次
接收感谢: 0 次
学习,看是明白了,但不知做起来会怎么样,哈!


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2008-07-03 12:00 
头像

注册: 2007-10-28 21:35
帖子: 1169
送出感谢: 0 次
接收感谢: 2
tlze 写道:
学习,看是明白了,但不知做起来会怎么样,哈!


要交作业的。 这个作业比较简单。。呵呵


页首
 用户资料  
 
7 楼 
 文章标题 :
帖子发表于 : 2008-07-03 21:13 
头像

注册: 2007-10-28 21:35
帖子: 1169
送出感谢: 0 次
接收感谢: 2
nobody try??


页首
 用户资料  
 
8 楼 
 文章标题 :
帖子发表于 : 2008-07-03 21:26 
头像

注册: 2007-05-06 2:46
帖子: 15634
送出感谢: 0 次
接收感谢: 2
总结的好

是要定制定制


页首
 用户资料  
 
9 楼 
 文章标题 :
帖子发表于 : 2008-07-03 21:50 
头像

注册: 2006-09-19 18:16
帖子: 3711
送出感谢: 0 次
接收感谢: 3
支持一下!虽然更感兴趣 把当前使用的ubuntu做成livecd/usb


_________________
Ubuntu 系统备份、恢复、克隆、批量部署、制作 live 系统


页首
 用户资料  
 
10 楼 
 文章标题 :
帖子发表于 : 2008-07-03 21:54 
头像

注册: 2007-05-08 16:26
帖子: 2058
地址: 火星内核某分子内某原子核内
系统: arch
送出感谢: 20
接收感谢: 6
太强大了!!


_________________
笔记本 :
F208S : gentoo
A460P i3G D6 : UBUNTU + WIN7
UN43D1 : UBUNTU + WIN7
1000人超级QQ群 LINUX + WIN : 31465544 或 18210387


页首
 用户资料  
 
11 楼 
 文章标题 :
帖子发表于 : 2008-07-31 4:01 
头像

注册: 2007-08-30 5:39
帖子: 1670
送出感谢: 0 次
接收感谢: 0 次
楼主,强,学习了 。

楼主,能不能把我现在用的ubuntu打包成Live CD?


_________________
深度,值得深入!
http://bbs.deepin.org/?u=348684

最新的综艺魔法相册
http://www.77studio.net/?fromuid=344


页首
 用户资料  
 
12 楼 
 文章标题 :
帖子发表于 : 2008-08-06 12:31 
头像

注册: 2008-01-04 13:00
帖子: 94
送出感谢: 0 次
接收感谢: 0 次
前两天menu.lst出错,进不去了,用了下载的live CD 改了menu.lst,可我的是ATI显卡,live CD里没驱动,启动起来是花屏的,看着很难受,当时就想能不能改下,把ATI驱动和一些更新做进去,现在看来,可以把自己的系统做成Live CD了。

谢谢楼主~~


_________________
从来白纸好写字!!!

_________________________________
DELL VOSTRO 1000

OS Ubuntu 8.04


页首
 用户资料  
 
13 楼 
 文章标题 : Re: [经验分享]定制ubuntu-livecd的iso
帖子发表于 : 2009-10-09 19:27 

注册: 2009-10-09 19:22
帖子: 2
送出感谢: 0 次
接收感谢: 0 次
照LZ的步骤作了一遍,在拿虚拟测试的时候,进度条走了一下,然后就进入initramfs的界面了,并没有进入图形界面。
我以为是filesystem.squashfs的问题,我随后又直接用了UBUNTU光盘中的filesystem.squashfs来生成iso
sudo mkisofs -r -V "my ubuntu" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o "../myubuntu-804-livecd-iso" .
对ISO中间的文件直接重新作了一遍ISO,结果还是同样的问题,还是进入busybox


请问怎么解决?谢谢!


页首
 用户资料  
 
14 楼 
 文章标题 : Re: [经验分享]定制ubuntu-livecd的iso
帖子发表于 : 2010-02-12 7:21 

注册: 2008-09-21 22:28
帖子: 41
送出感谢: 0 次
接收感谢: 0 次
lz 遇到以下问题 怎么办?
我是想安装在移动硬盘里面的,因为我这个破电脑硬盘小,解压不下。

cp: 无法保留“newiso/pool/main/u/ubiquity/oem-config-gtk_2.0.8_all.deb”的所有者: 操作不允许
cp: 无法保留“newiso/pool/main/u/ubiquity”的所有者: 操作不允许
cp: 无法保留“newiso/pool/main/u”的所有者: 操作不允许
cp: 无法保留“newiso/pool/main”的所有者: 操作不允许
cp: 无法保留“newiso/pool/restricted/b/bcmwl/bcmwl-kernel-source_5.10.91.9+bdcom-0ubuntu4_i386.deb”的所有者: 操作不允许
cp: 无法保留“newiso/pool/restricted/b/bcmwl”的所有者: 操作不允许
cp: 无法保留“newiso/pool/restricted/b”的所有者: 操作不允许
cp: 无法保留“newiso/pool/restricted/s/sl-modem/sl-modem-daemon_2.9.11~20080817-3ubuntu3_i386.deb”的所有者: 操作不允许
cp: 无法保留“newiso/pool/restricted/s/sl-modem”的所有者: 操作不允许
cp: 无法保留“newiso/pool/restricted/s”的所有者: 操作不允许
cp: 无法保留“newiso/pool/restricted”的所有者: 操作不允许
cp: 无法保留“newiso/pool”的所有者: 操作不允许
cp: 无法保留“newiso/preseed/cli.seed”的所有者: 操作不允许
cp: 无法保留“newiso/preseed/ltsp.seed”的所有者: 操作不允许
cp: 无法保留“newiso/preseed/ubuntu.seed”的所有者: 操作不允许
cp: 无法保留“newiso/preseed”的所有者: 操作不允许
cp: 无法保留“newiso/README.diskdefines”的所有者: 操作不允许
cp: 无法创建符号链接 “newiso/ubuntu”: 操作不允许
cp: 无法保留“newiso/wubi.exe”的所有者: 操作不允许


页首
 用户资料  
 
15 楼 
 文章标题 : Re: [经验分享]定制ubuntu-livecd的iso
帖子发表于 : 2010-02-12 9:11 

注册: 2008-06-25 11:28
帖子: 196
送出感谢: 0 次
接收感谢: 0 次
收下了,好文章。


_________________
山不转,水转,山不移,我移。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 33 篇帖子 ]  前往页数 1, 2, 3  下一页

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译