web-dev-qa-db-fra.com

Comment établir une connexion WiFi marginale automatiquement reconnectée en cas de perte? - Ubuntu 16.04 LTS

En exécutant Ubuntu 16.04, l’ordinateur uniquement Wi-Fi a une connexion marginale au routeur. Habituellement, cela fonctionne pendant des heures et a même travaillé pendant des jours.

Il utilise un adaptateur WiFi USB externe rt2800usb (3000mW) avec une antenne de 14 pouces. (J'ai peut-être besoin d'un yagi ou d'un plat?)

Je n'utilise jamais suspendre; verrouillez juste. Il s’agit d’un ordinateur situé dans un atelier, mais j’utilise RDP pour y accéder pour diverses tâches (comme la surveillance de l’atelier et l’environnement de la température du processeur avec un Arduino connecté via USB).

Pour le problème à résoudre: la connexion est parfois interrompue. Je ne sais pas trop pourquoi, mais la connexion sera coupée de temps en temps.

Pour résoudre ce problème, vous devez vous connecter et utiliser l'icône haut/bas pour éteindre le réseau sans fil, puis le réactiver. Ensuite, cela fonctionnera encore pendant des heures ou des jours.

Il serait préférable qu'il puisse se reconnecter lorsque cela se produit.

Les seules autres questions que je vois ici à ce sujet ont environ 5 ans et concernent des versions précédentes ou des suspensions. Aucun ne correspond aux conditions de cette case.

Donc, la question est dans le titre. Comment puis-je configurer 16.04 pour se reconnecter automatiquement quand il tombe?

2
SDsolar

Vous pouvez utiliser les scripts du distributeur Network-Manager pour obtenir un tel comportement. Vous pouvez trouver plus d'informations sur ceux-ci dans le pages de manuel Ubunt . En bref: vous mettez un script, qui appartient à root et à l'exécutable, dans le dossier: /etc/NetworkManager/dispatcher.d.

Si vous envisagez de créer davantage de scripts de ce type, sachez qu'ils sont exécutés dans l'ordre alphabétique.

Un script qui établit une connexion, si la même connexion était interrompue, pourrait ressembler à ceci:

#!/bin/bash

if [ "$CONNECTION_UUID" = "put_your_uuid_here" ]; then
    if [ "$2" = "down" ]; then
        sleep 10
        nmcli con up uuid $CONNECTION_UUID
    fi
fi

Sachez que vous devez mettre le uuid de votre connexion dans le script où il est écrit put_your_uuid_here. Pour rechercher vos connexions uuid , vous pouvez exécuter la commande nmcli con show dans un terminal.

À votre santé

3
romed