slitaz-tools annotate tinyutils/slitaz-installer.sh @ rev 16

Add autocreation of CRUB menu.list in slitaz-installer.sh
author Christophe Lincoln <pankso@slitaz.org>
date Tue Dec 04 13:07:42 2007 +0100 (2007-12-04)
parents 824e6610b8da
children b04ce844fbf2
rev   line source
pankso@8 1 #!/bin/sh
pankso@8 2 # SliTaz GNU/Linux text mode installer.
pankso@8 3 #
pankso@8 4 VERSION=beta
pankso@8 5
pankso@8 6 DRIVE_NAME=`cat /proc/sys/dev/cdrom/info | grep "drive name" | cut -f 3`
pankso@8 7 CDROM=/dev/$DRIVE_NAME
pankso@8 8 KERNEL=vmlinuz-`uname -r`
pankso@8 9
pankso@8 10 # Check if user is root.
pankso@8 11 check_root()
pankso@8 12 {
pankso@8 13 if test $(id -u) != 0 ; then
pankso@8 14 echo -e "
pankso@8 15 Vous devez être root pour continuer l'installation du système. Arrêt.
pankso@8 16 Vous pouvez utiliser 'su' suivi du mot de passe root pour devenir
pankso@8 17 administarteur.\n"
pankso@8 18 exit 0
pankso@8 19 fi
pankso@8 20 }
pankso@8 21
pankso@8 22 # Status function.
pankso@8 23 status()
pankso@8 24 {
pankso@8 25 local CHECK=$?
pankso@8 26 echo -en "\\033[70G[ "
pankso@8 27 if [ $CHECK = 0 ]; then
pankso@8 28 echo -en "\\033[1;33mOK"
pankso@8 29 else
pankso@8 30 echo -en "\\033[1;31mFailed"
pankso@8 31 fi
pankso@8 32 echo -e "\\033[0;39m ]"
pankso@8 33 }
pankso@8 34
pankso@8 35 # Basic informations.
pankso@8 36 echo ""
pankso@8 37 echo -e "\033[1mSliTaz GNU/Linux - Installateur mode texte\033[0m"
pankso@8 38 echo "================================================================================"
pankso@8 39 echo "
pankso@8 40 Bienvenue dans l'installateur en mode texte de SliTaz GNU/Linux. Il vous
pankso@8 41 suffirat de répondre à quelques questions lors des différentes étapes
pankso@8 42 d'installation. Avant de commencer, assurer vous de connaître le nom de la
pankso@8 43 partitions sur laquelle vous désirez installer SliTaz. L'installateur va
pankso@8 44 commencer par vous proposer de formater la partition cible et la monter.
pankso@8 45 Ensuite il va monter le cdrom, décompresser les fichiers et les installer
pankso@8 46 sur la cible. Pour finir, vous aurez aussi la possibilité d'installer le
pankso@8 47 gestionnaire de démarrage GRUB, si besoin est. A noter que pour continuer
pankso@8 48 cette installation, vous devez avoir les droits d'administrateur root, qui
pankso@8 49 peuvent s'obtenir via la commande 'su' et le mot de passe 'root'."
pankso@8 50 echo ""
pankso@8 51 echo "================================================================================"
pankso@8 52 echo ""
pankso@8 53
pankso@8 54 echo -n "Commencer l'installation (oui/Non) ? "; read anser
pankso@8 55 if [ ! "$anser" = "oui" ]; then
pankso@8 56 echo -e "\nArrêt volontaire.\n"
pankso@8 57 exit 0
pankso@8 58 fi
pankso@8 59
pankso@8 60 # Exit install if user is not root.
pankso@8 61 #check_root
pankso@8 62
pankso@8 63 # Ask for partitions.
pankso@8 64 echo "
pankso@8 65 Veuilliez indiquer la partition à utiliser pour installer SliTaz,
pankso@8 66 exemple : /dev/hda1."
pankso@8 67 echo ""
pankso@8 68 echo -n "Partition à utiliser ? "; read anser
pankso@8 69 if [ "$anser" == "" ]; then
pankso@8 70 echo -e "\nPas de partition spécifiée. Arrêt.\n"
pankso@8 71 exit 0
pankso@8 72 else
pankso@8 73 TARGET_DEV=$anser
pankso@8 74 fi
pankso@8 75
pankso@8 76 # Mkfs if needed/wanted.
pankso@8 77 echo "
pankso@8 78 SliTaz va être installé sur la partition : $TARGET_DEV"
pankso@8 79 echo ""
pankso@8 80 echo -n "Faut t'il formater la partition en ext3 (oui/Non) ? "; read anser
pankso@8 81 if [ "$anser" == "oui" ]; then
pankso@8 82 mkfs.ext3 $TARGET_DEV
pankso@8 83 else
pankso@8 84 echo "Le système de fichiers déjà présent sera utilisé..."
pankso@8 85 fi
pankso@8 86
pankso@8 87 # Mount.
pankso@8 88 echo "Montage de la partitions et du cdrom..."
pankso@8 89 mkdir -p /mnt/target /media/cdrom
pankso@8 90 mount $TARGET_DEV /mnt/target
pankso@8 91 mount -t iso9660 $CDROM /media/cdrom
pankso@8 92
pankso@8 93 # Copy and install.
pankso@14 94 echo -n "Création du répertoire /boot..."
pankso@8 95 mkdir -p /mnt/target/boot
pankso@14 96 status
pankso@14 97 echo -n "Copie du noyau Linux..."
pankso@8 98 cp /media/cdrom/boot/bzImage /mnt/target/boot/$KERNEL
pankso@14 99 status
pankso@8 100
pankso@14 101 if [ -f /media/cdrom/boot/rootfs.lz ]; then
pankso@14 102 echo -n "Copie du système de fichier racine..."
pankso@14 103 cp /media/cdrom/boot/rootfs.lz /mnt/target
pankso@14 104 status
pankso@14 105 # Extract lzma rootfs
pankso@14 106 echo "Extraction du système de fichiers racine (rootfs.lz)..."
pankso@14 107 cd /mnt/target
pankso@14 108 lzma d rootfs.lz rootfs.cpio
pankso@14 109 cpio -id < rootfs.cpio
pankso@16 110 echo -n "Suppression des fichiers copiés..."
pankso@16 111 rm rootfs.cpio rootfs.lz init
pankso@14 112 status
pankso@14 113 else
pankso@14 114 echo -n "Copie du système de fichier racine..."
pankso@14 115 cp /media/cdrom/boot/rootfs.gz /mnt/target
pankso@14 116 status
pankso@14 117 # Extract gziped rootfs
pankso@14 118 echo "Extraction du système de fichiers racine (rootfs.gz)..."
pankso@14 119 cd /mnt/target
pankso@14 120 gzip -d rootfs.gz && cpio -id < rootfs
pankso@14 121 echo -n "Suppression des fichiers inutiles..."
pankso@14 122 rm rootfs init
pankso@14 123 status
pankso@14 124 fi
pankso@14 125
pankso@16 126 # Creat the target GRUB configuration.
pankso@16 127 #
pankso@14 128 if [ ! -f /mnt/target/boot/grub/menu.lst ]; then
pankso@16 129 echo "Creating default GRUB menu.lst..."
pankso@14 130 mkdir -p /mnt/target/boot/grub
pankso@16 131 cat > /mnt/target/boot/grub/menu.lst << EOF
pankso@16 132 # /boot/grub/menu.lst: GRUB boot loader configuration.
pankso@16 133 #
pankso@16 134
pankso@16 135 # By default, boot the first entry.
pankso@16 136 default 0
pankso@16 137
pankso@16 138 # Boot automatically after 20 secs.
pankso@16 139 timeout 20
pankso@16 140
pankso@16 141 # Change the colors.
pankso@16 142 color yellow/brown light-green/black
pankso@16 143
pankso@16 144 # For booting SliTaz from : $TARGET_DEV
pankso@16 145 #
pankso@16 146 title SliTaz GNU/Linux (cooking) (Kernel $KERNEL)
pankso@16 147 root(hd0,0)
pankso@16 148 kernel /boot/$KERNEL root=$TARGET_DEV
pankso@16 149
pankso@16 150 EOF
pankso@16 151 fi
pankso@8 152
pankso@8 153 # End info
pankso@8 154 echo ""
pankso@8 155 echo -e "\033[1mInstallation terminée\033[0m
pankso@8 156 ================================================================================
pankso@8 157
pankso@8 158 Avant de redémarrer sur votre nouveau système SliTaz GNU/Linux, veuillez vous
pankso@8 159 assurer qu'un gestionnaire de démarrage est bien installé. Si ce n'est pas le
pankso@8 160 cas vous pouvez lancer la commande (en modifiant 'hda' en fonction de votre
pankso@8 161 système) :
pankso@8 162
pankso@8 163 # grub-install --root-directory=/mnt/target /dev/hda
pankso@8 164
pankso@16 165 Les lignes suivantes on été ajoutées au fichier de configuration de GRUB
pankso@16 166 /boot/grub/menu.lst de la cible. Elles feront démarrer SliTaz en modifiant
pankso@16 167 la valeure root(hd0,0) en fonction de votre système. Si vous n'installé pas
pankso@16 168 GRUB, vous pouvez utiliser ces même lignes dans un autre fichier menu.lst,
pankso@16 169 situé sur une autre partitions :
pankso@8 170
pankso@8 171 title SliTaz GNU/Linux (cooking) (Kernel $KERNEL)
pankso@8 172 root(hd0,0)
pankso@8 173 kernel /boot/$KERNEL root=$TARGET_DEV
pankso@8 174
pankso@8 175 ================================================================================"
pankso@8 176 echo ""