GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment se connecter au WiFi depuis le terminal dans Ubuntu Linux

Dans ce didacticiel, vous apprendrez à vous connecter au réseau sans fil à partir du terminal dans Ubuntu. Ceci est particulièrement utile si vous utilisez le serveur Ubuntu où vous n'avez pas accès à l'environnement de bureau habituel.

J'utilise principalement Linux de bureau sur mes ordinateurs personnels. J'ai également plusieurs serveurs Linux pour héberger It's FOSS et des sites Web connexes et des logiciels open source comme Nextcloud, Discourse, Ghost, Rocket Chat, etc.

J'utilise Linode pour déployer rapidement des serveurs Linux dans le cloud en quelques minutes. Mais récemment, j'ai installé le serveur Ubuntu sur mon Raspberry Pi. C'est la première fois que j'installe un serveur sur un appareil physique et j'ai dû faire des choses supplémentaires pour connecter le serveur Ubuntu au WiFi via la ligne de commande.

Dans ce tutoriel, je vais montrer les étapes pour se connecter au WiFi en utilisant le terminal dans Ubuntu Linux. Vous devriez

  • ne pas avoir peur d'utiliser le terminal pour modifier des fichiers
  • connaître le nom du point d'accès Wi-Fi (SSID) et le mot de passe

Se connecter au Wi-Fi depuis le terminal dans Ubuntu

C'est facile lorsque vous utilisez le bureau Ubuntu car vous disposez de l'interface graphique pour le faire facilement. Ce n'est pas la même chose lorsque vous utilisez le serveur Ubuntu et que vous vous limitez à la ligne de commande.

Ubuntu utilise l'utilitaire Netplan pour configurer facilement le réseau. Dans Netplan, vous créez un fichier YAML avec la description de l'interface réseau et à l'aide de l'outil de ligne de commande netplan, vous générez toute la configuration requise.

Voyons comment se connecter au réseau sans fil depuis le terminal à l'aide de Netplan.

Étape 1 :Identifiez le nom de votre interface réseau sans fil

Il existe plusieurs façons d'identifier le nom de votre interface réseau. Vous pouvez utiliser la commande ip, la commande obsolète ipconfig ou consulter ce fichier :

ls /sys/class/net

Cela devrait vous donner toutes les interfaces réseau disponibles (Ethernet, wifi et bouclage). Le nom de l'interface réseau sans fil commence par "w" et son nom est généralement similaire à wlanX, wlpxyz.

[email protected]:~$ ls /sys/class/net
eth0 lo wlan0

Notez ce nom d'interface. Vous l'utiliserez à l'étape suivante.

Étape 2 :Modifier le fichier de configuration Netplan avec les détails de l'interface Wi-Fi

Le fichier de configuration Netplan réside dans le répertoire /etc/netplan. Si vous vérifiez le contenu de ce répertoire, vous devriez voir des fichiers comme 01-network-manager-all.yml ou 50-cloud-init.yaml.

S'il s'agit d'un serveur Ubuntu, vous devriez avoir un fichier cloud-init. Pour les ordinateurs de bureau, il doit s'agir du fichier du gestionnaire de réseau. C'est l'une des nombreuses différences entre le bureau Ubuntu et le serveur Ubuntu.

Le gestionnaire de réseau sur le bureau Linux vous permet de choisir un réseau sans fil. Vous pouvez coder en dur le point d'accès wifi dans sa configuration. Cela pourrait vous aider dans certains cas (comme la suspension) où la connexion s'interrompt automatiquement.

Quel que soit le fichier, ouvrez-le pour le modifier. J'espère que vous connaissez un peu l'éditeur Nano, car Ubuntu est préinstallé avec.

sudo nano /etc/netplan/50-cloud-init.yaml

Les fichiers YAML sont très sensibles aux espaces, à l'indentation et à l'alignement. N'utilisez pas de tabulations, utilisez 4 (ou 2, selon ce qui est déjà utilisé dans le fichier YAML) espaces à la place où vous voyez une indentation.

En gros, vous devrez ajouter les lignes suivantes avec le nom du point d'accès (SSID) et son mot de passe (généralement) entre guillemets :

wifis:
    wlan0:
        dhcp4: true
        optional: true
        access-points:
            "SSID_name":
                password: "WiFi_password"

Encore une fois, conservez l'alignement comme je l'ai montré, sinon le fichier YAML ne sera pas analysé et générera une erreur.

Votre fichier de configuration complet peut ressembler à ceci :

# This file is generated from information provided by the datasource. Changes
# to it will not persist across an instance reboot. To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
    ethernets:
        eth0:
            dhcp4: true
            optional: true
    version: 2
    wifis:
        wlan0:
            dhcp4: true
            optional: true
            access-points:
                "SSID_name":
                    password: "WiFi_password"

Je trouve étrange que malgré le message indiquant que les modifications ne persisteront pas après le redémarrage d'une instance, cela fonctionne toujours.

Quoi qu'il en soit, générez la configuration à l'aide de cette commande :

sudo netplan generate

Et maintenant, appliquez ceci :

sudo netplan apply

Si vous avez de la chance, vous devriez avoir un réseau connecté. Essayez d'envoyer un ping à un site Web ou exécutez la commande apt update.

Cependant, les choses peuvent ne pas se dérouler aussi bien et vous pouvez voir des erreurs. Essayez quelques étapes supplémentaires si tel est le cas.

Dépannage possible

Il est possible que lorsque vous utilisez la commande netplan apply, vous voyiez une erreur dans la sortie qui lit quelque chose comme ceci :

Failed to start netplan-wpa-wlan0.service: Unit netplan-wpa-wlan0.service not found.
Traceback (most recent call last):
  File "/usr/sbin/netplan", line 23, in <module>
    netplan.main()
  File "/usr/share/netplan/netplan/cli/core.py", line 50, in main
    self.run_command()
  File "/usr/share/netplan/netplan/cli/utils.py", line 179, in run_command
    self.func()
  File "/usr/share/netplan/netplan/cli/commands/apply.py", line 46, in run
    self.run_command()
  File "/usr/share/netplan/netplan/cli/utils.py", line 179, in run_command
    self.func()
  File "/usr/share/netplan/netplan/cli/commands/apply.py", line 173, in command_apply
    utils.systemctl_networkd('start', sync=sync, extra_services=netplan_wpa)
  File "/usr/share/netplan/netplan/cli/utils.py", line 86, in systemctl_networkd
    subprocess.check_call(command)
  File "/usr/lib/python3.8/subprocess.py", line 364, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['systemctl', 'start', '--no-block', 'systemd-networkd.service', 'netplan-wpa-wlan0.service']' returned non-zero exit status 5.

Il est possible que le service wpa_supplicant ne soit pas en cours d'exécution. Exécutez cette commande :

sudo systemctl start wpa_supplicant

Exécutez à nouveau netplan apply. Si cela résout bien le problème. Sinon, arrêtez votre système Ubuntu en utilisant :

shutdown now

Redémarrez votre système Ubuntu, connectez-vous, générez et appliquez à nouveau netplan :

sudo netplan generate
sudo netplan apply

Il peut afficher un avertissement (au lieu d'une erreur) maintenant. C'est un avertissement et non une erreur. J'ai vérifié les services systemd en cours d'exécution et j'ai constaté que netplan-wpa-wlan0.service était déjà en cours d'exécution. Il a probablement affiché l'avertissement car il était déjà en cours d'exécution et "netplan apply" a mis à jour le fichier de configuration (même sans aucune modification).

Warning: The unit file, source configuration file or drop-ins of netplan-wpa-wlan0.service changed on disk. Run 'systemctl daemon-reload' to reload units.

Ce n'est pas critique et vous pouvez vérifier qu'Internet fonctionne probablement déjà en exécutant apt update.

J'espère que vous avez pu vous connecter au wifi en utilisant la ligne de commande dans Ubuntu à l'aide de ce tutoriel. Si vous rencontrez toujours des problèmes avec, faites-le moi savoir dans la section des commentaires.



Ubuntu
  1. Comment rechercher sur le Web à partir d'un terminal sous Linux

  2. Personnaliser le Terminal sur Ubuntu 20.04 - comment faire ?

  3. Comment utiliser la commande tail dans Ubuntu Linux

  4. Comment faire pour qu'Ubuntu reconnaisse la carte réseau Wifi ??

  5. Comment créer un fichier sous Linux à partir de la fenêtre du terminal ?

Gestion de fichiers Linux depuis le terminal

Comment enregistrer la sortie de la commande dans un fichier à l'aide du terminal Linux

Comment utiliser Gmail depuis le terminal Ubuntu pour envoyer des e-mails

Comment télécharger un fichier sur Ubuntu Linux à l'aide de la ligne de commande

Comment ouvrir un terminal dans Ubuntu Linux

Comment se connecter au WiFi depuis le terminal dans Ubuntu Linux