1.生成udeb包(debian/control)
在Package的一段中加入
XC-Package-Type: udeb
2.控制次序(debian/control)
XB-Installer-Menu-Item: n{1..n}
n表数字
3.生成templates(debian/rules)
binary-arch: build install
...
dh_installdebconf
...
4.main-menu的执行
在mini.iso中的initrd.gz中
/lib/debian-installer.d/S70menu-linux
中有/lib/debian-installer/main-menu这就是main-menu开始执行了
在/lib/debian-installer/main-menu中执行debconf /usr/bin/main-menu
也就是di的packages中产生的main-menu
5.cdebconf
一般我们用debconf programname来执行基于debconf或cdebconf的程序
在cdebconf中我们可以追寻到confmodule.c中的confmodule_run函数
在该函数中先用fork生成子进程,然后在子进程占调用execv执行debconf的参数所指的程序
programname
6.dpkg-scanpackages
对deb包:
dpkg-scanpackages . /dev/null | gzip > Packages.gz
对udeb包:
dpkg-scanpackages -u . /dev/null | gzip > Packages.gz
7.apt-get update报公钥有问题
apt-get install debian-archive-keyring
8.directfb - unique
edit /etc/directfbrc
$cat /etc/directfbrc
wm=unique /*用unique窗口管理器(很简陋的) */
system=x11 /*用x11作为模拟后台*/
9.deb包制作
deb包源于我们源码目录中的debian目录下生成的安装目录
其实可以手动生成deb包,设debian目录下安装目录为main
则dpkg-deb -b main main.deb会生成合法的deb包
下面两条命令解开deb包到目录
dpkg-deb -x main.deb dir
dpkg-deb -e main.deb dir/DEBIAN
10.debian公钥
gpg --keyserver keyring.debian.org --recv-keys 8722E71E
gpg --keyserver subkeys.pgp.net --recv-keys 8722E71E
gpg --armor --export 8722E71E | apt-key add -
apt-get update
11.函数man手册
apt-get install manpages-dev
12
sed '/image/{n;e sed 3,5!d aaa}' ddd
sed '/title/,${0,//d;0,/^$\|^#\|title/{//p;d};}'
awk '$2~/boot/{print $1}'
awk '$2 == "/boot" {print $1}'
13
Colors 640X480 800X600 1024X768 1280X1024
256(8 bit) 769 or 0x301 771 or 0x303 773 or 0x305 775 or 0x307
32000(15 bit) 784 or 0x310 787 or 0x313 790 or 0x316 793 or 0x319
65000(16 bit) 785 or 0x311 788 or 0x314 791 or 0x317 794 or 0x31A
16.7 Mill.(24 bit) 786 or 0x312 789 or 0x315 792 or 0x318 795 or 0x31B
14
ssh-keygen -t rsa
cp ~/.ssh/id_rsa.pub HOST/.ssh/authorized_keys
这样scp,ssh时就不用密码了