X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=fai%2Fconfig%2Fscripts%2FLAST%2F50-misc;h=2a8f2f129a6b47faa295b2f34ed6507595317d2d;hb=7f77555b3d92709034fe41919358053c650c71e1;hp=62c31db7b3a3ceafe726aa5ad180a387fcce75a8;hpb=3bd65f0ca635f1349626c2393a4dd8a50df64f54;p=automated-distro-installer diff --git a/fai/config/scripts/LAST/50-misc b/fai/config/scripts/LAST/50-misc index 62c31db..2a8f2f1 100755 --- a/fai/config/scripts/LAST/50-misc +++ b/fai/config/scripts/LAST/50-misc @@ -1,23 +1,28 @@ #! /bin/bash -# copyright Thomas Lange 2001-2015, lange@debian.org +# copyright Thomas Lange 2001-2016, lange@debian.org error=0; trap 'error=$(($?>$error?$?:$error))' ERR # save maximum error code -# check if mdadm has been forgotten -if grep -q active /proc/mdstat 2>/dev/null; then +if [ "$FAI_ACTION" = "dirinstall" -o $do_init_tasks -eq 0 ] ; then + : +else + # check if mdadm has been forgotten + if grep -q active /proc/mdstat 2>/dev/null; then if [ ! -d $target/etc/mdadm ]; then echo ERROR: Found Software RAID, but the mdadm package was not installed error=1 fi -fi + fi -usedm=$(dmsetup ls | egrep -v '^live-rw|^live-base|^No devices found' | wc -l) -if [ $usedm -ne 0 ]; then - if [ ! -d $target/etc/lvm ]; then - echo ERROR: Found lvm devices, but the lvm2 package was not installed - error=1 - fi + # # commented because it does false possitive + # usedm=$(dmsetup ls | egrep -v '^live-rw|^live-base|^No devices found' | wc -l) + # if [ $usedm -ne 0 ]; then + # if [ ! -d $target/etc/lvm ]; then + # echo ERROR: Found lvm devices, but the lvm2 package was not installed + # error=1 + # fi + # fi fi # remove backup files from cfengine, but only if cfengine is installed @@ -41,7 +46,7 @@ if [ $do_init_tasks -eq 1 ] ; then fi # Make sure everything is configured properly -if ifclass DEBIAN ; then +if ifclass DEBIAN || ifclass UBUNTU; then echo "Running \"apt-get -f install\" for the last time." $ROOTCMD apt-get -f install fi @@ -54,4 +59,36 @@ fi # copy sources.list fcopy -iM /etc/apt/sources.list + +setrel() { + + # if release is not set, try to determine it + + if [ -n "$release" ]; then + return + fi + if [ ! -f $target/etc/os-release ]; then + return + fi + + dists="jessie stretch xenial trusty" + for d in $dists; do + if grep -iq $d $target/etc/os-release; then + release=$d + break + fi + done + echo "\$release set to $release" +} + +# if installation was done from CD, replace useless sources.list +setrel +if [ -f $target/etc/apt/sources.list -a -n "$release" ]; then + grep -q 'file generated by fai-cd' $target/etc/apt/sources.list && cat < $target/etc/apt/sources.list +deb http://httpredir.debian.org/debian $release main contrib non-free +deb http://httpredir.debian.org/debian-security $release/updates main contrib non-free +deb [trusted=yes] http://fai-project.org/download $release koeln +EOF +fi + exit $error