[LINUX] Activer WOL (Wake On LAN) sur Manjaro KDE

introduction

KDE n'a pas d'élément WOL dans les paramètres réseau de l'interface graphique Laissez ethtool s'exécuter automatiquement avec systemd. C'est un peu compliqué à faire à la main, alors j'en ai fait un script.

Script Shell pour activer WOL

#!/bin/bash
#dossier de sauvegarde du fichier de paramètres systemd
SYSTEMD_PATH="/etc/systemd/system/"
SERVICE_NAME="wol.service"
FILE_PATH=${SYSTEMD_PATH}${SERVICE_NAME}

#Modifier les paramètres tlp
sudo sed -i -e "s/WOL_DISABLE=Y/WOL_DISABLE=N/g" /etc/default/tlp
#Vérifiez la valeur de consigne
echo "Confirmation de la modification du paramètre tlp: WOL_DISABLE=Succès avec N"
sudo grep "^WOL_DISABLE" /etc/default/tlp

#Installez ethtool
sudo pacman -S --noconfirm ethtool

#Recherchez le nom de l'interface et placez-le dans une variable
NIC_LIST=($(for DEV in `find /sys/devices -name net | grep -v virtual`; do ls $DEV/; done))
#Spécifiez la première interface
INTERFACE=${NIC_LIST[0]}

#Vérification
echo "Nom de l'interface:"${INTERFACE}
echo ${FILE_PATH}

#Confirmation d'écrasement de fichier
if [ -e ${FILE_PATH} ]; then
    echo "Voulez-vous écraser le fichier?[Y/n]"
    read -p "answer[y or n]:" ANSWER
    ANSWER=`echo $ANSWER | tr y Y | tr -d '[\[\]]'`
    if [ ${ANSWER} != "Y" ]; then
        exit 0
    fi
    #S'il y a un paramètre, arrêtez le service
    sudo systemctl stop ${FILE_NAME}
    sudo systemctl disable ${FILE_NAME}
fi

sudo tee ${FILE_PATH} <<EOF >/dev/null
[Unit]
Description=Configure Wake-up on LAN
Requires=network.target
After=network.target

[Service]
Type=oneshot
ExecStart=/usr/bin/ethtool -s ${INTERFACE} wol g

[Install]
WantedBy=basic.target
EOF

#Recharger les paramètres
sudo systemctl daemon-reload
#Début du service
sudo systemctl start ${SERVICE_NAME}
#Paramètres de démarrage automatique
sudo systemctl enable ${SERVICE_NAME}

#confirmation finale
echo "Confirmation de l'activation WOL: Wake-on:Valable avec g"
sudo ethtool ${INTERFACE} | grep Wake-on

Explication du script shell

--Manajro a TLP (Power Management) activé par défaut et WOL est désactivé, alors activez-le --Installez ethtool

Remarques

WOL semble consommer beaucoup de batterie, il vaut donc mieux ne pas l'utiliser sur un ordinateur portable. Ce script est un PC de bureau et suppose un environnement avec un seul LAN câblé.

Environnement d'exploitation

Manjaro KDE Edition 19.0.0 Linux Kernel 5.5.2-1

finalement

J'ai également utilisé le même kubuntu KDE, mais il n'avait pas TLP. C'est difficile d'écrire un script, mais je ferai de mon mieux pour l'écrire car je pourrai en profiter la prochaine fois.

Recommended Posts

Activer WOL (Wake On LAN) sur Manjaro KDE
Wake on LAN sous Linux
Démarrez CentOS 8 à partir de Windows 10 avec Wake On LAN
Je veux faire Wake On LAN de manière entièrement automatique
Créer un script Python pour Wake on LAN (Wake on LAN over NAT [5])