弱智 回复于:2003-05-16 02:11:39 |
版主现在可以休息了,谢谢,收! |
黑夜编码人 回复于:2003-05-16 13:47:36 |
谢谢,先收下了。
另外,现在可以到CNFUG的期刊上去看了: http://cnfug.kingisme.com/journal/1/05.html |
Zer4tul 回复于:2003-05-17 15:35:45 |
一张700MB的光盘装下2GB的文件系统…… |
weclasss 回复于:2003-05-17 20:12:32 |
[quote:7d0773f4b4="zyme"]FreeBSD光盘运行版的制作过程
zyme|zyme@yeah.net|QQ:710055|www.yeaday.com|2003-5-16 前言:本文在你初步掌握FreeBSD的基础上,一步一步教你如何制作光盘运行的FreeBSD系统。其中的过程并不绝对符合,只要你..........[/quote:7d0773f4b4] --------------------- 原创吗...修改抄袭吧 应该改为心得才对吧 ---------------------- http://phorum.study-area.org/viewtopic.php?t=11563&highlight=%A5%FA%BA%D0 发表于: 星期六 九月 07, 2002 8:00 pm 文章主题: [转贴] 建立在CD上运行的FreeBSD系统 -------------------------------------------------------------------------------- kidz@kkcity.com.tw (料理的层次不同啊!老头) 建立一套可以在CD上运行的FreeBSD系统 主要拿来架设NAT、Firewall系统,也可以 建立一套简单的X-Window使用者环境 Step 1 安装基本系统 /stand/sysinstall Configure -> Options 修改下列两项 Release Name => 4.6.2-RELEASE (或是想安装的版本) Install Root => /home/4.6.2-RELEASE (找个地方来摆系统) Distributions =>按照一般的你的习惯来安装FreeBSD系统 =>把基本的系统和X系统安装起来即可 (光碟或是FTP装起来吧!) Step 2 设定基本系统 # cp -R /stand /home/4.6.2-RELEASE # chroot /home/4.6.2-RELEASE 接下来根目录会切换至/home/4.6.2-RELEASE # mkdir -p CD-bsd # mkdir -p CD-bsd 这个目录是我们要放一些设定档案和开机档用的 设定一下/etc下面的一些档案为光碟开机作准备 /etc/rc.conf (至少设定个网路) hostname="xxx.xxx.xxx" ifconfig_xl0="................" defaultrouter="..............." moused_enable="YES" sendmail_enable="NONE" sshd_enable="YES" ## ## ## Firewall选项就看个人了 ## ## ## #firewall_enable="YES" #firewall_script="/etc/rc.firewall" #firewall_type="OPEN" #gateway_enable="YES" #natd_enable="YES" #natd_interface="xl0" ## ## ## PPPoE上网 ## ## 记得编辑/etc/ppp/ppp.conf ## ppp_enable="YES" ppp_mode="ddial" ppp_profile="ISP-Name" #ppp_nat="YES" ## NFS Client 最好还是开启吧! ## nfs_client_enable="YES" /etc/resolv.conf (把Domain和DNS设定好) domain xxx.xxx.xxx nameserver xxx.xxx.xxx.xxx /etc/rc 大概55行的位置,HOME和PATH环境变数设定之后的位置加入如下: /sbin/mount_mfs -s 30000 swap /tmp /sbin/mount_mfs -s 50000 swap /var /sbin/mount_mfs -s 20000 swap /root /sbin/mount_mfs -s 12000 -o union,noatime,rw swap /dev cd /dev && sh MAKEDEV vty12 pty0 tar zxf /CD-bsd/var.tgz -C / tar zxf /CD-bsd/root.tgz -C / 这个步骤是把swap挂入系统档案让系统/tmp /var /root /dev有读写的功能 大小可以自己定义 var.tgz和root.tgz在系统会完成的时候才制作 接下来放一个机器可以跑的XF86Config设定档案到/etc/X11下面 (跑X的时候使用) 假使拿到?他显示卡不同的硬体去跑的时候 因为root可以读写所以重新用xf86cfg -textmode设定好存在 /root/XF86Config就可以跑X了! (只是这样每次光碟开机都要重新设定就是了) # touch /etc/fstab 如果/etc/fstab里面有内容就删除内容让他置空 如果/etc/fstab没这个档案就用touch来产生一个空的 (注意! 一定要有这个档案,要不然光碟开机后会进不去系统) # rm -rf /dev/ttyv* /dev/ptyp* /dev/ttyp* /dev/vga 删除这给个dev,之前/etc/rc设定的每次开机都会重新建立新的出来 Step 3 安装设定基本软体 接下来开始安装想要塞进一张光碟下所取舍的系统软体 也是按照一般的安装软体的习惯来安装就可以了 1. ports 安装法 2. /stand/sysinstall 直接安装packages 3. # setenv PACKAGEROOT ftp.tw.freebsd.org # pkg_add -r package-name 基本系统加上基本X-Win大概是310MB左右 (不装X大概是180MB) 所以大概有接近400MB的空间是可以自己取舍来控制安装自己常用的 把中文字型都灌好,(细明体也塞进去),建立基本的中文环境 安装基本的上网工具Mozilla + IglooFTP + sylpheed + gaim + rxvt 再塞整个CJK-LaTeX进去(ghostscript + xpdf + dvipdfm-cjk)配vim-lite WM方面灌WindowMaker和Icewm (灌一堆WM的Dock...不过这些都很小) 这样下来大概550MB左右...............不知道还要塞什么! 最后检察一下/root下自己私人的设定档案 至少.cshrc的shell要设定好自己惯用的参数 # exit 跳出进行下个步骤 Step 4 制作开机影像档 做一个给光碟开机的kernel,至少加入以下设定 options ROOTDEVNAME=\"cd9660:acd0\" (防火墙请记得加入相关设定) acd0的地方请自己改成机器上的光碟开机那台的Device config CD-bsd ; cd ../../compile/CD-bsd ; make depend ; make 请注意.....不要打太顺make install到自己系统上去...这是给光碟开机用的 (因为我是打太顺了....) 再来请去偷FreeBSD的开机影像档 boot.flp (floppies/boot.flp) 把boot.flp放到/home/4.6.2-RELEASE/CD-bsd/下去 # vnconfig -c vn0 /home/4.6.2-RELEASE/CD-bsd/boot.flp # mount /dev/vn0 /mnt # rm /mnt/mfsroot.gz # cat /usr/src/sys/compile/CD-bsd/kernel | gzip -9 > /mnt/kernel.gz # cp /home/4.6.2-RELEASE/boot/boot0 /mnt/boot # cp /home/4.6.2-RELEASE/boot/loader.4th /mnt/boot # ee /mnt/loader.rc 删除第一行和第二行 # umount /mnt # vnconfig -u /dev/vn0 Step 5 建立光碟系统 接下来要开始剪裁系统了 # cd/home # mkdir -p /home/CD-bsd # ee tar-exclude (这个档案内容是那些目录或是档案不需要拷贝) usr/ports usr/src stand kernel.GENERIC # tar -X tar-exclude -cf - -C 4.6.2-RELEASE . | tar xpf - -C CD-bsd 这样会把4.6.2-RELEASE的内容除掉tar-exclude内所包含的名单 包含档案权限原封不动的搬到/home/CD-bsd 这个目录是我们才是最后要制作成embedded CD的地方 # cd /home/CD-bsd # tar zcf CD-bsd/var.tgz var # tar zcf CD-bsd/root.tgz root # rm -rf var/* ; rm -rf root/* Step 6 建立光碟影像档 # cd /home # mkisofs -l -r -L -b CD-bsd/boot.flp -o CD-bsd.iso CD-bsd 把CD-bsd.iso烧好大功告成............ 感想: ?实拿来架个NAT+firewall+DHCP变得很easy,只要事先设定好罢了 甚至喜欢要在上面运行apache+php+mySQL跑Samba也不是什么难事 建立一个可以上网又可以弄LaTeX的CD环境看起来好像不错........ 但是....拿来架Server毕竟不是很好的解决方案,log档关机就消失了 拿来打CJK,虽然说有很完整的环境但是系统打好文件存档也是个问题 到时候打好还要传到别的机器上去.......灌在光碟上好像很....无用 作Desktop环境只有简单的上网工具看的网页...打BB和看看FTP Knoppix Linux的玩家看到会笑死吧! 人家可是可是不只把KDE3塞进光碟 还建立了一套很完整的使用者系统............. 总之......制作这样的embedded感觉上很空虚........ 不过自己看爽就好了......而且可以改进的地方还很多 系统内还有很多用不到的可以删减的! /etc也可以改成可以修改来运作 最好是能够像Knoppix Linux一样X-Win和网路可以自己搞定....... 那就真的很方便了........... 如果有错误请多指教! -- ┌─────◆??????◆─────┐ ┐┌┐┐┌┐┌─┐┌┬┐┌┬┐┐ ┌ │ bbs.kkcity.com.tw │├┘┐├ ┘┐│ │ │ └┬┘ └──《From:61.59.151.7 》── ┘┘ ┘┘ ┘└─┘└┴┘ ┴ ┴ 逸晨 在 星期五 十一月 08, 2002 6:17 am 作了第 1 次修改 |
zyme 回复于:2003-05-17 22:52:36 |
哇,靠,有中文的,我可参考的是一个英文的文章呀,怎么都抄老外的,哈哈.... |
zyme 回复于:2003-05-17 23:01:23 |
他们的文章的确有趣,连说话的语气都蛮好玩的... |