How to deploy .deb packages into kernel monolithically
Good day, citizens.
Development Distro(s): Debian 5.0 Lenny, Ubuntu Lucid 10.4
Target kernel: 2.6.3x
Kernel build methods:
Debian: command line using make method directives
Ubuntu: Ubuntu Customization Kit
I am attempting to construct a customized 2.6.3x kernel image using kernel source obtained from the kernel.org repository. At the time of image construction, I would also like to deploy several apps / utilities available in the format of .deb packages. In this way, when the initial image installation is performed, these app / utility packages will simultaneously be installed.
Using the Ubuntu Customization Kit, this is achievable as there is a break in the build process that allows packages to be added / removed / upgraded. Actually, I believe that UCK performs this package survey before the image construction actually starts. Unfortunately, this approach is not efficient because regardless of how many "packages" are removed the size of the image is still uncontrolled due to other excessive overhead (drivers, object files, unwanted system directives, etc) be passed into the new image....
On the other hand, we using command line build utilities (build-essential tools) I can scale the kernel image according to my specific need - which is very helpful when building for embedded applications. Using these method also allows me to build the kernel modules per the .config file be referenced for the build. Unfortunately, in this case I do not see a means to simultaneously deploy any additional .deb packages that I want installed in my new kernel.
For example: I would like to create an embedded so-called RTOS environment using the available RTAI package. One of the constraints of my system is the capacity of the primary storage flash ROM where my OS will reside - 64MB. As such, I want to stip out all unneeded resources / references from my kernel. Additionally, I do not want end users to have to manually deploy any packages after boot.
I have an idea how to do this, but am unsure with the exact implementation. My thoughts....
1. extract kernel soruce to build directory
2. create filesystem (?)
3. chroot to filesystem root (?)
4. use package manager (dpkg, apt-get, aptitude, etc) to download and install package on chroot'd filesystem
5. exit chroot
6. use build tools to build new kernel image.
Any help on this would be much appreciated. Thanks in advance.
|Graph Any Data with Cacti!||Apr 27, 2017|
|Be Kind, Buffer!||Apr 26, 2017|
|Preparing Data for Machine Learning||Apr 25, 2017|
|openHAB||Apr 24, 2017|
|Omesh Tickoo and Ravi Iyer's Making Sense of Sensors (Apress)||Apr 21, 2017|
|Low Power Wireless: 6LoWPAN, IEEE802.15.4 and the Raspberry Pi||Apr 20, 2017|
- Graph Any Data with Cacti!
- Teradici's Cloud Access Platform: "Plug & Play" Cloud for the Enterprise
- The Weather Outside Is Frightful (Or Is It?)
- Simple Server Hardening
- Understanding Firewalld in Multi-Zone Configurations
- Gordon H. Williams' Making Things Smart (Maker Media, Inc.)
- From vs. to + for Microsoft and Linux
- Bash Shell Script: Building a Better March Madness Bracket
- Buddy Platform Limited's Parse on Buddy Service