升级 lfslivecd-x86-6.3-r2160
时间:2009-08-29
来源:互联网
需要安装的包:
cdrtools
zisofs-tools
环境变量:
本例中 $WORK=/mnt/lfslivecd
需要的脚本:
$WORK/openlivecd
$WORK/closelivecd
$WORK/mklfslivecd
具体如下
$WORK/openlivecd
$WORK/closelivecd
$WORK/mklfslivecd
下面开始具体工作
1. mount ISO
2. 复制源 ISO 内容
如果 root.ext2 有 1.6G 左右,那么:
如果 root.ext2 有 400M 左右,那么:
3. 更新内容
3.1. lfs packages
下载 6.5 所有 package, 放入 $WORK/iso/lfs-sources/
3.2. 6.5 LFS BOOK
下载 LFS-BOOK-6.5-HTML, LFS-BOOK-6.5-XML 解压到 $WORK/root/usr/share/
删除原 6.3 的 HTML 和 XML
3.3. jhalfs-2.3.2
下载 jhalfs-2.3.2 解压到 $WORK/root/home/jhalfs/
删除原 /$WORK/root/home/jhalfs/jhalfs-2.3.1
3.4. 其它
复制一份 kernel-config 及 fstab 到 $WORK/root/home/jhalfs/
(需要一份完备的 kernel-config, 好让 jhalfs 无缝地运行)
准备一份 jhalfs 的 configuration 到 $WORK/root/home/jhalfs/jhalfs-2.3.2/configuration
(configuration 内容见附录)
4. 制作 ISO
5. 结束
附录A. 如果需要 opensshd
附录B. 关于 /media/cdrom/root.ext2 的大小
如果 kernel
那么 root.ext2 就是 1.6G, 反之就是 400M, 需要先解压
附录C. $WORK/root/home/jhalfs/jhalfs-2.3.2/configuration
cdrtools
zisofs-tools
环境变量:
代码:
export WORK=xxxx
需要的脚本:
$WORK/openlivecd
$WORK/closelivecd
$WORK/mklfslivecd
具体如下
$WORK/openlivecd
PHP 代码:
#!/bin/sh
export WORK=/mnt/lfslivecd
cd $WORK
# remount
mount -o loop $WORK/root.ext2 $WORK/root
mkdir $WORK/root/build
mount --bind $WORK/build $WORK/root/build
mount -t proc proc $WORK/root/proc
mount -t sysfs sysfs $WORK/root/sys
mount -t devpts devpts $WORK/root/dev/pts
mount -t tmpfs tmpfs $WORK/root/dev/shm
export WORK=/mnt/lfslivecd
cd $WORK
# remount
mount -o loop $WORK/root.ext2 $WORK/root
mkdir $WORK/root/build
mount --bind $WORK/build $WORK/root/build
mount -t proc proc $WORK/root/proc
mount -t sysfs sysfs $WORK/root/sys
mount -t devpts devpts $WORK/root/dev/pts
mount -t tmpfs tmpfs $WORK/root/dev/shm
PHP 代码:
#!/bin/sh
export WORK=/mnt/lfslivecd
cd $WORK
#umount
umount $WORK/root/dev/shm
umount $WORK/root/dev/pts
umount $WORK/root/sys
umount $WORK/root/proc
umount $WORK/root/build
rmdir $WORK/root/build
#remove history
rm $WORK/root/root/.bash_history
rm $WORK/root/root/.viminfo
#umount
umount $WORK/root
export WORK=/mnt/lfslivecd
cd $WORK
#umount
umount $WORK/root/dev/shm
umount $WORK/root/dev/pts
umount $WORK/root/sys
umount $WORK/root/proc
umount $WORK/root/build
rmdir $WORK/root/build
#remove history
rm $WORK/root/root/.bash_history
rm $WORK/root/root/.viminfo
#umount
umount $WORK/root
PHP 代码:
#!/bin/sh
export WORK=/mnt/lfslivecd
cd $WORK
# umount
./closelivecd
# compress
mkzftree -v -F $WORK/root.ext2 iso/root.ext2
# burn cd
cd $WORK/iso
mkisofs -z -R -l --allow-leading-dots -D -o
../lfslivecd-x86-6.3-r2160-custom.iso -b boot/isolinux/isolinux.bin
-c boot/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table
-V "lfslivecd-x86-6.3-r2160" ./
# transfer
cd $WORK
ftp 192.168.101.1
# remount
./openlivecd
export WORK=/mnt/lfslivecd
cd $WORK
# umount
./closelivecd
# compress
mkzftree -v -F $WORK/root.ext2 iso/root.ext2
# burn cd
cd $WORK/iso
mkisofs -z -R -l --allow-leading-dots -D -o
../lfslivecd-x86-6.3-r2160-custom.iso -b boot/isolinux/isolinux.bin
-c boot/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table
-V "lfslivecd-x86-6.3-r2160" ./
# transfer
cd $WORK
ftp 192.168.101.1
# remount
./openlivecd
下面开始具体工作
1. mount ISO
代码:
root[ ~ ]# mount /dev/cdrom /media/cdrom/ mount: block device /dev/hda is write-protected, mounting read-only root[ ~ ]# ll /media/cdrom/ total 383881 -rw-r--r-- 1 root root 32701 Dec 29 2007 README.html drwxr-xr-x 3 root root 2048 Dec 29 2007 boot drwxr-xr-x 2 root root 4096 Dec 29 2007 drivers drwxr-xr-x 2 root root 14336 Dec 29 2007 lfs-sources -rw-r--r-- 1 root root 1610612736 Dec 29 2007 root.ext2 root[ ~ ]#
代码:
mkdir $WORK/iso -p mkdir $WORK/root cp /media/cdrom/* $WORK/iso/ -a
代码:
mv $WORK/iso/root.ext2 $WORK/
代码:
mkzftree -u -F $WORK/iso/root.ext2 $WORK/root.ext2
代码:
cd $WORK ./openlivecd
代码:
rm $WORK/iso/lfs-sources/*
3.2. 6.5 LFS BOOK
下载 LFS-BOOK-6.5-HTML, LFS-BOOK-6.5-XML 解压到 $WORK/root/usr/share/
删除原 6.3 的 HTML 和 XML
3.3. jhalfs-2.3.2
下载 jhalfs-2.3.2 解压到 $WORK/root/home/jhalfs/
删除原 /$WORK/root/home/jhalfs/jhalfs-2.3.1
3.4. 其它
复制一份 kernel-config 及 fstab 到 $WORK/root/home/jhalfs/
(需要一份完备的 kernel-config, 好让 jhalfs 无缝地运行)
准备一份 jhalfs 的 configuration 到 $WORK/root/home/jhalfs/jhalfs-2.3.2/configuration
(configuration 内容见附录)
代码:
root[ /mnt/lfslivecd ]# ll $WORK/root/home/jhalfs total 52 -rw-r--r-- 1 101 101 518 Aug 27 07:57 fstab drwxr-xr-x 13 101 101 4096 Aug 27 11:21 jhalfs-2.3.2 -rw-r--r-- 1 101 101 44458 Aug 26 01:10 kernel-config root[ /mnt/lfslivecd ]#
代码:
cd $WORK ./mklfslivecd
代码:
cd $WORK ./closelivecd
附录A. 如果需要 opensshd
代码:
touch $WORK/root/.autosshd chroot $WORK/root passwd
如果 kernel
代码:
File systems ---> CD-ROM/DVD Filesystems ---> [*] Transparent decompression extension
附录C. $WORK/root/home/jhalfs/jhalfs-2.3.2/configuration
代码:
# # Automatically generated configuration: don't edit # use make menuconfig or make config to make changes # # # --- BOOK Settings # BOOK_LFS=y # BOOK_CLFS is not set # BOOK_CLFS2 is not set # BOOK_CLFS3 is not set # BOOK_BLFS is not set PROGNAME="lfs" RUN_ME="./jhalfs run" # relSVN is not set WORKING_COPY=y # BRANCH is not set BRANCH_ID="" BOOK="/usr/share/LFS-BOOK-6.5-XML" # ARCH_X86 is not set # ARCH_MIPS is not set # ARCH_PPC is not set # ARCH_SPARC is not set # ARCH_ALPHA is not set # ARCH_ARM is not set # ARCH_HPPA is not set # PLATFORM_GENERIC is not set # PLATFORM_WRT is not set # DATA_32 is not set # DATA_64 is not set # DATA_MULTI is not set # PROC_i486 is not set # PROC_i586 is not set # PROC_i686 is not set # PROC_mipsel is not set # PROC_mips is not set # PROC_unknown is not set # PROC_hppa1 is not set # PROC_hppa2 is not set # PROC_EV5 is not set # PROC_EV56 is not set # PROC_PCA56 is not set # PROC_PCA57 is not set # PROC_EV6 is not set # PROC_EV67 is not set # PROC_EV68 is not set # PROC_ARM is not set # PROC_ARM5L is not set # PROC_ARM5B is not set # PROC_ULTRA1 is not set # PROC_ULTRA2 is not set # PROC_ULTRA3 is not set # ABI_32 is not set # ABI_N32 is not set # ABI_64 is not set TARGET="" TARGET32="" PLATFORM="GENERIC" SPARC64_PROC="none" ARCH="" MIPS_LEVEL="" ABI="" ENDIAN="" # BUILD_CHROOT is not set # BUILD_BOOT is not set METHOD="" BOOT_CONFIG="" # GRSECURITY_HOST is not set # LIB_GLIBC is not set # LIB_UCLIBC is not set MODEL="" # KERNEL_26 is not set # KERNEL_24 is not set KERNEL="" SSP=",ssp," ASLR=",aslr," PAX=",pax," HARDENED_TMP=",hardened_tmp," WARNINGS=",warnings," MISC=",misc," BLOWFISH=",blowfish," # CUSTOM_TOOLS is not set # BLFS_TOOL is not set # BLFS_SVN is not set # BLFS_BRANCH is not set BLFS_BRANCH_ID="" # DEP_LIBXML is not set # DEP_LIBXSLT is not set # DEP_TIDY is not set # DEP_DBXML is not set # DEP_UNZIP is not set # DEP_LYNX is not set # DEP_SUDO is not set # DEP_WGET is not set # DEP_GPM is not set # DEP_SVN is not set BLFS_ROOT="" BLFS_XML="" TRACKING_DIR="" # # --- General Settings # # CONFIG_USER is not set DEF_USER="lfs" SET_USER="" # CONFIG_GROUP is not set SET_GROUP="" # CONFIG_HOME is not set SET_HOME="" LUSER="lfs" LGROUP="lfs" LHOME="/home" BUILDDIR="/mnt/lfs" GETPKG=y SRC_ARCHIVE="/lfs-sources" SERVER="http://ftp.lfs-matrix.net/" GETKERNEL=y RUNMAKE=y # CLEAN is not set # # --- Build Settings # # CONFIG_TESTS is not set # TST_1 is not set # TST_2 is not set # TST_3 is not set TEST=0 # NO_BOMB is not set # BOMB is not set # BOMB_TEST is not set # INSTALL_LOG is not set HAVE_FSTAB=y FSTAB="/home/jhalfs/fstab" CONFIG_BUILD_KERNEL=y CONFIG="/home/jhalfs/kernel-config" STRIP=y VIMLANG=y # NO_PROGRESS_BAR is not set TIMEZONE="GMT" LANG="$LANG" PAGE_LETTER=y # PAGE_A4 is not set PAGE="letter" # # --- Advanced Features # REPORT=y # COMPARE is not set ITERATIONS=0 # RUN_ICA is not set # RUN_FARCE is not set # CONFIG_OPTIMIZE is not set # OPT_1 is not set # OPT_2 is not set OPTIMIZE=0 # # --- Internal Settings (WARNING: for jhalfs developers only) # SCRIPT_ROOT="jhalfs" JHALFSDIR="$BUILDDIR/$SCRIPT_ROOT" LOGDIRBASE="logs" LOGDIR="$JHALFSDIR/logs" TESTLOGDIRBASE="test-logs" TESTLOGDIR="$JHALFSDIR/test-logs" FILELOGDIRBASE="installed-files" FILELOGDIR="$JHALFSDIR/$FILELOGDIRBASE" ICALOGDIR="$LOGDIR/ICA" FARCELOGDIR="$LOGDIR/farce" MKFILE="$JHALFSDIR/Makefile" XSL="$PROGNAME.xsl" PKG_LST="unpacked" # REBUILD_MAKEFILE is not set
作者: ServerOnly 发布时间: 2009-08-29
写了 XML, 看这里吧:
http://imghch.com/doc/lfs_r2160_livecd.html
http://imghch.com/doc/lfs_r2160_livecd.html
作者: ServerOnly 发布时间: 2009-08-29
感谢 Server 兄分享心得,似乎本篇更值得置顶 :)
原有的 6.5 packages patches list 在此 http://www.linuxsir.org/bbs/thread355492.html
原有的 6.5 packages patches list 在此 http://www.linuxsir.org/bbs/thread355492.html
作者: d00m3d 发布时间: 2009-08-30
楼主 厉害 值得学习
作者: xcrdjn 发布时间: 2009-09-02
有没有用过的?反馈一声!谢谢!
作者: actioin 发布时间: 2009-11-27
openlivecd中
mount --bind $WORK/build $WORK/root/build
按照
http://imghch.com/doc/lfs_r2160_livecd.html
描述的应该是
mount --bind /usr/src $WORK/root/build
mount --bind $WORK/build $WORK/root/build
按照
http://imghch.com/doc/lfs_r2160_livecd.html
描述的应该是
mount --bind /usr/src $WORK/root/build
作者: loves123 发布时间: 2009-12-02
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28