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
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
Merci d'avance
Configurer le Wi-Fi sans clavier ni écran (mode autonome)
Modérateur : Francois
- cranberry314
- Messages : 4
- Enregistré le : ven. 3 juin 2016 22:40
-
- Raspinaute
- Messages : 211
- Enregistré le : mar. 16 août 2016 20:55
- Contact :
Re: Configurer le Wi-Fi sans clavier ni écran (mode autonome)
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
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
Alexidreaming
-
- Raspinaute
- Messages : 970
- Enregistré le : dim. 28 déc. 2014 15: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)
Bonsoir,
Je me suis fais un script pour ce genre de situation, que je partage.
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 :
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
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
[Pour bien commencer] Pour les nouveaux acquéreurs de Raspberry Pi (index de liens utiles)
Awesome Raspberry Pi
Awesome Raspberry Pi