====== Raspberry : Créer un serveur de fichiers ======
===== Présentation =====
L'**échange de fichiers** depuis un PC vers le Raspberry est facilité en installant un **serveur de fichiers** sur le Rapsberry. Cela permet notamment de **créer et de modifier les pages web** depuis son PC pour ensuite les **transférer** vers la Raspberry afin de les **publier** depuis le **serveur Intranet Web lighttpd**.
Le logiciel a installer sur le Raspberry s'appelle **SAMBA** et est une implémentation du **protocole de partage de fichiers SMB/CIFS** utilisé par les OS Windows.
Le protocole de partage de fichier **SMB/CIFS** est utilisé notamment par les systèmes d'exploitation Windows,**Mac OS**, les **consoles de jeux** en réseau, les **smartphones**, les **médias center**.
===== Installation de samba =====
* lancez le **terminal** et **mettez à jour** le Raspberry
$ sudo apt update && sudo apt -y upgrade
* installer Samba
$ sudo apt install samba samba-common-bin
===== Créer un dossier partagé isn sur le dossier de publication Web /var/www/isn =====
Actuellement, seul le compte et le groupe **www-data**, le compte sous lequel s'exécute le **serveur Web lighttpd** a un accès en mise à jour dans le dossier de publication Web **/var/www/isn**.
Pour permettre à l'utilisateur **pi** de **créer et de mettre à jour à distance** des pages Web dans ce dossier, il faudra :
* s'assurer que le dossier **/var/www/isn** ait bien **www-data** comme **propriétaire et groupe**,
* que les **droits en écriture** sont donnés au compte et au groupe **www-data**,
* **ajouter** le compte pi au groupe **www-data**,
* **partager** le dossier **/var/www/isn**,
* donner **uniquement à pi** le droit d'utiliser ce **partage en mise à jour**.
* **vérification** des droits unix sur le dossier **/var/www/isn** : vous devez visualiser les droits suivants :
$ ls -l /var/www/
...
drwxrwx--x 2 www-data www-data 4096 mai 1 11:05 isn
...
Mettre les **droits Unix corrects** sur le dossier **/var/www/isn** :
$ sudo chown -R www-data:www-data /var/www/isn
$ sudo chmod -R 771 /var/www/isn
* **ajout** du compte pi au groupe www-data.
$ sudo adduser pi www-data
* **sauvegarde** du fichier de configuration de initial Samba (par prudence)
$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.ori
* **Modification** du fichier **/etc/samba/smb.conf** :
* **changement du nom** du Workgroup dans la section global : workgroup = RASBERRY
* la **fin** du fichier, ajout d'une **rubrique** [isn] et dans cette rubrique les lignes suivantes :
[isn]
comment = Partage Samba du Raspberry Pi
path = /var/www/isn
browseable = yes # rendre le répertoire visible
writable=yes # répertoire accessible en mise à jour
valid users = pi # partage accessible uniquement à l'utilisateur pi
create mask = 0777 # donner les droit en modification sur les fichiers créés
directory mask = 0777 # donner les droit en modification sur les dossiers créés
valid users indique que seul l'utilisateur Pi est autorisé à accéder à ce dossier partagé.
* Il faut ensuite définir un **mot de passe Samba pour l'utilisateur Pi**, car ce mot de passe est différent de celui du compte Pi.
$ sudo smbpasswd -a pi
* redémarrer le service Samba
$ sudo service smbd restart
* accès au partage :
* Mac OsX : depuis le **Finder**, menu **Aller** puis **Se connecter au serveur** et indiquez **smb:%%//%%@IP** (@IP : adresse IP du Raspberry)
* Windows : Explorateur avec l'adresse **%%\\@IP\isn%%**. Si RaspAP a été install le dossier est accessible à l'adresse **%%\\10.3.141.1\isn%%**
bloc information
==== Les activités ... ====
[[.:accueil|Je reviens à la liste des activités.]]