summaryrefslogtreecommitdiffstats
path: root/booty
Commit message (Collapse)AuthorAgeFilesLines
* Sparc bootloader config not written to /etcDennis Gilmore2010-03-051-6/+7
| | | | | clean up sparc boot loader install so that it writes out and links into /etc correctly.
* The justConfigFile parameter doesn't do anything on x86, either (#568567).Chris Lumens2010-02-261-6/+3
| | | | | | My previous comments were wrong - we can determine that justConfigFile is useless here as well with the death of flags.setupFilesystems and eliminate it.
* Fix instData removal mis mergeHans de Goede2010-02-161-8/+2
| | | | | This reverses 1 chunck of commit d6d4c4800ebc2958eb87a706e4a7c799647ca447 as that chunck was caused by a mis merge (and is wrong).
* Fix a handful of simple pychecker errors.Chris Lumens2010-02-162-2/+2
|
* Move bootloader into the Anaconda object.Chris Lumens2010-02-048-30/+29
|
* Move storage into the Anaconda class.Chris Lumens2010-02-041-2/+2
|
* Move network to the Anaconda object.Chris Lumens2010-02-041-3/+9
|
* Move keyboard to the Anaconda object.Chris Lumens2010-02-041-1/+1
|
* Move instLanguage to the Anaconda object.Chris Lumens2010-02-041-1/+3
|
* Hookup new python EDD code (#478996)Hans de Goede2010-01-281-1/+1
| | | | | | | | Replace all usage of the isys C EDD code with the new storage python EDD code. Note that this moves the sorting of partition.req_disks from devices.py to paritioning.py, because sorting now needs access to the storage object, this also has the added advantange that now we always allocatePartitions in sorted drive order, even in interactive mode.
* make dracut only activate the root LV (#553295)Hans de Goede2010-01-211-1/+1
| | | | | | Currently we are making dracut activate the entire root containing VG, dracut-004 now has support for activating only specified LV's, this patch moves us over to that.
* Emit a dracut setup string for the root device itselfHans de Goede2010-01-141-1/+1
| | | | | | | We were only emitting dracut setup strings for devices the root device depends on, not for the root device itself. This causes non booting systems when the root device itself is of a type which needs a setup string (such as a regular mdraid array).
* Don't write dracut kernel cmdline paramters to anaconda-ks.cfgHans de Goede2009-12-241-2/+6
| | | | | | | Don't write the dynamically generated dracut kernel cmdline parameters to anaconda-ks.cfg. Having them there will result in having some of them twice in the resulting kickstart install, including some which refer to no longer valid UUID's.
* Write dracut rd_NO_foo options to grub.confHans de Goede2009-12-241-1/+12
| | | | | | When we don't specify any MD / LVM / DM / LUKS to activate dracut will activate all found by default, so when we don't specify any write RD_NO_foo to the kernel cmdline in grub.
* Avoid duplicate kernel cmdline options and cleanup booty dracut codeHans de Goede2009-12-241-18/+27
| | | | | | | | | | | It is possible for 2 disks to have the same disk dracut cmdline options, or network cmdline options (if the disks are network devices) for example 2 iscsi disks on the same host. In this case we should only include the specific option once. This patch puts the collection of storage related setupStrings in a function, and makes get() loop over all kernel cmdline providing bits, so that the code for proper whitespace seperation of various args is not duplicated.
* Add support for whole-disk formatting.David Lehman2009-12-091-1/+5
| | | | Whole-disk formats are recognized but cannot be edited in any way.
* With flags.setupFilesystems gone, justConfig can be removed from booty.Chris Lumens2009-12-037-52/+47
| | | | | | | ...well, it can mostly be removed. The s390 and x86 classes still do some complicated things that end up with a justConfig test, so it has to stay in those files. However, their write() methods no longer need to accept that parameter.
* Remove test mode.Chris Lumens2009-12-032-16/+14
| | | | | | | This is yet another way of running anaconda that gets extremely limited use, no testing, and no consideration during development to making sure it still works. Again, we need to stop pretending and get rid of modes that we don't support.
* Generate more complete device.map grub file when upgrading grub. (#533621)Radek Vykydal2009-11-181-101/+63
| | | | | | | | | | | | | | | | | | | When updating device.map during upgrade of grub, I missed case when driveorder changes between install and upgrade (e.g. when driveorder different from that detected during upgrade had been specified when isntalling) in my previous patch. To fix it, I generate device.map in similar way as when installing (only updating it with some devices that we can know about only from updated device.map - e.g. chainloaded devices). This brought me to another consolidation of the code (started in previous grub installation patches): * remove updateGrub, use writeGrub with upgrade flag instead * move code from writeGrub into separate methods writeGrubConf (called only for grub (re)install) writeSysconfig (called both for grub (re)install and upgrade) writeDeviceMap (called both for grub (re)install and upgrade) * remove old writeSysconfig and updateDeviceMap that were called only from upgradeGrub, use new writeSysconfig and writeDeviceMap with upgrade flag instead.
* Copy cio_ignore kernel parameter to zipl.conf on s390 (#475675).David Cantrell2009-11-021-0/+4
| | | | | | Part of the changes necessary for #475675, we need to take the cio_ignore parameter (if it exists) given during installation and write it to the parameter list in /etc/zipl.conf on the target system.
* Remove another code duplication in grub upgrade code.Radek Vykydal2009-10-291-21/+4
| | | | | This is one of follow-up commits for commit 358a9a34f496fdd2b032edf12274a146b606d1a4, dealing with upgrade.
* Remove code duplication, use fixed code from writeGrub.Radek Vykydal2009-10-291-44/+3
| | | | | This is one of follow-up commits for commit 358a9a34f496fdd2b032edf12274a146b606d1a4, dealing with upgrade.
* Remove target parameter from grub installation code - it is no more needed.Radek Vykydal2009-10-292-13/+4
| | | | | This is one of follow-up commits for commit 358a9a34f496fdd2b032edf12274a146b606d1a4, dealing with upgrade.
* Make bootLoaderInfo new-style class, so that its properties work correctly.Radek Vykydal2009-10-154-4/+7
| | | | | | | | | If the bootLoaderInfo is old-style class, setting of its property drivelist doesn't work, instead the property is overwritten with attribute and therefore for example any following calls of updateDriveList have no effect. AFAIK it doesn't cause problems anywhere at the moment, but I think it should be fixed it in master.
* Do not read DASD data from /tmp/install.cfg in booty (#526354).David Cantrell2009-10-131-2/+0
| | | | The DASD kernel parameters will be coming from DASDDevice objects.
* Fix grub stage1 installation for /boot on md raid1.Radek Vykydal2009-10-092-31/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a patch to fix installation of grub in case we have md raid 1 /boot device. I posted similar patch some time ago, Hans reviewed it, but it didn't gather much attention so I was afraid to push it - it changes behavior. Now I decided to do things a bit differently. Also, some weeks ago Hans has pushed a patch fixing bootloader target selection for mdraid (commit 45a7048e5f56316e052e4699b5ec70aa291ddd5e) upon which my patch is standing. So here I come again (sorry for repeating myself). We offer installation into mbr or boot partition (/dev/mdX) in UI. In F11 and RHEL5 if md boot partition was on /dev/sda1 and /dev/sdb1, in case of "mbr" we installed grub twice into mbr of /dev/sda, and in case of "partition" into mbr of /dev/sda and /dev/sdb. Member drive removal in the second case didn't work I think (no boot). Hans's patch changed the behavior (it was expected) - we are really installing bootloader into boot device if /dev/mdX is selected, and if mbr is selected, we are installing twice into mbr of selected drive as before. My patch wants to make it behave "the right" way, that is - install where you were asked to, and be able to boot when one member disk is removed (see bug https://bugzilla.redhat.com/show_bug.cgi?id=213578), so: A) In case of installing into boot partition: install it there in a way that the boot works if one member is removed. B) In case of installing into mbr: iff the disk contains member of boot md array, install also into mbrs of other members. If one member is removed, be able to boot - this is fixed by the patch. Note: I'd like to fix upgrade of grub part too, especially when now the behavior has changed wrt what we write out in grub.conf and /etc/sysconfig/grub. Also UI can writing for mbr could say that we'd install into mbr of other member disks too (if it is the case) If you want details, below are some cases that illustrate the change (also the code may be hard to follow for given case, I can post a test script using which you can get resulting grub input for given case) 1) sda, sdb, install to mbr, /boot is sdb1 works both with and without the patch, the same grub commands are run 2) sda, sdb, sdc, install to mbr of sda, /boot is mdarray of sdb3 and sdc3 without the patch: - boots with both disks, doesn't if any is removed - log: Running... ['/sbin/grub-install', '--just-copy'] Running... ['/sbin/grub', '--batch', '--no-floppy', '--device-map=/boot/grub/device.map'] GNU GRUB version 0.97 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename.] grub> root (hd0,2) Filesystem type is ext2fs, partition type 0xfd grub> install --stage2=/boot/grub/stage2 /grub/stage1 d (hd0) /grub/stage2 p (hd0,2)/grub/grub.conf grub> Running... ['/sbin/grub-install', '--just-copy'] Running... ['/sbin/grub', '--batch', '--no-floppy', '--device-map=/boot/grub/device.map'] GNU GRUB version 0.97 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename.] grub> root (hd1,2) Filesystem type is ext2fs, partition type 0xfd grub> install --stage2=/boot/grub/stage2 /grub/stage1 d (hd0) /grub/stage2 p (hd1,2)/grub/grub.conf grub> both disks - OK 2nd disk removed - OK 1st disk removed - OK with the patch: - boots even when any of member disks is removed - log: Running... ['/sbin/grub-install', '--just-copy'] Running... ['/sbin/grub', '--batch', '--no-floppy', '--device-map=/boot/grub/device.map'] GNU GRUB version 0.97 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename.] grub> root (hd1,2) Filesystem type is ext2fs, partition type 0xfd grub> install --stage2=/boot/grub/stage2 /grub/stage1 d (hd0) /grub/stage2 p (hd1,2)/grub/grub.conf grub> 3) sda, sdb, install to mbr of sda, /boot is mdarray of sda3 and sdb3 without patch: - it boots with both disks, doesn't find stage1 (_ on screen) if any of them is removed - log: Running... ['/sbin/grub-install', '--just-copy'] Running... ['/sbin/grub', '--batch', '--no-floppy', '--device-map=/boot/grub/device.map'] GNU GRUB version 0.97 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename.] grub> root (hd1,1) Filesystem type is ext2fs, partition type 0xfd grub> install --stage2=/boot/grub/stage2 /grub/stage1 d (hd0) /grub/stage2 p (hd1,1)/grub/grub.conf grub> Running... ['/sbin/grub-install', '--just-copy'] Running... ['/sbin/grub', '--batch', '--no-floppy', '--device-map=/boot/grub/device.map'] GNU GRUB version 0.97 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename.] grub> root (hd2,1) Filesystem type is ext2fs, partition type 0xfd grub> install --stage2=/boot/grub/stage2 /grub/stage1 d (hd0) /grub/stage2 p (hd2,1)/grub/grub.conf grub> with the patch: - boots even when one of member disks is removed - log: Running... ['/sbin/grub-install', '--just-copy'] Running... ['/sbin/grub', '--batch', '--no-floppy', '--device-map=/boot/grub/device.map'] GNU GRUB version 0.97 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename.] grub> device (hd0) /dev/sdb grub> root (hd0,2) Filesystem type is ext2fs, partition type 0xfd grub> install --stage2=/boot/grub/stage2 /grub/stage1 d (hd0) /grub/stage2 p (hd0,2)/grub/grub.conf grub> Running... ['/sbin/grub', '--batch', '--no-floppy', '--device-map=/boot/grub/device.map'] GNU GRUB version 0.97 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename.] grub> root (hd0,2) Filesystem type is ext2fs, partition type 0xfd grub> install --stage2=/boot/grub/stage2 /grub/stage1 d (hd0) /grub/stage2 p (hd0,2)/grub/grub.conf grub> 4) like 3), but /boot is mdarray of sda3 and sdb2 - notice different partition numbers - removing a specific one of member disks can't work as location of grub.conf file stored in first block of stage2 is shared and so contains only the last grub-installed value. without the patch: - doesn't boot with both disks, doesn't boot with any single disk - log: Running... ['/sbin/grub-install', '--just-copy'] Running... ['/sbin/grub', '--batch', '--no-floppy', '--device-map=/boot/grub/device.map'] GNU GRUB version 0.97 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename.] grub> root (hd0,2) Filesystem type is ext2fs, partition type 0xfd grub> install --stage2=/boot/grub/stage2 /grub/stage1 d (hd0) /grub/stage2 p (hd0,2)/grub/grub.conf grub> Running... ['/sbin/grub-install', '--just-copy'] Running... ['/sbin/grub', '--batch', '--no-floppy', '--device-map=/boot/grub/device.map'] GNU GRUB version 0.97 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename.] grub> root (hd1,1) Filesystem type is ext2fs, partition type 0xfd grub> install --stage2=/boot/grub/stage2 /grub/stage1 d (hd0) /grub/stage2 p (hd1,1)/grub/grub.conf grub> with the patch: - boots when one second disk is removed, not when the first one is removed (in the sense of boot order) - log: Running... ['/sbin/grub-install', '--just-copy'] Running... ['/sbin/grub', '--batch', '--no-floppy', '--device-map=/boot/grub/device.map'] GNU GRUB version 0.97 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename.] grub> device (hd0) /dev/sdb grub> root (hd0,1) Filesystem type is ext2fs, partition type 0xfd grub> install --stage2=/boot/grub/stage2 /grub/stage1 d (hd0) /grub/stage2 p (hd0,1)/grub/grub.conf grub> Running... ['/sbin/grub', '--batch', '--no-floppy', '--device-map=/boot/grub/device.map'] GNU GRUB version 0.97 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename.] grub> root (hd0,2) Filesystem type is ext2fs, partition type 0xfd grub> install --stage2=/boot/grub/stage2 /grub/stage1 d (hd0) /grub/stage2 p (hd0,2)/grub/grub.conf grub>
* Really put appended kernel cmdline arguments at the endHans de Goede2009-09-151-8/+16
| | | | | | Due to the auto generation of dracut cmdline, append arguments like "quiet rhgb" would no longer be at the end of the kernel cmdline in grub, making it (slightly) harder to remove them for debugging purposes.
* Use type of device rather than name in booty target selection.Hans de Goede2009-09-151-26/+16
| | | | | | | | | We were using startswith "md" together with checking the iswmd option to determine wether an md array is a disk or a partition in the booty sense of things. This is ofcourse wrong, instead we should check if it is an isw mdraid array, or a native metadata mdraid array. This patch fixed this, note the type of isw bios raid using mdraid is "disk".
* write ifname=eth#:MAC to kernel cmdline in grub.conf for dracutHans de Goede2009-09-151-1/+1
|
* Make iswmd the defaultHans de Goede2009-09-151-1/+2
| | | | | | Now that we've moved to dracut for the initrd in rawhide, which supports using mdraid for isw metadata raid sets (and uses this by default), make using mdraid for isw metadata raid sets the default.
* initrd-generic.img -> initramfs.imgHans de Goede2009-09-091-1/+1
| | | | | | | We're moving back to %post generation of dracut initrd's due to GPL concerns about shipping pre build initrd's. This means the initrd will no longer be truely generic. To reflect this and make clear it is not an mkinitrd initrd, the name was changed to initramfs.img.
* Expose common fsset methods and properties in class Storage.David Cantrell2009-09-036-22/+22
| | | | | | | | | | | | | | | | | | | | | | | | Add the following methods and properties to class Storage which map through to FSSet methods, modify existing calls to use the method on class Storage: turnOnSwap() mountFilesystems() umountFilesystems() parseFSTab() mkDevRoot() createSwapFile() fsFreeSpace() mtab mountpoints migratableDevices rootDevice Callers no longer need to pass the Anaconda object to the FSSet methods directly. The method on Storage takes care of that. The mtab() method on FSSet is exposed as a property on Storage. The same is true for fsFreeSpace().
* dracut has initrd-generic-<version> instead of initrd-<version> (#519185)Hans de Goede2009-08-267-33/+36
| | | | | | | | dracut using kernel come with a prebuild initrd-generic-<version> instead of initrd-<version>, so if we fail to find /boot/initrd-<version>.img, check for /boot/initrd-generic-<version>.img instead. I've done things this way so that if we ever need to generate system specific (so non generic) initrd's for some reason the code will stay working.
* booty: Do not strip the trailing p from a devicename like mapper/isw_Vol0_tmpHans de Goede2009-08-101-10/+6
| | | | | | | | | While fixing bug 505205, I noticed that the code for removing the trailing p in a name like: mapper/isw_Vol0p1 which becomes mapper/isw_Vol0p after cutting is rather interesting, for example it will wrongly change the whole diskname mapper/isw_Vol0_tmp to mapper/isw_Vol0_tm. This patch fixes this by removing the trailing p as part of the partition cutting code instead of always removing it.
* booty: isw_Vol0_Stripe is not a disk isw_Vol0_Stri with an e part (#505205)Hans de Goede2009-08-101-13/+14
| | | | | | This patch fixes the (stupid) traceback in booty/util.py getDiskPart() from 505205, by checking all characters after the cut point are digits before assuming we have found a place to cut between partition number and disk.
* Add keyboard kernel cmdline options to grub.conf for dracutHans de Goede2009-08-051-0/+1
| | | | Note this requires an updated system-config-keyboard
* Write dracut i18n cmdline options to grub.confHans de Goede2009-08-051-0/+2
|
* Pass InstalltData to booty __init__ as it needs access to many of its membersHans de Goede2009-08-058-33/+32
| | | | | | | | | Currently we are passing storage and network to booty's __init__, for writing the necessary kernel cmdline parameters for dracut for international consoles / keyboards booty will also need access to keyboard and language, instead of passing these all in seperately just pass InstalltData to booty's __init__. This is a preparation patch for writing out the dracut kernel cmdline commands for i18n support.
* Add a dracutSetupString method to network.pyHans de Goede2009-08-048-26/+31
| | | | | | | | | Add a dracutSetupString method to network.py, this can be used to ask the Network class to get a dracut setup string to setup the interface needed for a connection to a certain host. This patch also adds code to booty to use this to get kernel cmdline dracut setup commands for any NIC's needed to connect to devices needed for /
* Use dracutSetupString() method to add the kernel parameters needed for dracutHans de Goede2009-08-041-3/+12
|
* Update device.map when upgrading (#513393)Radek Vykydal2009-07-301-0/+28
|
* Use iutil arch specifiers rather than rhplJeremy Katz2009-07-015-24/+17
| | | | | Switch to using iutil.isFoo() methods rather than checking the value of rhpl.getArch()
* Stop using rhpl.translateJeremy Katz2009-07-011-1/+4
| | | | Use python's gettext module instead of rhpl.translate
* Do not install grub more times than needed.Radek Vykydal2009-06-301-1/+1
|
* Fix grub upgrade (#505966)Radek Vykydal2009-06-251-5/+5
| | | | | We need to run grub 'root' and 'install' commands in one grub shell session when upgrading grub.
* booty changes for iswmdJacek Danecki2009-06-222-7/+15
| | | | This patch adds support for iswmd kernel parameter in booty.
* Convert booty/ to Makefile.amDavid Cantrell2009-06-092-33/+23
|
* Catch errors from bootloader installation and tell the user (#502210).Chris Lumens2009-06-057-85/+128
|
* Remove the bootloader --lba32 option.Chris Lumens2009-06-042-25/+5
|
* Add a Mac OS boot line to yaboot.conf (#499964).Chris Lumens2009-05-131-3/+6
| | | | | | | | | | The problem is that a Mac filesystem is HFS+, but is not marked bootable. The Apple Bootstrap partition is marked bootable. Therefore we take the stupid test and say if there's a bootable Apple Bootstrap partition on a disk and there's an HFS partition, mark that as the Mac OS partition for the bootloader config. This is about as stupid as what we're doing for DOS filesystems now and is easily screwed up, but it's better than nothing.