1. Aperçu : Pourquoi est-ce nécessaire ?
Laisser un ordinateur de bureau allumé 24 heures sur 24 à la maison ou au bureau implique une grande consommation d'énergie et des coûts d'entretien.
J'ai donc pensé à une méthode pour allumer un ordinateur de bureau à distance en utilisant un petit serveur fonctionnant 24 heures sur 24, comme le Raspberry Pi, uniquement au moment nécessaire.
Pour cela, j'ai mis en place une stratégie en utilisant la fonction "Wake-on-LAN (WOL)" comme suit :
- Paramètres du BIOS de l'ordinateur de bureau : Activer la fonction WOL
- Configuration de Linux (Ubuntu) : Maintenir la carte réseau active même après l'arrêt du système
- Configuration de Raspberry Pi : Écrire et automatiser le script d'envoi de paquet magique
Paquets nécessaires :
- wakeonlan
(pour l'envoi de paquets magiques depuis Raspberry Pi ou le serveur)
2. Environnement de configuration
- PC cible : Bureau avec Ubuntu 24.04 installé
- Serveur : Raspberry Pi 5 (Ubuntu Server 24.04)
- Réseau : Connecté au même réseau local (connexion filaire recommandée)
3. Paramétrage du BIOS de l'ordinateur de bureau
L'utilisation de Wake-on-LAN nécessite des paramètres très spécifiques dans le BIOS de la carte mère.
Comment paramétrer le BIOS
Configurez les éléments suivants dans le BIOS. Personnellement, j'ai utilisé une carte mère GIGABYTE, mais les utilisateurs d'autres marques peuvent consulter des options similaires.
- Accédez aux paramètres BIOS/UEFI lors du démarrage de l'ordinateur (généralement avec la touche
DEL
ouF2
) - Activez les éléments suivants :
ERP (mode d'économie d'énergie)
- Réglage de ERP
: Désactivé, car le mode d'économie d'énergie peut bloquer la fonction WOL.
Activer CSM
- CSM Support
: Activé
- Après avoir activé CSM, les éléments suivants peuvent apparaître (pour les cartes mères GIGABYTE) :
- LAN PXE Option ROM
: Rester désactivé
- Policy du OpROM de sauvegarde
: Legacy
- Autres dispositifs PCI
: Legacy
Resume by LAN / Power On by PCI-E
- Certaines cartes peuvent fonctionner automatiquement sans options supplémentaires → peut fonctionner normalement même si l'option n'est pas visible
- Enregistrez les paramètres et redémarrez
※ Les options peuvent avoir des noms légèrement différents selon le fabricant, donc cherchez des options similaires à "Wake" ou "Power On by PCI" pour les configurer.
4. Configuration de Linux (Ubuntu) sur l'ordinateur de bureau
Sur Ubuntu, la carte NIC (Network Interface Card) doit rester active même lorsque le système est éteint.
1. Vérification du nom de l'interface réseau
ip a
Exemple de résultat :
2: enp4s0: ...
link/ether <AA:BB:CC:DD:EE:FF> ...
enp4s0
: Vérifiez le nom de l'interface réseau. (Ceci est le nom du dispositif LAN filaire de l'ordinateur, donc cela peut varier selon le dispositif.)AA:BB:CC:DD:EE:FF
: Adresse MAC (cible de paquet magique) ※ Faites attention à la sécurité lors de l'exposition de l'adresse MAC.
2. Installer ethtool
sudo apt update
sudo apt install ethtool
3. Vérifier et configurer l'état de WOL
sudo ethtool enp4s0 | grep Wake
Exemple de résultat :
Supports Wake-on: pumbg
Wake-on: d
d
→ désactivé- Pour activer :
sudo ethtool -s enp4s0 wol g
Vérifiez de nouveau :
Wake-on: g
4. Rendre la configuration automatique au démarrage (optionnel : à appliquer si Wake-on:g est désactivé après redémarrage)
Depuis Ubuntu 20.04, /etc/rc.local
n'est plus pris en charge par défaut, donc l'utilisation d'un service systemd est plus recommandée.
Comment créer /etc/rc.local
:
sudo nano /etc/rc.local
Ajoutez au-dessus de exit 0
:
/sbin/ethtool -s enp4s0 wol g
exit 0
Après avoir enregistré le fichier, accordez les permissions d'exécution :
sudo chmod +x /etc/rc.local
Des ajustements supplémentaires pour le service systemd peuvent être nécessaires.
5. Envoi de paquet magique depuis Raspberry Pi
1. Installation du paquet wakeonlan
sudo apt install wakeonlan
2. Exécuter la commande WOL
wakeonlan AA:BB:CC:DD:EE:FF # Insérez l'adresse MAC vérifiée ci-dessus.
3. (Optionnel) Enregistrement d'un alias
# Remplacez AA:BB:CC:DD:EE:FF par l'adresse MAC de l'ordinateur cible pour le démarrage à distance.
echo "alias wakeup_dude='wakeonlan AA:BB:CC:DD:EE:FF'" >> ~/.bashrc
source ~/.bashrc
→ À partir de maintenant, il sera possible d'exécuter simplement :
wakeup_dude
6. Résultat
- L'ordinateur de bureau démarre automatiquement après avoir reçu un paquet magique même lorsqu'il est complètement éteint
- Mise en œuvre réussie du démarrage à distance avec Wake-on-LAN !
7. Sécurité
- Il est essentiel de renforcer la sécurité de la connexion SSH du serveur 'Raspberry Pi', les paramètres de sécurité du routeur, les configurations UFW, etc.
- Lors d'un accès externe, il est recommandé d'utiliser le port forwarding SSH ou un VPN.
8. Exemple d'utilisation
# Connexion depuis l'extérieur
ssh username@<your_ip_or_domain> -p <your_ssh_port>
# Après la connexion
wakeup_dude
🎉 Démarrage automatique du bureau !
9. Références
- Wake-on-LAN fonctionne uniquement sur LAN filaire (Wi-Fi pas possible)
- Certaines cartes peuvent fonctionner en état
Suspend
, mais peuvent être limitées en étatShutdown
. (Confirmation de succès sur la carte GIGABYTE même en mode Shutdown)
En construisant un environnement de bureau qui "se réveille uniquement lorsque nécessaire", une gestion des serveurs plus intelligente et efficace devient possible.
Add a New Comment