diff options
| author | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2022-02-10 21:39:16 +0100 |
|---|---|---|
| committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2022-02-10 21:39:23 +0100 |
| commit | 81d4c8b62469e31bc1739278d7d9ffa6d86d7ffc (patch) | |
| tree | 2af60dbd889ed100761981d97185101864c346e0 | |
| parent | 7078eef8ff772bb1424bb5c53f038a49329375b9 (diff) | |
| download | debian-edu-fai+itzks-81d4c8b62469e31bc1739278d7d9ffa6d86d7ffc.tar.gz debian-edu-fai+itzks-81d4c8b62469e31bc1739278d7d9ffa6d86d7ffc.tar.bz2 debian-edu-fai+itzks-81d4c8b62469e31bc1739278d7d9ffa6d86d7ffc.zip | |
fai/config/basefiles/mk-basefile: Drop file. Not needed here.
| -rwxr-xr-x | fai/config/basefiles/mk-basefile | 304 |
1 files changed, 0 insertions, 304 deletions
diff --git a/fai/config/basefiles/mk-basefile b/fai/config/basefiles/mk-basefile deleted file mode 100755 index b4151ae..0000000 --- a/fai/config/basefiles/mk-basefile +++ /dev/null @@ -1,304 +0,0 @@ -#! /bin/bash - -# mk-basefile, create basefiles for some distributions -# -# Thomas Lange, Uni Koeln, 2011-2018 -# based on the Makefile implementation of Michael Goetze -# -# Usage example: mk-basefile -J STRETCH64 -# This will create a STRETCH64.tar.xz basefile. - -# Supported distributions (each i386/amd64): -# Debian GNU/Linux -# Ubuntu 14.04/16.04 -# CentOS 5/6/7 -# Scientific Linux Cern 5/6 -# -# Packages you might want to install to use this command: -# debootstrap, rinse, xz-utils - - -# Define your local mirros here -# For the first stage, set the CentOS/SLC mirror in /etc/rinse/rinse.conf -MIRROR_DEBIAN=http://deb.debian.org/debian/ -MIRROR_UBUNTU=http://mirror.netcologne.de/ubuntu/ -MIRROR_CENTOS=http://mirror.netcologne.de/ - -EXCLUDE_SQUEEZE=isc-dhcp-client,isc-dhcp-common,info -EXCLUDE_WHEEZY=info -EXCLUDE_JESSIE=info -EXCLUDE_STRETCH=info -EXCLUDE_BUSTER= -EXCLUDE_BULLSEYE= -EXCLUDE_SID= - -EXCLUDE_TRUSTY=dhcp3-client,dhcp3-common,info -EXCLUDE_XENIAL=udhcpc,dibbler-client,info -EXCLUDE_BIONIC=udhcpc,dibbler-client,info - -# here you can add packages, that are needed very early -INCLUDE_DEBIAN= - - -setarch() { - - l32= - if [ X$1 = Xi386 ]; then - l32=linux32 - fi -} - -check() { - - if [ `id -u` != 0 ]; then - echo "You must be root to create chroots." - exit 1 - fi - mknod $xtmp/test-dev-null c 1 3 - if [ $? -eq 1 ]; then - echo "Cannot create device files on $xtmp, aborting." - echo "Perhaps this directory is mounted with option nodev." - rm -rf $xtmp - exit 1 - fi - echo test > $xtmp/test-dev-null - if [ $? -eq 1 ]; then - echo "Cannot create device files on $xtmp, aborting." - echo "Perhaps this directory is mounted with option nodev." - rm -rf $xtmp - exit 1 - fi - rm -f $xtmp/test-dev-null -} - - -mkpost-centos() { - - # set local mirror for rinse post script - [ -z "$MIRROR_CENTOS" ] && return - cat <<EOM > $xtmp/post -#! /bin/sh -mkdir -p $xtmp/etc/yum.repos.d/orig -cp -p $xtmp/etc/yum.repos.d/*.repo $xtmp/etc/yum.repos.d/orig -perl -pi -e 's,mirrorlist=,#mirrorlist=,; s,#baseurl=http://mirror.centos.org,baseurl=$MIRROR_CENTOS,;' $xtmp/etc/yum.repos.d/CentOS-Base.repo -EOM - chmod 555 $xtmp/post -} - - -mkpost-slc() { - - # set local mirror for rinse post script - ver=$1 - [ -z "$MIRROR_SLC" ] && return - cat <<EOM > $xtmp/post -#! /bin/sh -mkdir -p $xtmp/etc/yum.repos.d/orig -cp -p $xtmp/etc/yum.repos.d/*.repo $xtmp/etc/yum.repos.d/orig -perl -pi -e 's,baseurl=http://linuxsoft.cern.ch,baseurl=$MIRROR_SLC,;' $xtmp/etc/yum.repos.d/slc$ver-os.repo -perl -pi -e 's,baseurl=http://linuxsoft.cern.ch,baseurl=$MIRROR_SLC,;' $xtmp/etc/yum.repos.d/slc$ver-updates.repo - -EOM - chmod 555 $xtmp/post -} - - -cleanup-deb() { - - chroot $xtmp apt-get clean - rm -f $xtmp/etc/hostname $xtmp/etc/resolv.conf \ - $xtmp/var/lib/apt/lists/*_* $xtmp/usr/bin/qemu-*-static \ - $xtmp/etc/udev/rules.d/70-persistent-net.rules - > $xtmp/etc/machine-id -} - - -cleanup-rinse() { - - # check if chroot works - echo "Installed packages in chroot:" - chroot $xtmp rpm -qa|sort - echo -n "CHROOT rpm -qa: " - chroot $xtmp rpm -qa|wc -l - - rm -f $xtmp/etc/resolv.conf $xtmp/post - if [ -d $xtmp/etc/yum.repos.d/orig ]; then - mv $xtmp/etc/yum.repos.d/orig/* $xtmp/etc/yum.repos.d/ - rm -rf $xtmp/etc/yum.repos.d/orig - fi -} - - -tarit() { - - tar $attributes --one-file-system -C $xtmp -cf - . | $zip > $target.$ext -} - - -centos() { - - local arch=$1 - local vers=$2 - local domain=$(domainname) - - check - setarch $arch - mkpost-centos - $l32 rinse --directory $xtmp --distribution centos-$vers --arch $arch --before-post-install $xtmp/post - domainname $domain # workaround for #613377 - cleanup-rinse - tarit -} - - -slc() { - - local arch=$1 - local vers=$2 - - check - setarch $arch - mkpost-slc $vers - $l32 rinse --directory $xtmp --distribution slc-$vers --arch $arch --before-post-install $xtmp/post - cleanup-rinse - tarit -} - - -debgeneric() { - - local DIST=$1 - shift - local mirror=$1 - shift - local arch=$1 - - dist=${DIST%%[0-9][0-9]} - local exc="EXCLUDE_$dist" - [ -n "${!exc}" ] && exc="--exclude=${!exc}" || unset exc - dist=${dist,,} - - check - if [ -n "$INCLUDE_DEBIAN" ]; then - local inc="--include=$INCLUDE_DEBIAN" - fi - - if [ -n "$arch" ]; then - qemu-debootstrap --arch $arch ${exc} $inc $dist $xtmp $mirror - target="${target}_${arch^^}" - else - if [[ $DIST =~ 64 ]]; then - arch=amd64 - else - arch=i386 - fi - debootstrap --arch $arch ${exc} $inc $dist $xtmp $mirror - fi - cleanup-deb - tarit -} - -prtdists() { - - echo "Available: - - CENTOS5_32 CENTOS5_64 - CENTOS6_32 CENTOS6_64 - CENTOS7_32 CENTOS7_64 - SLC5_32 SLC5_64 - SLC6_32 SLC6_64 - SLC7_64 - TRUSTY32 TRUSTY64 - XENIAL32 XENIAL64 - BIONIC64 - SQUEEZE32 SQUEEZE64 - WHEEZY32 WHEEZY64 - JESSIE32 JESSIE64 - STRETCH32 STRETCH64 - BUSTER32 BUSTER64 - SID32 SID64 -" -} - -usage() { - - cat <<EOF -mk-basefile, create minimal base files for a Linux distritubtion - - Copyright (C) 2011-2018 by Thomas Lange - -Usage: mk-basefile [OPTION] ... DISTRIBUTION - - -s Show list of supported linux distributions - -f ARCH Build for foreign architecture ARCH. - -d DIR Use DIR for creating the temporary subtree structure. - -z Use gzip for compressing the tar file. - -J Use xz for compressing the tar file. - -k Keep the temporary subtree structure, do not remove it. - -h Print help. - - Usage example: mk-basefile -J STRETCH64 - This will create a STRETCH64.tar.xz basefile. - -EOF - exit 0 -} - -# main routine - -ext=tar -zip=cat -attributes= -cleanup=1 -attributes="--xattrs --selinux --acls" - -while getopts ashzJd:kf: opt ; do - case "$opt" in - a) echo "$0: Warning. -a is ignored, because xtattrs, acls and selinux are always added." ;; - d) export TMPDIR=$OPTARG ;; - f) export ARCH=$OPTARG ;; - z) zip="gzip -9"; ext=tar.gz ;; - J) zip="xz -8" ext=tar.xz ;; - k) cleanup=0 ;; - h) usage ;; - s) prtdists ; exit 0;; - ?) exit 3 ;; # error in option parsing - esac -done -shift $(($OPTIND - 1)) - -xtmp=$(mktemp --tmpdir -d basefiles.XXXXXXXX) -if [ $? -eq 1 ]; then - echo "mktemp failed. Aborting." - exit 2 -fi -chmod 755 $xtmp - -target=$1 # also the name of the output file - -[ -z "$target" ] && usage -case "$target" in - CENTOS5_32) centos i386 5 ;; - CENTOS5_64) centos amd64 5 ;; - CENTOS6_32) centos i386 6 ;; - CENTOS6_64) centos amd64 6 ;; - CENTOS7_32) centos i386 7 ;; - CENTOS7_64) centos amd64 7 ;; - SLC5_32) slc i386 5 ;; - SLC5_64) slc amd64 5 ;; - SLC6_32) slc i386 6 ;; - SLC6_64) slc amd64 6 ;; - SLC7_64) slc amd64 7 ;; - TRUSTY*|XENIAL*|BIONIC*) - debgeneric $target $MIRROR_UBUNTU ;; - SQUEEZE*|WHEEZY*|JESSIE*|STRETCH*|BUSTER*|BULLSEYE*|SID*) - debgeneric $target $MIRROR_DEBIAN $ARCH;; - *) echo "Unknown distribution. Aborting." - prtdists - exit 99 ;; -esac - -# cleanup -if [ $cleanup -eq 1 ]; then - rm -rf $xtmp -fi |
