Upgrade script for libata transition

Jurij Smakov jurij at wooyd.org
Mon Feb 15 18:13:57 UTC 2010


On Fri, Feb 12, 2010 at 05:28:04AM +0000, Ben Hutchings wrote:
> On Thu, 2010-01-07 at 22:49 +0000, Ben Hutchings wrote:
> > On Tue, 2009-12-29 at 12:06 +0000, Ben Hutchings wrote:
> > > Linux kernel packages for "squeeze" will use libata-based drivers in
> > > preference to old-style IDE drivers.  On some systems this will change
> > > the names of PATA devices and will also change the names of SCSI devices
> > > already present in those systems if they are enumerated after the PATA
> > > devices.
> > > 
> > > On upgrade, we will recommend that users identify hard disk volumes in
> > > configuration files by label or UUID (unique identifier) rather than by
> > > device name, which will work with both old and new kernel versions.  I
> > > think that in most cases it should be possible to update the system
> > > configuration automatically, if the user agrees to this.  The following
> > > script implements this.  Please review and verify that it does the right
> > > thing for your package's configuration file(s).  (I would also welcome a
> > > more general review of the code.)
> > [...]
> > 
> > I have not yet seen any comments from maintainers of the various boot
> > loaders.  It is vital that this upgrade process is reliable and does not
> > prevent systems from booting, so please do review the code for your boot
> > loader.
> > 
> > If you prefer, I can prepare packages that include this script on
> > postinst and upload them to people.debian.org for you or others to test.
> 
> Sorry about the delay in doing this.  You can now get a source package
> by doing:
> 
> $ apt-get -d source linux-2.6
> $ dget http://people.debian.org/~benh/linux-2.6_2.6.32-8a~test.dsc
> 
> To build a kernel image package, follow the instructions at:
> 
> http://kernel-handbook.alioth.debian.org/ch-common-tasks.html#s-common-official
> 
> Note in particular the instructions beginning 'For example, to build
> only the binary packages for 686 flavour...'

That does not quite work, one should replace the command

fakeroot debian/rules debian/build debian/stamps

from this doc with

fakeroot debian/rules setup

for the current linux-2.6 packages.
 
> The kernel image packages will depend on the linux-base package which
> contains the transition script.  To build that, run:
> 
> $ fakeroot make -f debian/rules.real install-linux-base
> 
> Please test both the transition script and the new drivers so far as you
> can (most are x86-only but some are available for all architectures with
> PCI).  I suggest starting with an emulated/virtualised system before you
> risk breaking anything real!

For me the installation of linux-base (on sparc) just hangs while 
configuring the package. It appears that it loops forever in the 
lilo_list function, presumably after hitting the token corresponding 
to 'image=/vmlinuz' line in /etc/silo.conf, as the following code 
snippet fails to increment the counter used to loop through the 
tokens: 

               if ($name eq 'image') {
                    $in_generic = ($value =~ m|^/vmlinuz(?:\.old)?$|);
                    next;
               }

Best regards,
-- 
Jurij Smakov                                           jurij at wooyd.org
Key: http://www.wooyd.org/pgpkey/                      KeyID: C99E03CC



More information about the Pkg-grub-devel mailing list