scripts_bash/network.sh

52 lines
1.5 KiB
Bash
Raw Permalink Normal View History

2024-09-16 07:51:54 +00:00
#!/bin/bash
# Vérifier si le script est exécuté avec les privilèges root
if [[ $EUID -ne 0 ]]; then
echo "Ce script doit être exécuté en tant que root"
exit 1
fi
# Demander à l'utilisateur d'entrer les informations réseau
read -p "Entrez l'adresse IP (ex: 192.168.1.100/24): " ip_address
read -p "Entrez la passerelle (gateway) (ex: 192.168.1.1): " gateway
read -p "Entrez les serveurs DNS, séparés par des espaces (ex: 8.8.8.8 8.8.4.4): " dns_servers
# Chemin du fichier Netplan par défaut (à adapter si nécessaire)
default_netplan_file="/etc/netplan/*.yaml"
# Renommer le fichier Netplan par défaut
if ls $default_netplan_file 1> /dev/null 2>&1; then
mv /etc/netplan/*.yaml /etc/netplan/01-netcfg-backup.yaml
echo "Le fichier Netplan par défaut a été renommé en 01-netcfg-backup.yaml"
else
echo "Aucun fichier Netplan par défaut trouvé, un nouveau sera créé."
fi
# Créer le nouveau fichier Netplan
new_netplan_file="/etc/netplan/50-home-config.yaml"
cat <<EOL > $new_netplan_file
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
addresses:
- $ip_address
gateway4: $gateway
nameservers:
addresses:
- $(echo $dns_servers | sed 's/ /\\n - /g')
EOL
# Afficher le contenu du nouveau fichier Netplan
echo "Le fichier Netplan suivant a été créé : $new_netplan_file"
cat $new_netplan_file
# Appliquer la configuration Netplan
echo "Application de la nouvelle configuration Netplan..."
sudo netplan apply
echo "Configuration appliquée avec succès."