在deb建包的过程中,或多或少要接触一些控制文件,如control、{pre|post}{inst|rm}等。
这些文件其实是在建包之前就已经存在在你的机器上的,一般都在/usr/share/debhelper/dh_make/下。
如果你根据需要,需要更改他们时,也存在很多模板,在/usr/share/debhelper/autoscripts下,这些脚本也会被调用到。
有一些命令会自动的产生维护脚本,但如果想在已经存在的脚本中产生代码,要用到 #DEBHELPER# 这个标记符,它将被dh_installdeb产生的代码代替。
还有一个问题,就是debian下的control文件中有{misc:Depends} 和 {shlibs:Depends},这两个标记符。
这两个标记一个是miscellaneous的,一个是share libraries的,在很多命令中都会产生miscellaneous的片段,而dh_makeshlibs会替换掉{shlibs:Depends},dh_gencontrol会调用dpkg-gencontrol会把control放入debian/<package>/DEBIAN/下。
在安装的时候,这些配置文件先被解压读取,然后被存放在/var/lib/dpkg/info文件夹中。