相关命令:
lb config
在当前目录下建立auto和config目录和相关配置文件,运行auto/config脚本。
lb clean
运行auto/clean脚本
lb build
按照config目录下的各种配置脚本构建系统镜像
软件源的指定:(增加parent前缀可以强制使用指定源:--parent-mirror-bootstrap http://mirrors.163.com/ubuntu/ \
To set the distribution mirrors at build time : chroot
$ lb config --mirror-bootstrap http://localhost/debian/ \
--mirror-chroot-security http://localhost/debian-security/ \
--mirror-chroot-backports http://localhost/debian-backports/
chroot mirror:--mirror-chroot, 默认使用—mirror-bootstrap 的值
或者创建config/archives/your-repository.list.chroot 文件,内容为源地址。源会被加入到live系统的/etc/apt/sources.list.d/目录。
set the distribution mirrors at run time: binary
$ lb config --mirror-binary http://mirror/debian/ \
--mirror-binary-security http://mirror/debian-security/
或者创建config/archives/your-repository.list.binary 文件,内容为源地址。
对系统的软件包进行定制:
方法一、将所需的包列表放在config/package-lists目录下,并命名为XXX.chroot.list或XXX.binary.list即可。
方法二、使用--package-lists “XXX”,将使用/usr/share/live/build/package-lists/下的指定包列表
方法三、将自定义的包放到config/chroot_packages/目录下即可
auto/config中为配置参数,例如:
lb config noauto \
--distribution "precise" \
--mode ubuntu \
--initsystem none \
--source false \
--parent-archive-areas "main restricted universe" \
--parent-mirror-bootstrap http://mirrors.163.com/ubuntu/ \
--parent-mirror-chroot http://mirrors.163.com/ubuntu/ \
--parent-mirror-chroot-security http://mirrors.163.com/ubuntu/ \
--parent-mirror-chroot-backports http://mirrors.163.com/ubuntu/ \
--parent-mirror-binary http://mirrors.163.com/ubuntu/ \
--package-lists none \
--bootloader "syslinux" \
--initramfs-compression lzma \
--bootstrap-keyring ubuntu-keyring \
--binary-images "iso-hybrid" \
--memtest "memtest86+" \
"${@}"
在执行lb config后会按此脚本中的参数生成config目录下的binary、bootstrap、 chroot、 common四个配置文件。lb build读取这四个配置文件,所以也可以在lb config后可以对这四个文件内的参数做具体修改。
syslinux主题设置
--syslinux-theme "ubuntu-precise" 可在auto/config中指定主题名,默认是用本地系统的主题。
会在本地特定目录中查找并复制指定主题到livecd镜像中去(具体可看live-build这部分的脚本)
自定义目录:
自定义的目录和其中的文件放在config/相应的include目录下即可
config/binary_local-includes(以生成镜像的根目录为根目录)
config/chroot_local-includes(以目标系统的根目录为根目录)
HOOKS:
在live-build完成每个阶段的工作后都会运行config/相应hooks中的脚本。
config/binary_local-hooks
config/chroot_local-hooks
开机默认语言:
在 config/binary_local-hooks下增加如下脚本,并建立config/language.txt文件,其内容为:zh_CN (live系统启动的默认语言)
#!/bin/sh -e
LOC=config/language.txt
if [ -e "$LOC" ]; then
echo "$0: $LOC exists, setting gfxboot default language..."
cp "$LOC" binary/isolinux/lang
echo >> binary/isolinux/lang
else
echo "$0: $LOC does not exist, not setting gfxboot default language"
fi
系统中文支持:
在config/chroot_local-hooks下添加如下脚本
#!/bin/sh
set -e
echo 'P: Configuring language support...'
lang="zh-hans"
[ -n "$lang" ] || continue
pkgs=`check-language-support -l $lang`
pkgs=`echo "$pkgs" | xargs -n1 | grep ^language-pack-` || true
if [ -n "$pkgs" ]; then
echo "P: Installing packages for language $lang: $pkgs"
apt-get -y -q install $pkgs
fi
echo 'P: Language support configuration done.'
live镜像启动界面更改:
syslinux模式的脚本为lb_binary_syslinux,使用的文件是:
/usr/share/syslinux/themes/${LB_SYSLINUX_THEME}/${_BOOTLOADER}-live/*
tar xzf /usr/share/gfxboot-theme-ubuntu/bootlogo.tar.gz
可以用修改过的替换相关文件。
auto/config中的用来指定内核启动参数的配置项:--bootappend-live,似乎在syslinux中必须有live.cfg。而ubuntu的syslinux主题文件结构中没有此文件,以至于配置项:--bootappend-live无效。
在使用lb build前需要做些修正:
1、使用--initramfs-compression lzma 时必须将config/common中LB_INITRAMFS_COMPRESSION="lzma"的"lzma"替换为"gzip"
# work around live-build failure with lzma initramfs (Debian #637979)
sed -i 's/^LB_INITRAMFS_COMPRESSION="lzma"/LB_INITRAMFS_COMPRESSION="gzip"/' config/common
2、默认kernel文件的名称不对,需要增加如下修改脚本
# rename kernel and initrd to what syslinux expects
cat <<EOF > config/binary_local-hooks/rename-kernel
#!/bin/sh -e
if [ ! -e binary/casper/initrd.lz ]; then
zcat binary/casper/initrd.img-* | lzma -c > binary/casper/initrd.lz
rm binary/casper/initrd.img-*
fi
if [ ! -e binary/casper/vmlinuz ]; then
mv binary/casper/vmlinuz-* binary/casper/vmlinuz
fi
EOF
最终执行lb build构建订制的livecd镜像
debian11光盘镜像
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
debian11 iso镜像 debian仓库镜像选哪个
目录一.准备安装Debian系统 1.1Debian简介 1.1.1介绍Debian版本 1.1.2Debian的正式发音 1.1.3Debian软件包管
debian11 iso镜像 运维 操作系统 开发工具 GNU