FreeBSD - Jail Erstellung (Bash Script)

theclaw

Doofmannsgehilfe
Code:
#!/usr/local/bin/bash
clear
echo " *ACHTUNG*ACHTUNG*ACHTUNG*ACHTUNG*ACHTUNG*ACHTUNG*ACHTUNG*ACHTUNG* "
echo ""
echo "######################################################################"
echo "# DRAN DENKEN! Lies erst die Manpages!!! Dieses Script hilft dir nur #"
echo "# beim erstellen deines Jails! Es konfiguriert es nicht für dich! #"
echo "# Also #"
echo "# man jail #"
echo "######################################################################"
echo "# #"
echo -n "Verzeichnis zur Erstellung (z.B. /usr/jail/): "; read NAME1
echo -n "Name des Jails (z.B. jail1): "; read NAME2
export NAME=$NAME1$NAME2
echo -n "IP-Adresse des Jails (z.B. 192.168.0.10): "; read JAILIP
echo -n "Hostname des Jails: (z.B. jailtest): "; read JAILHOST
echo -n "Interface des Jails: (z.B. xl0): "; read IFACE
echo "------------------------------------------------------------------"
echo "Zusammenfassung:"
echo "Name/Ort des Jails: $NAME"
echo "IP des Jails: $JAILIP"
echo "Hostname des Jails: $JAILHOST"
echo "Interface: $IFACE"
echo "------------------------------------------------------------------"
echo -n "Fortfahren? [y/n] "; read WEITER
if [ "$WEITER" = "n" ]; then
echo "Abgebrochen..."
elif [ "$WEITER" = "y" ]; then
clear
echo "Die Welt wird jetzt gebaut. Bitte vergewissere dich das du"
echo "alle sourcen installiert hast! Dieser Vorgang kann einige"
echo "Stunden dauern. Du findest das System dann in "
echo "$NAME - das ist dann auch das Verzeichnis in dem sich"
echo "deine Jail befindet! "
echo -n "Fortfahren? [y/n] "; read WEITER2
if [ "$WEITER2" = "y" ]; then
cd /usr/src
mkdir -p $NAME
make world DESTDIR=$NAME
cd etc
make distribution DESTDIR=$NAME -DNO_MAKEDEV_RUN
cd $NAME/dev
sh MAKEDEV jail
mkdir $NAME/stand
cp /stand/sysinstall $NAME/stand/
cd $NAME;
ln -sf dev/null kernel
clear
echo "Das Jail wurde erfolgreich gebaut!"
elif [ "$WEITER2" = "n" ]; then
echo "Abgebrochen..."
exit
else
echo "Bitte 'y' oder 'n' eingeben!"
exit
fi
echo -n "Soll ein Startscript angelegt werden? [y/n] "; read STARTSCRIPT
if [ "$STARTSCRIPT" = "y" ]; then
touch /root/startjail$NAME2.sh
chmod 700 /root/startjail$NAME2.sh
echo "#!/usr/local/bin/bash" >> /root/startjail$NAME2.sh
echo "ifconfig $IFACE inet alias $JAILIP/32" >> /root/startjail$NAME2.sh
echo "mount -t procfs proc $NAME/proc" >> /root/startjail$NAME2.sh
echo "jail $NAME $JAILHOST $JAILIP /bin/sh /etc/rc" >> /root/startjail$NAME2.sh
echo "Alles klar! Das Script wurde erstellt!"
echo "Du kannst es nun über /root/startjail$NAME2.sh starten!"
exit
elif [ "$CONFIG" = "n" ]; then
clear
echo "Das Jail befindet sich in $NAME, du musst es jetzt noch"
echo "Konfigurieren, wie das geht erfährst du in der manpage von"
echo "jail(8). Viel Spaß beim Konfigurieren und rumspielen. =)"
exit
else
echo "Bitte 'y' oder 'n' eingeben"
exit
fi
fi
 
kleine empfehlung,

das #!/usr/local/bin/bash durch #!/bin/sh ersetzen, bash ist auf freebsd nicht per default installiert. und sh tuts dafür auch.

achja, wenn man dieses startscript was dabei erstellt wird nutzt, bekommt man ein


ps: cannot mmap corefile


und nix tut. :) denke mal liegt am devfs - ?
 
Zurück
Oben