« Feuille classe » : différence entre les versions
De Travail-ivan
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 2 : | Ligne 2 : | ||
#!/bin/bash | #!/bin/bash | ||
# Script pour étendre | # Script pour étendre la partition système sda2 sur un système EFI | ||
# À exécuter en tant que root | # À exécuter en tant que root | ||
Ligne 198 : | Ligne 28 : | ||
parted \ | parted \ | ||
util-linux \ | util-linux \ | ||
e2fsprogs | |||
e2fsprogs | |||
# Affichage de l'état actuel | # Affichage de l'état actuel | ||
print_message "\nÉtat actuel du système:" "$GREEN" | print_message "\nÉtat actuel du système:" "$GREEN" | ||
df -h / | |||
fdisk -l /dev/sda | fdisk -l /dev/sda | ||
# Récupération | # Récupération des points de début de sda3 | ||
START_SDA3=$(fdisk -l /dev/sda | grep "sda3" | awk '{print $2}') | |||
# Demande de confirmation | # Demande de confirmation | ||
print_message "\nATTENTION: Assurez-vous d'avoir:" "$RED" | print_message "\nATTENTION: Assurez-vous d'avoir:" "$RED" | ||
echo "1. Augmenté la taille du disque dans VMware" | echo "1. Augmenté la taille du disque dans VMware (actuellement configuré à 250G)" | ||
echo "2. Créé un snapshot de la VM" | echo "2. Créé un snapshot de la VM" | ||
echo "3. Sauvegardé vos données importantes" | echo "3. Sauvegardé vos données importantes" | ||
Ligne 246 : | Ligne 58 : | ||
echo 1 > /sys/class/block/sda/device/rescan | echo 1 > /sys/class/block/sda/device/rescan | ||
# | # Modification des partitions avec gdisk pour préserver la table GPT | ||
print_message "Modification des partitions..." "$YELLOW" | |||
print_message "Modification | |||
( | ( | ||
echo d # Supprimer une partition | echo d # Supprimer une partition | ||
echo | echo 3 # Supprimer sda3 (swap) | ||
echo d # Supprimer une autre partition | echo d # Supprimer une autre partition | ||
echo 2 # Supprimer sda2 | echo 2 # Supprimer sda2 | ||
echo n # Nouvelle partition | echo n # Nouvelle partition | ||
echo | echo # Numéro par défaut (2) | ||
echo | echo # Premier secteur par défaut | ||
echo | echo -1G # Laisser 1G à la fin pour le swap | ||
echo # | echo # Type par défaut (Linux filesystem) | ||
echo n # Nouvelle partition | echo n # Nouvelle partition pour le swap | ||
echo # | echo # Numéro par défaut (3) | ||
echo # | echo # Premier secteur par défaut | ||
echo # Dernier secteur par défaut | |||
echo t # Changer le type | echo t # Changer le type | ||
echo | echo 3 # Partition 3 | ||
echo 82 # Type swap | echo 82 # Type swap | ||
echo w # Écrire les changements | echo w # Écrire les changements | ||
echo y # Confirmer | |||
) | fdisk /dev/sda | ) | fdisk /dev/sda | ||
Ligne 274 : | Ligne 85 : | ||
partprobe /dev/sda | partprobe /dev/sda | ||
# | # Extension du système de fichiers | ||
print_message "Extension du système de fichiers..." "$YELLOW" | |||
resize2fs /dev/sda2 | |||
# Reformatage du swap | # Reformatage du swap | ||
print_message "Reformatage du swap..." "$YELLOW" | print_message "Reformatage du swap..." "$YELLOW" | ||
mkswap /dev/ | mkswap /dev/sda3 | ||
# Réactivation du swap | # Réactivation du swap | ||
Ligne 287 : | Ligne 99 : | ||
# Vérification finale | # Vérification finale | ||
print_message "\nNouvelle configuration:" "$GREEN" | print_message "\nNouvelle configuration:" "$GREEN" | ||
df -h / | |||
fdisk -l /dev/sda | fdisk -l /dev/sda | ||
swapon --show | swapon --show | ||
Ligne 294 : | Ligne 106 : | ||
# Vérification du fstab | # Vérification du fstab | ||
if ! grep -q "^/dev/ | if ! grep -q "^/dev/sda3.*swap" /etc/fstab; then | ||
print_message "\ | print_message "\nVérifiez que votre /etc/fstab contient la bonne référence pour le swap:" "$YELLOW" | ||
print_message " | print_message "La ligne devrait être : /dev/sda3 none swap sw 0 0" "$YELLOW" | ||
fi | fi | ||
# Vérification de l'espace | |||
df -h / | awk 'NR==2 {print "Espace disponible sur /: " $4 " libre sur " $2}' | |||
</syntaxhighlight> | </syntaxhighlight> |
Version du 26 novembre 2024 à 11:43
#!/bin/bash
# Script pour étendre la partition système sda2 sur un système EFI
# À exécuter en tant que root
# Couleurs pour les messages
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color
# Fonction pour afficher les messages
print_message() {
echo -e "${2}${1}${NC}"
}
# Vérification des privilèges root
if [ "$(id -u)" != "0" ]; then
print_message "Ce script doit être exécuté en tant que root" "$RED"
exit 1
fi
# Installation des paquets nécessaires
print_message "\nVérification et installation des paquets nécessaires..." "$YELLOW"
apt-get update
apt-get install -y fdisk \
parted \
util-linux \
e2fsprogs
# Affichage de l'état actuel
print_message "\nÉtat actuel du système:" "$GREEN"
df -h /
fdisk -l /dev/sda
# Récupération des points de début de sda3
START_SDA3=$(fdisk -l /dev/sda | grep "sda3" | awk '{print $2}')
# Demande de confirmation
print_message "\nATTENTION: Assurez-vous d'avoir:" "$RED"
echo "1. Augmenté la taille du disque dans VMware (actuellement configuré à 250G)"
echo "2. Créé un snapshot de la VM"
echo "3. Sauvegardé vos données importantes"
read -p "Voulez-vous continuer? (o/N) " -n 1 -r
echo
if [[ ! $REPLY =~ ^[Oo]$ ]]; then
print_message "Opération annulée" "$YELLOW"
exit 1
fi
# Désactivation du swap pour sécurité
print_message "\nDésactivation temporaire du swap..." "$YELLOW"
swapoff -a
# Rescan du disque pour détecter les changements de taille
print_message "Rescan du disque..." "$YELLOW"
echo 1 > /sys/class/block/sda/device/rescan
# Modification des partitions avec gdisk pour préserver la table GPT
print_message "Modification des partitions..." "$YELLOW"
(
echo d # Supprimer une partition
echo 3 # Supprimer sda3 (swap)
echo d # Supprimer une autre partition
echo 2 # Supprimer sda2
echo n # Nouvelle partition
echo # Numéro par défaut (2)
echo # Premier secteur par défaut
echo -1G # Laisser 1G à la fin pour le swap
echo # Type par défaut (Linux filesystem)
echo n # Nouvelle partition pour le swap
echo # Numéro par défaut (3)
echo # Premier secteur par défaut
echo # Dernier secteur par défaut
echo t # Changer le type
echo 3 # Partition 3
echo 82 # Type swap
echo w # Écrire les changements
echo y # Confirmer
) | fdisk /dev/sda
# Mise à jour de la table de partitions
print_message "Mise à jour de la table de partitions..." "$YELLOW"
partprobe /dev/sda
# Extension du système de fichiers
print_message "Extension du système de fichiers..." "$YELLOW"
resize2fs /dev/sda2
# Reformatage du swap
print_message "Reformatage du swap..." "$YELLOW"
mkswap /dev/sda3
# Réactivation du swap
print_message "Réactivation du swap..." "$YELLOW"
swapon -a
# Vérification finale
print_message "\nNouvelle configuration:" "$GREEN"
df -h /
fdisk -l /dev/sda
swapon --show
print_message "\nOpération terminée avec succès!" "$GREEN"
# Vérification du fstab
if ! grep -q "^/dev/sda3.*swap" /etc/fstab; then
print_message "\nVérifiez que votre /etc/fstab contient la bonne référence pour le swap:" "$YELLOW"
print_message "La ligne devrait être : /dev/sda3 none swap sw 0 0" "$YELLOW"
fi
# Vérification de l'espace
df -h / | awk 'NR==2 {print "Espace disponible sur /: " $4 " libre sur " $2}'