Configurer le Wi-Fi sans clavier ni écran (mode autonome)

Comment utiliser ces ports USB du Raspberry Pi, gérer les problèmes qu'ils génèrent

Modérateur : Francois

Avatar de l’utilisateur
cranberry314
Messages : 4
Enregistré le : ven. 3 juin 2016 22:40

Configurer le Wi-Fi sans clavier ni écran (mode autonome)

Messagepar cranberry314 » jeu. 5 janv. 2017 22:43

Bonjour,
Voilà, je suis à la recherche d'une solution pour configurer le Wi-Fi sans clavier ni écran, le but est de rendre un rpi facilement accessible part le commun des mortels :D
Mon idée était d'utiliser un smartphone en connexion Usb avec un script en python pour la config sur le rpi et une appli sur Android.
Pour Python, je pense trouver mais pour l'appli, je sèche un peu...

Maintenant, si quelqu'un a une idée autre, je suis preneur :lol:

Merci d'avance

Alexidreaming
Raspinaute
Messages : 211
Enregistré le : mar. 16 août 2016 20:55
Contact :

Re: Configurer le Wi-Fi sans clavier ni écran (mode autonome)

Messagepar Alexidreaming » lun. 20 févr. 2017 18:32

Salut, tu as une connexion Internet par câble?

Tu peux télécharger une app de connexion SSH pour ensuite le configurer via la ligne de commande
Le pro du déterrage de topic est là!

Alexidreaming

dyox
Raspinaute
Messages : 306
Enregistré le : dim. 28 déc. 2014 16:28
Localisation : Le long de la côte, au dessus du pays des bigoudennes, aïe

Re: Configurer le Wi-Fi sans clavier ni écran (mode autonome)

Messagepar dyox » lun. 20 févr. 2017 20:36

Bonsoir,
Je me suis fais un script pour ce genre de situation, que je partage.

Code : Tout sélectionner

#!/bin/bash

#objectif              : Configurer une IP statique dans dhcpcd.conf avec wlan0
#logiciel                : bash
#cible                  : Raspberry Pi
#matériels de test      : Raspberry Pi 3
#OS                    : raspian PIXEL du 2016-09-23
#date de création       : 27/10/2016
#date de mise à jour   : 17/11/2016
#version               : 1.0
#auteur                  : dyox
#références            :
#remarques             : Pour fonctionner, il faut être root
#                     Il faut rendre le fichier exécutable avec "sudo chmod +x static_IP.sh"
#                           Pour exécuter le fichier, il faut faire "sudo ./static_IP.sh"
#apprentissage            : redirection avec "echo -e"+">>" et "echo"+"tee -a"
#                       les fonctions
#                        condition pas root : $EUID -ne 0 ou $(id -u) != 0
#                        le REPLY

# A MODIFIER
INTERFACE="wlan0"
IP="A MODIFIER/24"
ROUTEUR="A MODIFIER"
DNS="A MODIFIER"
SSID="A MODIFIER"
PSK="A MODIFIER"
# WPA2
KEY="WPA-PSK"


# Etre sûr que ce script est lancé sur un Raspberry Pi
if ! uname -a | grep "raspberrypi" > /dev/null
then
   echo "Ce script ne fonctionne que sur un Raspberry Pi !"
   read -n 1 -p "Pressez n'importe quelle touche pour quitter"   
   echo
   exit
fi
# Etre sûr que ce script est lancé en tant que root
#if [ $EUID -ne 0 ];then
if [ $(id -u) != 0 ];then
   echo "Privilège insuffisant pour exécuter ce script !"
   echo "Relancez ce script  avec sudo"
   read -n 1 -p "Pressez n'importe quelle touche pour quitter"
   echo
   exit
fi

# Restauration si les fichiers "dhcpcd.conf" et "wpa_supplicant.conf" ont été précédemment sauvegardés
if [ -e dhcpcd.conf.bak ] && [ -e wpa_supplicant.conf.bak ];then
   echo "Les fichiers dhcpcd.conf et wpa_supplicant.conf ont été précédemment sauvegardés."
   read -n 1 -p "Voullez-vous restaurer ces fichiers ? (o/n)"
   echo
   if [[ ! $REPLY =~ ^[oO]$ ]];then
      exit
   else
# avant copie : -rw-rw-r-- root:netdev
      mv dhcpcd.conf.bak /etc/dhcpcd.conf
    chown root:netdev /etc/dhcpcd.conf
# avant copie : -rw------- root:root
      mv wpa_supplicant.conf.bak /etc/wpa_supplicant/wpa_supplicant.conf
#      chown root:root /etc/wpa_supplicant/wpa_supplicant.conf  << cela ne sert à rien car lors de la copie, on est déjà root...et donc le .bak est root
      echo "Restauration finie !"
   fi
   exit
fi

# vérifie si dhcpcd.conf a déjà été sauvegardé
if [ ! -e dhcpcd.conf.bak ];then
   echo "Le fichier dhcpcd.conf n'étant pas déjà été sauvegardé, il est sauvegardé dans /home/ puis modifié."
   cp /etc/dhcpcd.conf dhcpcd.conf.bak
   echo -e "

interface $INTERFACE
static ip_address=$IP
static routers=$ROUTEUR
static domain_name_servers=$DNS" >> /etc/dhcpcd.conf
else
   echo "Le fichier dhcpcd.conf a  déjà été sauvegardé et modifié. !"
fi

# fonction setWPA
# "scan_ssid=1" pour accrocher un ssid caché
setWPA(){
echo -e "
Network={
   ssid=$SSID
   scan_ssid=1
   psk=$PSK
   key_mgmt=$KEY
}" | tee -a /etc/wpa_supplicant/wpa_supplicant.conf > /dev/null
}

# vérifie si wpa_supplicant.conf a déjà été sauvegardé
if [ ! -e wpa_supplicant.conf.bak ];then
   echo "Le fichier wpa_supplicant.conf n'étant pas déjà été sauvegardé, il est sauvegardé dans /home/ puis modifié"
   cp /etc/wpa_supplicant/wpa_supplicant.conf wpa_supplicant.conf.bak
   setWPA
# pour pouvoir y jeter un oeil!
#   chown pi:pi wpa_supplicant.conf.bak
else
   echo "Le fichier wpa_supplicant.conf a  déjà été sauvegardé et modifié !"
fi
echo -e "Fichiers /etc/dhcpcd.conf et /etc/wpa_supplicant/wpa_supplicant.conf modifiés !
Redémarrage du service dhcpcd"
#systemctl restart dhcpcd.service
service dhcpcd restart
exit

Il ne reste qu'à le modifier et le lancer au démarrage.
Je n'ai pas testé mais si on prend l'exemple de "cmdline.txt" lors du 1er boot qui lance automaquement l'extension de partition puis l'efface :

Code : Tout sélectionner

dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet init=/usr/lib/raspi-config/init_resize.sh quiet splash plymouth.ignore-serial-consoles
Débutant sous Rpi / linux
[Pour bien commencer] Pour les nouveaux acquéreurs de Raspberry Pi (liste de liens utiles)


Retourner vers « Les ports USB »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité