Magellan Linux

Diff of /trunk/installer-simple/bin/installer.sh.in

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2430 by niro, Tue Jan 7 14:14:23 2014 UTC revision 2441 by niro, Tue Jan 7 14:46:13 2014 UTC
# Line 293  run_hardware_detection() Line 293  run_hardware_detection()
293   #removable=1   #removable=1
294   #fi   #fi
295   #done   #done
296     ## smartcard = udevadm info -n /dev/sda -a | grep -i 'configuration.*card'
297    
298   ## only add this for grub legacy, grub2 detect these settings on its own   ## only add this for grub legacy, grub2 detect these settings on its own
299   #export GRUBLEGACYOPTS="rootdelay=8"   #export GRUBLEGACYOPTS="rootdelay=8"
# Line 369  setup_hdd_partitions_auto() Line 370  setup_hdd_partitions_auto()
370  {  {
371   ROOTHDD="${HDD}1"   ROOTHDD="${HDD}1"
372    
373     # sanity check - should not happen
374     if is_mounted --device "${ROOTHDD}"
375     then
376     echo "partition: device ${ROOTHDD} is already mounted, umount it" >&2
377     umount "${ROOTHDD}"
378     fi
379    
380   # run this only if FDISKPARTITIONBELOW256MB is not already 1   # run this only if FDISKPARTITIONBELOW256MB is not already 1
381   if [[ ${FDISKPARTIONBELOW256MB} != 1 ]]   if [[ ${FDISKPARTIONBELOW256MB} != 1 ]]
382   then   then
# Line 430  EOF Line 438  EOF
438  setup_hdd_partitions_manual()  setup_hdd_partitions_manual()
439  {  {
440   ROOTHDD="${HDD}1"   ROOTHDD="${HDD}1"
441     SWAPHDD=""
442   ## hdds partitionieren manual   BOOTHDD=""
443   cfdisk ${HDD} || dialog_die   cfdisk ${HDD} || dialog_die
444  }  }
445    
446  setup_hdd_format()  setup_hdd_format()
447  {  {
448   mke2fs -j -q ${ROOTHDD} || dialog_die   # sanity check - should not happen
449     if is_mounted --device "${ROOTHDD}"
450     then
451     echo "format: device ${ROOTHDD} is already mounted, umount it" >&2
452     umount "${ROOTHDD}"
453     fi
454    
455     mkfs."${FORMAT_FILESYSTEM}" -q "${ROOTHDD}" || dialog_die
456  }  }
457    
458  install_mount_rootfs()  install_mount_rootfs()
459  {  {
460   mount ${ROOTHDD} ${INSTALLROOT} || dialog_die   is_mounted --location "${INSTALLROOT}" || mount "${ROOTHDD}" "${INSTALLROOT}"
461   install -d ${INSTALLROOT}/boot || dialog_die   install -d ${INSTALLROOT}/boot || dialog_die
  cd ${INSTALLROOT} || dialog_die  
462  }  }
463    
464  install_system_image()  install_system_image()
465  {  {
466     pushd ${INSTALLROOT} > /dev/null
467   tar xvjpf ${CDROOT}/system/${CDIMAGENAME} -C ${INSTALLROOT}   tar xvjpf ${CDROOT}/system/${CDIMAGENAME} -C ${INSTALLROOT}
468     popd > /dev/null
469  }  }
470    
471  install_bootsector_chroot()  install_bootsector_chroot()
# Line 498  install_bootsector_chroot() Line 514  install_bootsector_chroot()
514   [[ -z ${KRNIMG} ]] && KRNIMG="vmlinuz"   [[ -z ${KRNIMG} ]] && KRNIMG="vmlinuz"
515    
516   # uuid support   # uuid support
517   if is_uuid_supported   my_roothdd="UUID=$(get_uuid ${ROOTHDD})"
  then  
  my_roothdd="UUID=$(get_uuid ${ROOTHDD})"  
  else  
  my_roothdd="${ROOTHDD}"  
  fi  
518    
519   : > ${grubconf} || dialog_die   : > ${grubconf} || dialog_die
520   echo "default 0" >> ${grubconf} || dialog_die   echo "default 0" >> ${grubconf} || dialog_die
# Line 553  exit 0 Line 564  exit 0
564  CHROOTEOF  CHROOTEOF
565   fi   fi
566    
567   ## enter chroot   # run installrc
568   mount -t proc proc ${INSTALLROOT}/proc   chrooted /bin/bash --rcfile /root/.installrc -i
  mount -t sysfs sysfs ${INSTALLROOT}/sys  
  mount -o bind /dev ${INSTALLROOT}/dev  
  chroot ${INSTALLROOT} /bin/bash --rcfile /root/.installrc -i  
  umount ${INSTALLROOT}/proc  
  umount ${INSTALLROOT}/sys  
  umount ${INSTALLROOT}/dev  
569   rm ${INSTALLROOT}/root/.installrc   rm ${INSTALLROOT}/root/.installrc
570  }  }
571    
 is_initrd_supported()  
 {  
  # only generate initrds if the cmd exists  
  [[ -x ${INSTALLROOT}/sbin/mkinitrd ]] && return 0  
  return 1  
 }  
   
572  install_initrd_chroot()  install_initrd_chroot()
573  {  {
574   # only generate initrds if the cmd exists   # only generate initrds if the cmd exists
# Line 613  mkinitrd -f /boot/$(readlink /boot/initr Line 611  mkinitrd -f /boot/$(readlink /boot/initr
611  exit 0  exit 0
612  CHROOTEOF  CHROOTEOF
613    
614   ## enters chroot   # run installrc
615   mount -t proc proc ${INSTALLROOT}/proc   chrooted /bin/bash --rcfile /root/.installrc -i
  mount -t sysfs sysfs ${INSTALLROOT}/sys  
  mount -o bind /dev ${INSTALLROOT}/dev  
  chroot ${INSTALLROOT} /bin/bash --rcfile /root/.installrc -i  
  umount ${INSTALLROOT}/proc  
  umount ${INSTALLROOT}/sys  
  umount ${INSTALLROOT}/dev  
616   rm ${INSTALLROOT}/root/.installrc   rm ${INSTALLROOT}/root/.installrc
617  }  }
618    
 is_uuid_supported()  
 {  
  if [[ -x $(type -P busybox.mkinitrd) ]]  
  then  
  # only detect uuids if supported  
  if [[ ! -z $(busybox.mkinitrd | grep blkid) ]]  
  then  
  return 0  
  fi  
  fi  
   
  return 1  
 }  
   
 get_uuid()  
 {  
  local UUID  
  local SEC_TYPE  
  local TYPE  
   
  local dev="$1"  
  [[ -z ${dev} ]] && dialog_die "no dev given"  
   
  # check if given device is already an UUID  
  if [[ ${dev/UUID=/}x != ${dev}x ]]  
  then  
  eval "${dev}"  
  else  
  eval $(busybox.mkinitrd blkid ${dev} | grep "${dev}:" | sed 's/.*:\ //')  
  fi  
  echo "${UUID}"  
 }  
   
619  install_system_settings()  install_system_settings()
620  {  {
621   # schreibe fstab   # schreibe fstab
622   if is_uuid_supported   echo -e "UUID=$(get_uuid ${ROOTHDD})\t/\t${FORMAT_FILESYSTEM}\tnoatime\t0 0" >> ${INSTALLROOT}/etc/fstab || dialog_die
  then  
  echo -e "UUID=$(get_uuid ${ROOTHDD})\t/\t${FORMAT_FILESYSTEM}\tnoatime\t0 0" >> ${INSTALLROOT}/etc/fstab || dialog_die  
  else  
  echo -e "${ROOTHDD}\t/\t${FORMAT_FILESYSTEM}\tnoatime\t0 0" >> ${INSTALLROOT}/etc/fstab || dialog_die  
  fi  
623   # not needed busybox loads all with swapon -a, even if not mentioned in fstab   # not needed busybox loads all with swapon -a, even if not mentioned in fstab
624   #echo -e "UUID='$(get_uuid ${SWAPHDD})'\tswap\tswap\tpri=1\t0 0" >> ${INSTALLROOT}/etc/fstab || dialog_die   #echo -e "UUID='$(get_uuid ${SWAPHDD})'\tswap\tswap\tpri=1\t0 0" >> ${INSTALLROOT}/etc/fstab || dialog_die
625   echo -e "proc\t/proc\tproc\tdefaults\t0 0" >> ${INSTALLROOT}/etc/fstab || dialog_die   echo -e "proc\t/proc\tproc\tdefaults\t0 0" >> ${INSTALLROOT}/etc/fstab || dialog_die
# Line 690  install_system_settings() Line 644  install_system_settings()
644    
645  install_umount_rootfs()  install_umount_rootfs()
646  {  {
647   cd /   is_mounted --location ${INSTALLROOT}/boot && umount ${INSTALLROOT}/boot
648   umount ${INSTALLROOT}/boot || dialog_die   is_mounted --location ${INSTALLROOT} && umount ${INSTALLROOT}
  umount ${INSTALLROOT} || dialog_die  
649  }  }
650    
651  install_do_reboot()  install_do_reboot()
# Line 717  run_install_normal() Line 670  run_install_normal()
670   dialog_install_settings   dialog_install_settings
671   sleep 1   sleep 1
672   install_system_settings   install_system_settings
673   dialog_install_initrd   if is_initrd_supported
674   install_initrd_chroot   then
675     dialog_install_initrd
676     initrd_config
677     initrd_install
678     fi
679    
680   dialog_install_bootsector   dialog_install_bootsector
681   install_bootsector_chroot   bootloader_config
682     bootloader_install
683    
684   install_umount_rootfs   install_umount_rootfs
685   dialog_install_successful   dialog_install_successful
# Line 740  run_install_auto() Line 698  run_install_auto()
698   dialog_install_settings   dialog_install_settings
699   sleep 1   sleep 1
700   install_system_settings   install_system_settings
701   dialog_install_initrd   if is_initrd_supported
702   install_initrd_chroot   then
703     dialog_install_initrd
704     initrd_config
705     initrd_install
706     fi
707    
708   dialog_install_bootsector   dialog_install_bootsector
709   install_bootsector_chroot   bootloader_config
710     bootloader_install
711    
712   install_umount_rootfs   install_umount_rootfs
713   dialog_install_successful   dialog_install_successful

Legend:
Removed from v.2430  
changed lines
  Added in v.2441