Skript: OpenBSD Dowload und ISO Skript

Auch wenn es für mich bisher beruflich (leider) nicht ausschlaggebend war, so sehe ich in BSD Systemen mein „Next Level“. Irgendwann ist aus einer fernen Bewunderung eine ehrliche Hochachtung geworden. Hochachtung gegenüber den Entwicklern. Hochachtung gegenüber einem Weg, der mehr gradlinig zu sein scheint als der vieler anderer. Hochachtung gegenüber gebündelten Energien und dem verfolgen von Zielen, welche in keiner so breiten Masse fußen.

OpenBSD, FreeBSD und auch NetBSD haben nicht nur ihre Linie die sie verfolgen, sondern auch ihre Daten, die man unter umständen gern in seinem eigenen Netzwerk haben möchte.

Zumindest für OpenBSD habe ich im Internet zwei Skripte gefunden, welche für die jeweils gewünschte Version ein art kompletten Mirror anlegen und – bei Bedarf – sogar entsprechende ISO Dateien bereitstellen.

Cool ist das, wenn man Server hinter schwachen Leitungen betreiben möchte, oder einfach alles Griffbereit halten mag, wenn es zum Beispiel darum geht mehrere Server mit dem selben Datenbestand zu versorgen.

Selbstredend soll hier nur eine Ergänzung zum Kaufangebot aufgeführt werden. Die Projekte leben vom Verkauf, Spenden und der dem einbringen von Sachleistungen. 

Fesch_openbsd.txt

#!/bin/ksh
################################################################################
#
# A simple script for maintaining a current copy of OpenBSD.
# For example, to just grab the latest release for a given
# architecture:
#
# $ ./fetch_openbsd amd64
#
# or to grab a specific release:
#
# $ ./fetch_openbsd amd64 4.4
#
# or to grab the latest snapshot:
#
# $ ./fetch_openbsd amd64 snapshots
#
# Author: David C. Snyder - 09/05/2009
#
################################################################################
#
# Please choose a mirror that's close to you
# from http://www.openbsd.org/ftp.html#rsync
#
RSYNC_MIRROR=rsync://ftp.halifax.rwth-aachen.de/openbsd/
ARCH=$1
REL=$2
if [ -z "$ARCH" ]
then
echo "Usage: $0 architecture [release]"
exit 1
fi
if [ -z "$REL" ]
then
REL=`lynx -nolist -dump http://www.openbsd.org/ 2>/dev/null |
perl -ane '/ current release.*(d+.d+)/ and
do { print $1; "n"; exit }'`
fi
if [ -z "$REL" ]
then
echo "Could not detect latest release from openbsd.org!"
exit 2
fi
PARTS="
doc
${REL}/${ARCH}
${REL}/packages/${ARCH}
patches/${REL}/${ARCH}
"
for p in $PARTS
do
echo rsync -avhR --progress --delete-during ${RSYNC_MIRROR}$p .
done | sh -x

 

make_openbsd_iso.txt

#!/bin/sh
################################################################################
#
# make_openbsd_iso
#
# A simple script for creating an OpenBSD boot ISO from
# the specified distribution. For example:
#
# $ ./make_openbsd_iso amd64 snapshots
#
# or
#
# $ ./make_openbsd_iso amd64 4.5
#
# Author: David C. Snyder - 09/05/2009
#
################################################################################
ARCH=$1
REL=$2
DIR="${REL}/${ARCH}"
if [ -z "$REL" -o -z "$ARCH" ]
then
echo "Usage: $0 architecture release (eg. amd64 4.6)"
exit 1
fi
if [ -f ${DIR}/MD5 ]
then
(cd $DIR 2>/dev/null && md5sum -c MD5)
if [ $? -ne 0 ]
then
echo "The MD5 checksums don't match!"
exit 2
fi
SUM_FILE=${DIR}/MD5
fi
if [ -f ${DIR}/SHA256 ]
then
(cd 2>/dev/null $DIR && sha256sum -c SHA256)
if [ $? -ne 0 ]
then
echo "The SHA256 checksums don't match!"
exit 3
fi
SUM_FILE=${DIR}/SHA256
fi
if [ -z "$SUM_FILE" -o ! -f "$SUM_FILE" ]
then
echo "Could not find a checksum file!"
exit 4
fi
CD_PATH=`dirname `strings ${DIR}/cdbr | grep $ARCH | sed 's,^/,,'``
VER=`perl -e '
($d,$m,$y) = (localtime( (stat "'$SUM_FILE'")[9] ))[3..5];
printf "OpenBSD-'${ARCH}-${REL}'-%02d-%02d-%02d", $y%100, $m+1, $d;
'`
echo "mkisofs -no-emul-boot -m *.iso -v -r -T -J -V $VER -root ${CD_PATH} -b ${CD_PATH}/cdbr -c boot.catalog -o ${VER}.iso ${DIR}" | sh -x
echo ""
ls -l ${VER}.iso
echo ""
echo "- Now go buy some OpenBSD stuff from http://www.openbsd.org/orders.html !"

Source: Der Bode

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.