Creare slackware-install-dvd alleggerito: differenze tra le versioni
Da Slacky.eu.
| Riga 4: | Riga 4: | ||
| − | *** ATTENZIONE *** |
+ | <nowiki>*** ATTENZIONE ***</nowiki> |
Lo script non può essere usato per creare iso dal ramo CURRENT. |
Lo script non può essere usato per creare iso dal ramo CURRENT. |
||
| Riga 207: | Riga 207: | ||
</pre> |
</pre> |
||
* Autore: Ansa89 |
* Autore: Ansa89 |
||
| + | |||
| + | = Feedback = |
||
| + | Per commenti e suggerimenti inviatemi una e-mail a |
||
| + | |||
| + | |||
| + | ansa89[AT]slacky[DOT]it |
||
| + | |||
| + | |||
| + | |||
| + | |||
| + | Oppure venite sul mio sito internet |
||
| + | |||
| + | [http://stiiv.netsons.org] |
||
| + | |||
| + | |||
| + | |||
| + | HAVE A LOT OF FUN |
||
Versione delle 19:51, 28 gen 2009
Indice |
Descrizione
Con questo script si può creare una iso con dimensioni ridotte per l'installazione di slackware. In pratica il trucco sta nello scaricare solo i primi tre cd (quelli necessari all'installazione), scompattarli e creare una iso con il loro contenuto.
*** ATTENZIONE ***
Lo script non può essere usato per creare iso dal ramo CURRENT.
Requisiti
WGET --> home
MKISOFS --> home
Download
slackware-install-dvd_lite-v1.0 (home)
Script
Di seguito è riportato il codice dello script.
Versione 1.0
#!/bin/bash
#
# Questo script scarica i primi tre cd di slackware (necessari per una
# corretta installazione) e crea l'immagine iso da masterizzare su dvd
#
# Script creato il 28/1/2009 da Ansa89 (avrei dovuto studiare analisi...)
# Funzione per controllare le dipendenze
check_dep() {
# Controllo se wget e' installato
if [ -z "$(which wget)" ]; then
echo
echo "Devi avere WGET installato per usare questo script!"
echo
exit 1
fi
# Controllo se mkisofs e' installato
if [ -z "$(which mkisofs)" ]; then
echo
echo "Devi avere MKISOFS installato per usare questo script!"
echo
exit 1
fi
# Controllo se lo script e' eseguito come root
if [ "$(whomai)" == "root" ]; then
echo
echo "Devi eseguire questo script come utente normale!"
echo
exit 1
fi
}
# Dichiarazione variabili
WHOAMI="$(whoami)"
CD_ISO_DIR="$(pwd)"
FINAL_ISO_DIR="/tmp/slackware-install-dvd/"
SLACK_URL="ftp://ftp.fu-berlin.de/unix/linux/mirrors/slackware/"
NUM="d1 d2 d3"
VERSION="12.2"
# Funzione per scaricare i tre cd
download_cd() {
echo
echo "Quale versione di slackware vuoi scaricare?"
echo -ne "($VERSION)\t"
read VER
if [ -z "$VER" ]; then
VER=$VERSION
elif [ "$VER" == "current" ] || [ "$VER" == "-current" ]; then
echo
echo "Questo script funziona solo per il ramo STABLE"
echo "Esco"
echo
exit 1
fi
echo "In quale cartella vuoi salvare le iso? (Usare un path assoluto!!)"
echo -ne "($CD_ISO_DIR)\t"
read DIR
if [ -z $DIR ]; then
DIR=$CD_ISO_DIR
elif ! [ -e $DIR ]; then
mkdir -p $DIR
fi
# Scarico le iso
echo
echo "-- Inizio dowload --"
echo
cd $DIR
for cd_num in $NUM; do
wget -c $SLACK_URL/slackware-$VER-iso/slackware-$VER-install-$cd_num.iso
done
echo
echo "-- Fine download --"
echo
}
# Funzione per scompattare le iso
extract_cd() {
cd $DIR
# Creo la cartella dove copiare il contenuto delle iso
CPY_DIR="$DIR/iso_temp/"
rm -Rf $CPY_DIR
mkdir -p $CPY_DIR
# Creo la cartella dove montare le iso
mkdir ./mnt
for cd_num in $NUM; do
echo "Inserisci la password di root per montare la iso $cd_num"
su -c "mount -t iso9660 -o loop \
slackware-$VER-install-$cd_num.iso ./mnt/ ; \
cp -R ./mnt/* $CPY_DIR ; \
umount slackware-$VER-install-$cd_num.iso"
done
rm -Rf ./mnt
echo "Inserisci la password di root per settare i permessi delle cartelle"
su -c "chown -R $WHOAMI $CPY_DIR"
}
# Funzione per creare la iso finale
final_iso() {
cd $CPY_DIR
echo
echo "-- Inizio creazione iso --"
echo
mkisofs -o $FINAL_ISO_DIR/sackware-$VER-install-dvd.iso \
-R -J -V "Slackware Install" -hide-rr-moved \
-v -d -N -no-emul-boot -boot-load-size 4 -boot-info-table \
-sort isolinux/iso.sort -b isolinux/isolinux.bin \
-c isolinux/isolinux.boot -A "Slackware Install DVD"
if [ "$(echo $?)" != "0" ]; then
echo
echo "Qualcosa non e' andato bene :-("
echo "Esco"
echo
exit 1
else
echo
echo "-- Fine creazione iso --"
echo
echo "Congratulazioni! L'immagine iso e' stata salvata in $FINAL_ISO_DIR"
echo
fi
}
# Controllo le dipendenze
check_dep
case "$1" in
--all)
download_cd
extract_cd
final_iso
exit 0
;;
--create)
echo "Per quale versione di slackware vuoi creare la iso?"
echo -ne "($VERSION)\t"
read VER
if [ -z "$VER" ]; then
VER=$VERSION
elif [ "$VER" == "current" ] || [ "$VER" == "-current" ]; then
echo
echo "Questo script funziona solo per il ramo STABLE"
echo "Esco"
echo
exit 1
fi
echo "In quale cartella sono salvate le iso? (Usare un path assoluto!!)"
echo -ne "($CD_ISO_DIR)\t"
read DIR
if [ -z $DIR ]; then
DIR=$CD_ISO_DIR
elif ! [ -e $DIR ]; then
echo
echo "Path errato!"
echo
exit 1
fi
extract_cd
final_iso
exit 0
;;
*)
echo
echo "Opzioni valide:"
echo "$0 --all --> scarica i cd, li estrae e crea la iso"
echo "$0 --create --> estrae i cd e crea la iso"
echo -e "\t\t(I CD DEVONO ESSERE PRESENTI SU HD)"
echo
echo "Versione 1.0"
echo "By Ansa89 (ansa89@slacky.it || http://stiiv.netsons.org)"
echo
exit 1
;;
esac
#EOF
- Autore: Ansa89
Feedback
Per commenti e suggerimenti inviatemi una e-mail a
ansa89[AT]slacky[DOT]it
Oppure venite sul mio sito internet
HAVE A LOT OF FUN