« Feuille classe » : différence entre les versions
De Travail-ivan
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 160 : | Ligne 160 : | ||
print_message "\nNouvelle configuration:" "$GREEN" | print_message "\nNouvelle configuration:" "$GREEN" | ||
fdisk -l /dev/sda | fdisk -l /dev/sda | ||
swapon --show | |||
print_message "\nOpération terminée avec succès!" "$GREEN" | |||
# Vérification du fstab | |||
if ! grep -q "^/dev/sda5.*swap" /etc/fstab; then | |||
print_message "\nPensez à vérifier votre /etc/fstab pour le swap" "$YELLOW" | |||
print_message "Ligne à avoir : /dev/sda5 none swap sw 0 0" "$YELLOW" | |||
fi | |||
</syntaxhighlight><syntaxhighlight lang="bash"> | |||
#!/bin/bash | |||
# Script pour étendre la partition étendue sda2 | |||
# À 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 \ | |||
procps \ | |||
e2fsprogs \ | |||
coreutils \ | |||
grep \ | |||
gawk | |||
# Vérification que tous les outils sont bien installés | |||
REQUIRED_TOOLS="fdisk parted swapon swapoff mkswap partprobe grep awk" | |||
MISSING_TOOLS="" | |||
for tool in $REQUIRED_TOOLS; do | |||
if ! command -v $tool &> /dev/null; then | |||
MISSING_TOOLS="$MISSING_TOOLS $tool" | |||
fi | |||
done | |||
if [ ! -z "$MISSING_TOOLS" ]; then | |||
print_message "Erreur : les outils suivants sont manquants malgré l'installation :$MISSING_TOOLS" "$RED" | |||
exit 1 | |||
fi | |||
# Affichage de l'état actuel | |||
print_message "\nÉtat actuel du système:" "$GREEN" | |||
fdisk -l /dev/sda | |||
# Récupération du point de début de sda2 | |||
START_SDA2=$(fdisk -l /dev/sda | grep "sda2" | awk '{print $2}') | |||
# Demande de confirmation | |||
print_message "\nATTENTION: Assurez-vous d'avoir:" "$RED" | |||
echo "1. Augmenté la taille du disque dans VMware" | |||
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 | |||
# Sauvegarde de la taille actuelle du swap | |||
SWAP_SIZE=$(fdisk -l /dev/sda | grep "sda5" | awk '{print $3 - $2}') | |||
# Utilisation de fdisk pour redimensionner sda2 | |||
print_message "Modification de la partition étendue sda2..." "$YELLOW" | |||
( | |||
echo d # Supprimer une partition | |||
echo 5 # Supprimer d'abord sda5 (swap) | |||
echo d # Supprimer une autre partition | |||
echo 2 # Supprimer sda2 (étendue) | |||
echo n # Nouvelle partition | |||
echo e # Partition étendue | |||
echo 2 # Numéro 2 | |||
echo $START_SDA2 # Même point de début | |||
echo # Utiliser tout l'espace disponible | |||
echo n # Nouvelle partition logique | |||
echo # Accept default | |||
echo # Accept default (utilisera l'espace disponible) | |||
echo t # Changer le type | |||
echo 5 # Partition 5 | |||
echo 82 # Type swap | |||
echo w # Écrire les changements | |||
) | fdisk /dev/sda | |||
# Mise à jour de la table de partitions | |||
print_message "Mise à jour de la table de partitions..." "$YELLOW" | |||
partprobe /dev/sda | |||
# Attente que le système détecte les changements | |||
sleep 2 | |||
# Reformatage du swap | |||
print_message "Reformatage du swap..." "$YELLOW" | |||
mkswap /dev/sda5 | |||
# Réactivation du swap | |||
print_message "Réactivation du swap..." "$YELLOW" | |||
swapon -a | |||
# Vérification finale | |||
print_message "\nNouvelle configuration:" "$GREEN" | |||
fdisk -l /dev/sda | |||
echo -e "\nÉtat du swap :" | |||
swapon --show | swapon --show | ||
Version du 26 novembre 2024 à 11:33
#!/bin/bash
# Script pour étendre uniquement la partition système sda1
# À 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
# Affichage de l'état actuel
print_message "\nÉtat actuel du système:" "$GREEN"
df -h /
print_message "\nTable de partitions actuelle:" "$GREEN"
fdisk -l /dev/sda
# Demande de confirmation
print_message "\nATTENTION: Assurez-vous d'avoir:" "$RED"
echo "1. Augmenté la taille du disque dans VMware"
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
# Rescan du disque pour détecter les changements de taille
print_message "\nRescan du disque..." "$YELLOW"
echo 1 > /sys/class/block/sda/device/rescan
# Récupération de l'ancien point de début de sda2
START_SDA2=$(fdisk -l /dev/sda | grep "sda3" | awk '{print $2}')
# Utilisation de fdisk pour redimensionner sda1
print_message "Modification de la partition sda1..." "$YELLOW"
(
echo d # Supprimer une partition
echo 1 # Partition numéro 1
echo n # Nouvelle partition
echo p # Partition primaire
echo 1 # Numéro 1
echo 2048 # Premier secteur (par défaut)
echo $START_SDA2 # Dernier secteur (juste avant sda2)
echo w # Écrire les changements
) | 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
# Vérification finale
print_message "\nNouvelle configuration:" "$GREEN"
df -h /
fdisk -l /dev/sda
print_message "\nOpération terminée avec succès!" "$GREEN"
#!/bin/bash
# Script pour étendre la partition étendue sda2
# À 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
# Affichage de l'état actuel
print_message "\nÉtat actuel du système:" "$GREEN"
fdisk -l /dev/sda
# Récupération du point de début de sda2
START_SDA2=$(fdisk -l /dev/sda | grep "sda2" | awk '{print $2}')
# Demande de confirmation
print_message "\nATTENTION: Assurez-vous d'avoir:" "$RED"
echo "1. Augmenté la taille du disque dans VMware"
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
# Utilisation de fdisk pour redimensionner sda2
print_message "Modification de la partition étendue sda2..." "$YELLOW"
(
echo d # Supprimer une partition
echo 5 # Supprimer d'abord sda5 (swap)
echo d # Supprimer une autre partition
echo 2 # Supprimer sda2 (étendue)
echo n # Nouvelle partition
echo e # Partition étendue
echo 2 # Numéro 2
echo $START_SDA2 # Même point de début
echo # Utiliser tout l'espace disponible
echo n # Nouvelle partition logique
echo # Accept default
echo # Accept default
echo t # Changer le type
echo 5 # Partition 5
echo 82 # Type swap
echo w # Écrire les changements
) | fdisk /dev/sda
# Mise à jour de la table de partitions
print_message "Mise à jour de la table de partitions..." "$YELLOW"
partprobe /dev/sda
# Reformatage du swap
print_message "Reformatage du swap..." "$YELLOW"
mkswap /dev/sda5
# Réactivation du swap
print_message "Réactivation du swap..." "$YELLOW"
swapon -a
# Vérification finale
print_message "\nNouvelle configuration:" "$GREEN"
fdisk -l /dev/sda
swapon --show
print_message "\nOpération terminée avec succès!" "$GREEN"
# Vérification du fstab
if ! grep -q "^/dev/sda5.*swap" /etc/fstab; then
print_message "\nPensez à vérifier votre /etc/fstab pour le swap" "$YELLOW"
print_message "Ligne à avoir : /dev/sda5 none swap sw 0 0" "$YELLOW"
fi
#!/bin/bash
# Script pour étendre la partition étendue sda2
# À 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 \
procps \
e2fsprogs \
coreutils \
grep \
gawk
# Vérification que tous les outils sont bien installés
REQUIRED_TOOLS="fdisk parted swapon swapoff mkswap partprobe grep awk"
MISSING_TOOLS=""
for tool in $REQUIRED_TOOLS; do
if ! command -v $tool &> /dev/null; then
MISSING_TOOLS="$MISSING_TOOLS $tool"
fi
done
if [ ! -z "$MISSING_TOOLS" ]; then
print_message "Erreur : les outils suivants sont manquants malgré l'installation :$MISSING_TOOLS" "$RED"
exit 1
fi
# Affichage de l'état actuel
print_message "\nÉtat actuel du système:" "$GREEN"
fdisk -l /dev/sda
# Récupération du point de début de sda2
START_SDA2=$(fdisk -l /dev/sda | grep "sda2" | awk '{print $2}')
# Demande de confirmation
print_message "\nATTENTION: Assurez-vous d'avoir:" "$RED"
echo "1. Augmenté la taille du disque dans VMware"
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
# Sauvegarde de la taille actuelle du swap
SWAP_SIZE=$(fdisk -l /dev/sda | grep "sda5" | awk '{print $3 - $2}')
# Utilisation de fdisk pour redimensionner sda2
print_message "Modification de la partition étendue sda2..." "$YELLOW"
(
echo d # Supprimer une partition
echo 5 # Supprimer d'abord sda5 (swap)
echo d # Supprimer une autre partition
echo 2 # Supprimer sda2 (étendue)
echo n # Nouvelle partition
echo e # Partition étendue
echo 2 # Numéro 2
echo $START_SDA2 # Même point de début
echo # Utiliser tout l'espace disponible
echo n # Nouvelle partition logique
echo # Accept default
echo # Accept default (utilisera l'espace disponible)
echo t # Changer le type
echo 5 # Partition 5
echo 82 # Type swap
echo w # Écrire les changements
) | fdisk /dev/sda
# Mise à jour de la table de partitions
print_message "Mise à jour de la table de partitions..." "$YELLOW"
partprobe /dev/sda
# Attente que le système détecte les changements
sleep 2
# Reformatage du swap
print_message "Reformatage du swap..." "$YELLOW"
mkswap /dev/sda5
# Réactivation du swap
print_message "Réactivation du swap..." "$YELLOW"
swapon -a
# Vérification finale
print_message "\nNouvelle configuration:" "$GREEN"
fdisk -l /dev/sda
echo -e "\nÉtat du swap :"
swapon --show
print_message "\nOpération terminée avec succès!" "$GREEN"
# Vérification du fstab
if ! grep -q "^/dev/sda5.*swap" /etc/fstab; then
print_message "\nPensez à vérifier votre /etc/fstab pour le swap" "$YELLOW"
print_message "Ligne à avoir : /dev/sda5 none swap sw 0 0" "$YELLOW"
fi