loadlin/dos/umsdos enhancements to kernel-package
Hi folks,
I have made some enhancements to kernel-package to cater to
people who like to use loadlin and hence keep their /boot on a umsdos
partition. They ca now use the variables image_in_boot and
reverse_symlink so that kernel image packages will only manipulate
links in /boot (no symlinks kept in /)
The idea is to keep the real image file in /boot/vmlinuz since
symlinks can't be seen in dos, with a symlink present so at least in
Linux you know what version is now in /boot/vmlinuz
The result of installing a kernel-image-X.XX package (apart
from /lib/modules/<version>/* and /usr/doc stuff) is something like
this (say, just installed 2.0.30
-------------------------------------------------------------------
/boot/
vmlinuz ; new kernel image
vmlinuz.old ; old kernel image (really 2.0.29)
vmlinuz-2.0.30 -> vmlinuz ; new link
vmlinuz-2.0.29 -> vmlinuz ; old link (how do I get rid of
old links reliably?)
System.map
System.old
System.map-2.0.30 -> System.map
System.map-2.0.29 -> System.map ; same problem
----------------------------------------------------------------------
This is far from perfect. The older symlinks are now
incorrect, and, unless the user acts and saves older images, only two
images are kept by default (Yuck!)
I have enclosed the relevant excerpt from the man pages
below.
manoj
=========================================================================
image_in_boot:
Set to True if you want the kernel image vmlinuz
and System.map in /boot rather than the default /.
Can be over-ridden by the environment variable
IMAGE_IN_BOOT. defaults to undefined. (Optional)
no_symlink
Whether to use symlinks to the image and System.map
files. Can be over-ridden by the environment vari
able NO_SYMLINK Mutualy exclusive to reverse_sym
link. Can be used with image_in_boot. The image
is placed in vmlinuz (instead of /boot/vmlinuz-
X.X.XX). The old vmlinuz is moved to vmlinuz.old
unconditionally. (Normally, that is only done if
the version of the new image differes from the old
one). This restricts you to two images, unless you
take additional action and save copies of older
images. This is for people who have boot on a sys
tem that does not use symbolic links (and say, they
use loadlin as a boot loader). This is a Hack.
Defaults to undefined (optional)
reverse_symlink
Whether to use reverse symlinks (that is, the real
file is the one without the version number, and the
numberd version is the link) to the image and Sys
tem.map files. Can be over-ridden by the environ
ment variable REVERSE_SYMLINK Mutualy exclusive to
no_symlink. Can be used with image_in_boot. Just
like no_symlink, except that the /boot/vmlinuz-X.XX
is sym linked to the real new image, vmlinuz. This
too restricts you to just two images unless futher
action is taken. The older symlinks are left dan
gling. This is for people with boot on umsdos, and
who can't see the link in dos, but do want to know
the image version when in Linux. This is a Hack.
Defaults to undefined (optional)
The value of a variable can be set so:
a) Defaults exist in the rules file. These are the
values used if no customization is done.
b) Variables can be set in the config file /etc/ker
nel-pkg.conf. These values over ride the defaults.
c) Variables can also be set by setting a correspond
ing envirnment variable. These values over ride
the config file and the defaults.
d) Using make-kpkg options, or, if using the rules
file directly, on command line
# xxx/rules DEBIAN_REVISION=2.0a kernel_image
This over rides all the above methods.
--
"That is not the Usenet tradition, but it's a solidly-entrenched
delusion now." Brian Kantor (brian@ucsd.edu)
Manoj Srivastava <url:mailto:srivasta@acm.org>
Mobile, Alabama USA <url:http://www.datasync.com/%7Esrivasta/>
--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-request@lists.debian.org .
Trouble? e-mail to templin@bucknell.edu .
Reply to: