Informatique

[Linux  -  Toutes distributions]



        Scripts shell Bash

           Version : 3.1.2.1 Site 'ERMAIA Copie libre (sous licence GNU)


Les deux scripts MONTER et CHROOTER (cf. ci-après) interfacent les commandes MOUNT et CHROOT, en mode graphique (terminal virtuel) ou sur une console texte.

Ils sont écrits avec AWK et DIALOG ; FSARCHIVER est utilisé pour lister les disques durs et les partitions.
[ Un troisième script est nécessaire ('montreFST.sh')]


1. Script MONTER :            [ Capture d'écran et script, ici ]

1.1. Les partitions sont montées sur '/mnt/' le nom de la partition est /dev/['partition'] (exemple : '/mnt/sda3'.
Si le point de montage n'existe pas, il est créé.

Les versions > 3.00 sont capables de monter les partitions qui sont au format UFS (lecture seule).

1.2. Options :


2. Script CHROOTER :        [ Captures d'écran et script, ici ]

2.1. Le script CHROOTER est appelé habituellement par le script MONTER [option : '--chroot'].

Il peut être exécuté seul, dès lors que la partition à travailler est déjà montée sur /mnt/ et que l'on a utilisé comme nom de montage l'identifiant /dev/['partition'] : ('/mnt/sda1', par exemple)

Le script lie (mount –bind) les répertoires :

Le script permet d’accéder à Internet et de faire tourner des applications graphiques.
Le script sort du chroot, proprement, en démontant tous les répertoires :    umount -v --recursive /mnt/$Partition


2.2.
Option unique :


3. Script 'montreFST.sh' :            [ Script, ici ]

Script appelé par le script MONTER (n'a pas vocation à être exécuté seul).



4.
Implantation :

4.1. Ces scripts sont à copier/coller dans le répertoire /usr/bin/ d’une distribution Linux (tournant avec ou sans interface graphique).

4.2. Ces scripts pourraient aussi trouver une certaine utilité pour qui utiliseraient la boîte à outils « SYSTEMRESCUE » qui tourne sur une clef USB, ou sur l’une des partitions du disque dur d’un ordinateur.

En ce cas, GRUB amorce directement l’ISO de SYSTEMRESCUE avec la séquence suivante :

{

load_video

insmod gzio

insmod part_gpt

insmod part_msdos

insmod ext2

rmmod tpm

set iso_path="/ISOS/systemrescue.iso"

search --no-floppy --set=root --file $iso_path

loopback loop $iso_path

echo "Je sonde ..."

probe -u $root --set=iso_disk

echo "Chargement du noyau ..."

linux (loop)/sysresccd/boot/x86_64/vmlinuz img_dev=/dev/disk/by-uuid/$iso_disk img_loop=$iso_path archisobasedir=sysresccd copytoram setkmap=fr-latin9 index=off metacopy=off cow_label=Stockage cow_directory=Modifs_SystemRescue

echo "Chargement de initramfs ..."

initrd (loop)/sysresccd/boot/x86_64/sysresccd.img

}

En considérant que SystemRescue se trouve dans le répertoire /ISOS/ d’une partition nommée « Stockage » ; le répertoire dans lequel SystemRescue écrit et conserve ses données est appelé, ici : « Modifs_SystemRescue » (à créer vide).


5. Documentation sur le shell Bash :

Guide avancé d'écriture des scripts Bash