72 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| # Creation de la clef ./build_svprognu -d /dev/sdX
 | |
| 
 | |
| 
 | |
| set -e
 | |
| 
 | |
| ISO="live-svprognu-bookworm_amd64.iso"
 | |
| 
 | |
| 
 | |
| while getopts ":r d:" opt; do
 | |
| case $opt in
 | |
|    	r)
 | |
| 	# Recuperation iso
 | |
| 	echo "Téléchargement de l'iso..."
 | |
| 	sleep 5
 | |
| 	wget -O ${ISO} https://dl.vermeulen.pro/SVPROGNU/${ISO}
 | |
| 	wget -O ${ISO}.md5sum https://dl.vermeulen.pro/SVPROGNU/${ISO}.md5sum
 | |
| 	echo "Vérification de l'image..."
 | |
| 
 | |
| 	if ! md5sum -c ${ISO}.md5sum
 | |
| 		then
 | |
| 		echo "ISO Corompue. Abandon !!"
 | |
| 		rm -f ${ISO} ${ISO}.md5
 | |
| 		exit 1
 | |
| 	fi
 | |
| 	;;
 | |
| 
 | |
| # Copie de l'image iso sur clé
 | |
| 
 | |
|    	d)
 | |
| 	echo "Transfert en cours..."
 | |
| 
 | |
| 	#Vérification montage support
 | |
| 	if mount | grep -q $OPTARG > /dev/null
 | |
|         	then
 | |
|         	umount $OPTARG* || /bin/true
 | |
| 	fi
 | |
| 
 | |
| 	#Réinitialisation de la clé : Table DOS
 | |
| 	printf 'o\nw' | fdisk $OPTARG
 | |
| 
 | |
| 	#Transfert
 | |
| 	dd if=${ISO} of=$OPTARG bs=4M status=progress
 | |
| 	sync
 | |
| 
 | |
| 	# Création de la partition dédiée à la persistence
 | |
| 	echo "Création de la persistence..."
 | |
| 	sleep 5
 | |
| 	printf 'n\np\n\n\n\nw' | fdisk $OPTARG
 | |
| 	echo "Formatage..."
 | |
| 	sleep 10
 | |
| 	mkfs.ext4 -L persistence ${OPTARG}3
 | |
| 
 | |
| 	# Configuratio de la partition
 | |
| 	mkdir -p ./tmp
 | |
| 	mount ${OPTARG}3 ./tmp
 | |
| 	echo "/ union" > ./tmp/persistence.conf
 | |
| 	umount ./tmp
 | |
| 	echo "Finalisation..."
 | |
| 	sleep 10
 | |
| 	rm -rf ./tmp
 | |
| 
 | |
| 	# Fin
 | |
| 	echo "Terminé ! Vous pouvez booter sur la clé USB, la persistence sera auto-configurée lors du premier Boot !"
 | |
| 	;;
 | |
| 
 | |
| esac
 | |
| done
 | |
| 
 | |
| exit 0
 |