Changeset 1842 in MondoRescue for branches/stable/mindi/parted2fdisk.pl


Ignore:
Timestamp:
Dec 15, 2007, 2:24:34 AM (16 years ago)
Author:
Bruno Cornec
Message:
  • Fix lack of /etc/raidtab at restore rime in the right place
  • Adds support for nls_utf8 and pata_serverworks Patches from Dirk Husung (husung_at_tu-harburg.de)
  • Add efibootmgr to deplist.txt in order to be able to modify EFI menu at restore time on ia64
  • Usage of the new testver param of pb 0.8.12 to deliver 2.2.5 packages in a test dir.
  • Update pbcl files for upcoming delivery of 2.2.5
  • Fix an issue on parted output (K instead of KB) in parted2fdisk at restore time
  • Adds support for alb/aft types of bonding on Intel cards (Mark Pinkerton <Mark.Pinkerton_at_emageon.com>)
  • Escape variables in a perl script like mindi-bkphw
  • Better Proliant support at restore time now.
  • Fix a label bug where the variable label should also be re-initialized at each loop
  • start-nfs should NOT do exit => kernel panix as init exits
  • some other fixes for init on denymods
  • Adds boot options denymods (for udev) and forcemods (if not udev)
  • kqemu is denied. Probably should also be done for kvm stuff
  • Fix again the bug on modules link at root of the initrd. Hopefully for good.
  • Wait more around the USB CD emulated by iLO as it takes up to 5 seconds to come up
  • Attempt to fix udev support for RHEL 5.1
  • Better support for automatic iLO Virtual Media with udev
  • Some VMWare support improvements (however, it seems that VMWare support won't be possible anytime soon)
  • during init at restore time, copy all static evices availble for udev, as some distro implementation are no

t yet supported correctly for udev. Not very elegant, but should solve our current issues

  • Fedora 8 now supported as a build target for pb
  • svn.log removed.
  • dependencies reviewd for rhel_3
  • Attempt to fix the lack of modules loaded at restore time - especially fs device drivers
  • removes bkphw dir before potential creation
  • render mount command more vebose at restore time
  • Should fix #217
  • Increase BOOT_SIZE and EXTRA_SIZE to support features such as HW recovery
  • Handles udev.files files which could be symlinks
  • Improve udev support for distro with compressed modules (mdv e.g.)
  • Fix modules.dep copy
  • /sbin/pam_console_apply is needed by mdv udev conf
  • Adds support for nohw boot option to avoid re-setuping the HW conf
  • Improved support for Proliant on cpqacuxe
  • RstHW should be called after driver initialization
  • For debian/ubuntu mindi dpends on mindi-busybox
  • Update mindi-busybox pbcl for correct debian changelog generation, and up2date infos
  • Should fix #215
  • Fix #214 (Thanks to xdelaruelle)
  • Fix again svn.log not used anymore with new pb version
  • Adaptation of build process to upcoming 0.8.12 version of pb
  • Remove MONOTONIC clock to continue to support 2.4 kernels (RHEL 3 e.g. or ESX)
  • Attempt to solve ia64 BMC access through the serial port
  • parted2fdisk binary no more generated
  • do not require perl modules (strict.pm) at restore time
  • try to avoid modprobe messages at restore time
  • on ia64 now use the perl script parted2fdisk at retore time also
  • Also modprobe modules for udev after decompressing the additional ones
  • replace gzip -v9 by gzip -c9. Fix a bug at least on ia64
  • For all modules supported, create symlinks under the mountpoint and extract dev files as some are not automat ically created at the moment
  • Support /vmfs/volumes for ESX
  • Finally do not use vdf for ESX. Only creates issues.
  • Avoids continuing hw support if no product name found
  • Improves ia64 support for bootable image build
  • Fix a potential problem with ramdisk_blocksize param
  • MAKEDEV should also be included in deplist.txt
  • More fixes for udev support for Debian
  • Do not mount /boot if it's already mounted - avoids ESX hang
  • Fix NICs renumbering on Debian at least
  • Udev startup improvement to support iLO + NFS so modprobing all modules seems required as of now
  • Update to version 1.7.3 of busybox for pb
  • Load USB earlier in order to support KBD such as with iLO
  • Do busybox ldd first in order to create a potential /lib64 link correctly and then use it later in the image
  • Use variable DF in mindi to be able to support the ESX vdf
  • Fix mindi for Debian x86_64 where /lib64 is a link
  • Fix issue at restore time for ext2fs params not reused (Fix from Klaus Ade Johnstad <klaus_at_skolelinux.no>)
  • Do not copy udev files if they do not exist In udev case do not insert modules at all (udev should do it alone) May avoid the issue with rhel4.5 kernel ? To be tested
  • Update dependencies for rpm base build as well
  • And also perl is a debian/ubuntu dep
  • Better debian/ubuntu dependecies requirements (mtools)
  • Fix modes on mindi-bkphw (Thanks Phil Walker phil.walker_at_hp.com)
  • Complete rev [1771] for upper case RESTORE cli with syslinux as well
  • Update mindi-busybox to 1.7.3
  • Use RESTORE consistently across mondo to restore without interaction (report from Takeshi Shoji t.shoji_at_tripodw.jp)

(merge -r1769:1841 $SVN_M/branches/2.2.5)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/stable/mindi/parted2fdisk.pl

    r1570 r1842  
    3838my $arch;
    3939my $fake = 0;
     40my $mega = 1048576;
    4041
    4142# Determine on which arch we're running
     
    165166                        if (defined $start{$part-1}) {
    166167                            # in MB => cyl
    167                             $cylstart = sprintf("%d",$end{$part-1}*1048576/$un + 1);
     168                            $cylstart = sprintf("%d",$end{$part-1}*$mega/$un + 1);
    168169                            print FLOG "no start cyl given for creation... assuming the following $cylstart\n";
    169170                        } else {
     
    179180                        $start = 0.01;
    180181                    } else {
    181                         $start = $cylstart* $un / 1048576 +0.001;
     182                        $start = $cylstart* $un / $mega + 0.001;
    182183                    }
    183184                    # this is a size in B/KB/MB/GB
     
    205206                    print FLOG "end cyl : $cylend\n";
    206207                    # parted needs MB
    207                     $end = $cylend * $un / 1048576;
     208                    $end = $cylend * $un / $mega;
    208209                    print FLOG "n $l $part $cylstart $cylend => mkpart primary $start $end\n";
    209210                    system "$parted -s $device mkpart primary ext2 $start $end\n" if ($fake == 0);
     
    388389    # start and end are in cylinder in fdisk format
    389390    # so return in MB * 1MB / what represents 1 cyl in B
    390     $mstart = sprintf("%d",$$start{$n}*1048576/$un);
     391    $mstart = sprintf("%d",$$start{$n}*$mega/$un);
    391392    $mstart = 1 if ($mstart < 1);
    392393    $mstart = $endmax if ($mstart > $endmax);
    393     $mend = sprintf("%d",$$end{$n}*1048576/$un - 1);
     394    $mend = sprintf("%d",$$end{$n}*$mega/$un - 1);
    394395    $mend = $endmax if ($mend > $endmax);
    395396    $mend = 1 if ($mend < 1);
     
    497498my $mode;
    498499my $size;
     500my $unit;
    499501
    500502open (PARTED, "$parted -v |") || die "Unable to read from $parted";
     
    514516    $mode=1;
    515517} else {
    516     # RHEL 3 parted <= 1.6.3
     518    # RHEL 3 parted 1.6.3
     519    # RHEL 4 parted 1.6.19
    517520    $mode=0;
    518521}
     
    528531    if ($mode == 0) {
    529532        ($$start{$n},$$end{$n},$$type{$n},$void) = split(/ /,$d);
     533        $unit = 1;
    530534    } elsif ($mode == 1) {
    531535        ($$start{$n},$$end{$n},$size,$$type{$n},$void) = split(/ /,$d);
     536        $unit = $mega;
    532537    } else {
    533538        die "Undefined mode $mode";
     
    537542    $$type{$n} = "" if (not defined $$type{$n});
    538543    # Handles potential suffixes in latest parted version. Return MB
    539     $ret = decode_Bsuf($$start{$n},1048576);
     544    $ret = decode_Bsuf($$start{$n},$unit);
    540545    $$start{$n} = $ret;
    541     $ret = decode_Bsuf($$end{$n},1048576);
     546    $ret = decode_Bsuf($$end{$n},$unit);
    542547    $$end{$n} = $ret;
    543548    print FLOG "$n      $$start{$n}      $$end{$n}     $$type{$n}\n";
     
    553558
    554559#print FLOG "decode_Bsuf input: $size / $unit ";
    555 if ($size =~ /KB$/i) {
    556     $size =~ s/KB$//i;
     560if ($size =~ /K[B]*$/i) {
     561    $size =~ s/K[B]*$//i;
    557562    $size *= 1024;
    558 } elsif ($size =~ /MB$/i) {
    559     $size =~ s/MB$//i;
     563} elsif ($size =~ /M[B]*$/i) {
     564    $size =~ s/M[B]*$//i;
    560565    $size *= 1048576;
    561 } elsif ($size =~ /GB$/i) {
    562     $size =~ s/GB$//i;
     566} elsif ($size =~ /G[B]*$/i) {
     567    $size =~ s/G[B]*$//i;
    563568    $size *= 1073741824;
    564 } elsif ($size =~ /TB$/i) {
    565     $size =~ s/TB$//i;
     569} elsif ($size =~ /T[B]*$/i) {
     570    $size =~ s/T[B]*$//i;
    566571    $size *= 1099511627776;
    567572} else {
Note: See TracChangeset for help on using the changeset viewer.