disque dur

Créer un NAS avec votre Raspberry Pi et Samba.

Mis à jour le 23 janvier 2020 - 49 Commentaires - , , , , ,

Un des usages fréquent de la Raspberry Pi est la création d’un système de stockage multimédia local, souvent appelé NAS (Network Attached Storage, ou Serveur de Stockage en Réseau).

Aujourd’hui, nous allons donc vous expliquer comment créer un NAS sur votre Raspberry Pi à l’aide du logiciel SAMBA.

Pour résumer, l’article va vous présenter comment créer un disque dur sur le réseau local avec la Raspberry Pi et Samba,sur lequel tous les appareils multimédia (ordinateur, télévision…) pourront accéder sans avoir à être branchés dessus.

Les pré-requis pour installer un NAS

Avant toute chose, il est important de vous présenter le matériel nécessaire pour cette réalisation.

Prenez de préférence des disques durs alimentés via une prise secteur pour soulager la consommation énergétique de la Raspberry Pi.

Configuration de la Raspberry Pi

Une fois que vous avez tout le matériel nécessaire, que la Raspberry est en marche et que vous êtes connecté en SSH, vous pouvez commencer par mettre à jour votre Raspberry Pi

sudo apt update
sudo apt upgrade

Une fois les mises à jour terminées, nous allons créer les dossiers publics et privés qui seront accessibles sur le NAS.

sudo mkdir /home/shares
sudo mkdir /home/shares/public
sudo chown -R root:users /home/shares/public
sudo chmod -R ug=rwx,o=rx /home/shares/public

Création du serveur NAS avec Samba

La configuration de base de la Raspberry Pi étant faite, nous allons maintenant pouvoir installer le NAS à proprement parler. Pour cela nous allons donc utiliser Samba, un logiciel capable de gérer la mise en réseau d’un disque dur pour pouvoir y accéder depuis n’importe quel système d’exploitation ou ordinateur connecté sur le réseau.

Nous allons donc commencer par installer Samba sur la Raspberry Pi à l’aide de la commande suivante :

sudo apt install samba samba-common-bin

Après cela, nous allons éditer le fichier de configuration.

sudo nano /etc/samba/smb.conf

Si vous souhaitez limiter les connexions à votre NAS en demandant une authentification, rendez vous à la ligne

##### Authentification #####

et rajoutez la ligne suivante juste en dessous

security = user

Afin de gérer les espaces de stockage privés, rendez vous maintenant dans la partie [homes]. Si vous souhaitez pouvoir écrire (envoyer des fichiers) sur votre NAS, vérifiez bien que le fichier contient la ligne suivante :

read only = no

Enfin, tout en bas du fichier, nous allons rajouter des paramètres relatifs à l’accès à la partie public du NAS :

[public]
  comment= Public Storage
  path = /home/shares/public
  valid users = @users
  force group = users
  create mask = 0660
  directory mask = 0771
  read only = no

Fermez le fichier en le sauvegardant et redémarrez samba

sudo /etc/init.d/smbd restart

A présent, nous allons ajouter un utilisateur à samba. Dans notre exemple nous ajouterons l’utilisateur pi.

sudo smbpasswd -a pi

Ajouter un périphérique multimédia

Si vous voulez ajouter une clé USB ou un disque dur pour avoir plus de stockage, c’est bien évidemment possible. Pour simplifier les choses si vous souhaitez  connecter plusieurs périphériques, il est préférable d’effectuer de brancher/configurer les périphériques un par un.

Commencez par brancher votre périphérique à votre Raspberry Pi. La première chose à faire après cela c’est de détecter quel est le nom que la Raspberry lui a associé. Pour cela exécutez la commande

dmesg

Généralement, le nom du média est sda1 mais cela peut changer notamment si vous avez plusieurs périphériques branchés.

Attention, votre périphérique doit être formaté avec un système de fichier Linux (ext3, ext4, etc.). Si ce n’est pas le cas, vous pouvez la formater en utilisant la commande suivante (en remplaçant sda1 par le nom de votre périphérique s’il est différent).

umount /dev/sda1
sudo mkfs.ext4 /dev/sda1

Créez ensuite un répertoire dans lequel sera monté le périphérique pour qu’il soit accessible via le NAS, et lui donner les droits de lecture/écriture nécessaires

sudo mkdir /home/shares/public/disk1
sudo chown -R root:users /home/shares/public/disk1
sudo chmod -R ug=rwx,o=rx /home/shares/public/disk1

Le nom du dossier (disk1 dans l’exemple) importe peu, mettez celui que vous souhaitez pour pouvoir le retrouver aisément sur le réseau. Une fois que c’est fait, montez le périphérique dans ce dossier.

sudo mount /dev/sda1 /home/shares/public/disk1

Monter les périphériques au démarrage de la Raspberry Pi

A ce stade là de l’installation, il reste effectivement un problème. Lors du redémarrage de la Raspberry Pi, les péripériques ne se montent pas obligatoirement. Pour corriger cela, éditez le fichier fstab.

sudo nano /etc/fstab

et pour chaque périphérique, rajoutez en bas du fichier la ligne suivante (en faisant bien attention de ne pas se tromper sur le nom du périphérique et le répertoire dans lequel il doit être monté)

/dev/sda1 /home/shares/public/disk1 auto noatime,nofail 0 0

Se connecter au serveur NAS

Notre NAS est maintenant configuré et je n’ai donc plus qu’à vous expliquer comment vous y connecter. Je ne vais pas le faire pour tous les systèmes d’exploitation, c’est assez similaire pour chacun. Sachez que pour les smartphones, vous pouvez vous y connecter avec une appli comme File Expert pour Android ou File Explorer sur IOS.

Pour vous connecter depuis Windows, rendez vous sur la fenêtre Ce PC cliquez sur l’onglet Ordinateur puis cliquez sur Connectez un lecteur réseau.

La lettre du lecteur importe peu mais vous devez renseigner où se trouve la Raspberry Pi sur le réseau. soit par son nom, soit par son adresse ip. Si vous n’avez jamais changé le nom de votre Raspberry Pi vous devriez pouvoir vous connecter au répertoire public en renseignant \\raspberrypi\public et au répertoire privé avec le nom d’utilisateur (dans notre exemple pi) en renseignant \\raspberrypi\pi

Voilà, vous avez désormais un superbe NAS avec votre Raspberry Pi ! Il ne vous reste plus qu’à installer un média-center sur une seconde Raspberry Pi pour avoir un système multimédia au top !

3.6/5 - (177 votes)
Partager
Newsletter
Auteur :
Raspberry Pi FR
Rejoignez la communauté Raspberry Pi
Un ordinateur à 35€ déjà vendu à 10 millions d'exemplaires
ACHETEZ LA NOUVELLE RASPBERRY PI 4
Tutoriels en rapport
Installer un media-center avec OSMC sur votre Raspberry Pi ! RaspiSMS 2.0, envoyer des SMS par internet avec la Raspberry Pi Installer un serveur web sur votre Raspberry (Apache + PHP + MySQL) Bien choisir vos accessoires pour les Raspberry Pi 3 et 2 Installer un serveur Minecraft sur votre Raspberry Pi !
49 commentaires
Besoin d'aide ? Vous la trouverez plus vite sur notre forum.

  1. Christophe dit :

    J’ai exactement le même problème donc, copier/coller

    Damien 80000
    1 février 2020 à 13 h 14 min

    Bonjour,
    Merci pour votre tuto ! Je rencontre cependant un souci sur la fin. Lorsque je souhaite me connecter au dossier via windows et que je rentre \\raspberrypi\public il m’est impossible de me connecter. On m’indique que le mot de passe est incorrect. Il s’agit bien du mot de passe utilisé pour se connecter au raspberry ? (notamment via le ssh et que l’on peut modifier sur l’interface bureau (Préférences>Configuration du Raspberry pi).

    Je vous remercie par avance pour votre aide et pour votre travail d’une manière générale :).

    Et je ne trouve rien de satisfaisant sur le forum ou j’ai mal cherché.
    Mais est-ce que Damien 80000 a trouvé le problème ?

    1. Salut, je n’ai pas de pi avec Samba sous la main pour vérifier. Si tu ne trouves pas de sujet sur le forum, je t’invite à en créer un :).

  2. Melvin dit :

    Salut, J’ai un disque dur de 1To, j’ai fait tout comme il faut pour le mount dans le dossier /shares/public/DD1 mais sa n’as pas l’air de fonctionner car quand je veux mettre mes fichier qui font 50GO sa me dit que je n’ai pas asser de place :c

    1. Salut, peut-être le disque est-il formaté en FAT32 qui limite les fichiers à 4 Go ?

  3. Damien 80000 dit :

    Bonjour,
    Merci pour votre tuto ! Je rencontre cependant un souci sur la fin. Lorsque je souhaite me connecter au dossier via windows et que je rentre \\raspberrypi\public il m’est impossible de me connecter. On m’indique que le mot de passe est incorrect. Il s’agit bien du mot de passe utilisé pour se connecter au raspberry ? (notamment via le ssh et que l’on peut modifier sur l’interface bureau (Préférences>Configuration du Raspberry pi).

    Je vous remercie par avance pour votre aide et pour votre travail d’une manière générale :).

    1. Salut, n’ayant plus utilisé samba depuis longtemps, je pense que tu trouveras plus facilement de l’aide sur le forum.

  4. Boissieux dit :

    Bonjour
    J,ai scrupuleusement suivi le tuto ,j,ai le system Raspbian Buster 4.19 installé sur une carte SD de 32 go. Je monte une cle USB de 64 GO formatée ext4 comme disque NAS.
    Je me connecte a partir de Windows en me connectant a un lecteur de réseau et en regardant les propriétés de mon lecteur Z en l’occurrence je m’aperçois que le disque Nas est ma carte SD de 32GO et non ma clé USB de 64 Go ;
    J;ai refait plusieurs fois la manip et j’ai toujours le même pb.
    Si je me connecte depuis mon téléphone portable je retrouve bien les infos que je mets sur mon Nas sur dsk1 par exemple mais le dsk1 est sur ma carte systeme.
    Une info complémentaire j’ai modifie mon rasp pour qu’il puisse booter depuis un dd dur ou un ssd éventuellement.. Cela pourrait il avoir une relation avec mon PC.
    Le plus étrange je ne trouve rien sur les forums relatant ce type de pb , sachant que j’ai fait plusieurs fois la manip en partant de zéro et en recréant toujours un nouveau système propre.
    Merci si vous avez des infos
    JB

    1. Salut, tu devrais ouvrir un sujet sur notre forum, tu trouveras sûrement des gens pour t’aider.

  5. Bob dit :

    sudo mkdir /home/shares/public/disk1
    sudo chown -R root:users /home/shares/public/disk1
    sudo chmod -R ug=rwx,o=rx /home/shares/public/disk

    Manque pas un 1 tout a la fin ?

  6. Eric dit :

    Bonjour,
    Impossible pour moi de le faire marcher. Zindozs m’indique que je ne dispose pas des autorisations nécessaires pour utiliser cette ressource, et la log m’indique « At this time the ‘Samba’ binary should only be used for either : ‘server role = active directory domain controller’ or to access the ntvfs file server with ‘server services = +smb’ or the rpc proxy with ‘dcerpcendpoint servers = remote’ You should start smbd/nmbd/winbindd instead for domain member and standalone file server tasks.

  7. Michel dit :

    Bonjour,
    La commande sudo chmod -R ug=rwx,o=rx /home/shares/public/disk ne marche pas. à remplacer par sudo chmod -R ug=rwx,o=rx /home/shares/public/disk1 je suppose

  8. Syriolkay dit :

    C’est bon a force de chercher j’ai trouvé la solution…il faut d’abord créer les utilisateurs dans Raspbian et ensuite les intégrer dans samba

  9. Syriolkay dit :

    j’ai un soucis pour créer des users,le profile Pi est créé,mais je voulais créer un profile supplementaire pour les autres utilisateurs….

    a chaque fois que je mets la commande

    sudo smbpasswd -a Syriolkay(par exemple)

    ca me demande le mdp 2 fois,là rien d’annormal et apres ca me mets ce message d’erreur:

    Failled to add entry for user Syriolkay

    d’où cela pourrait il venir?

    1. Salut, tu devrais aller demander sur le forum, tu trouveras plus facilement de l’aide.

  10. Syriol Kay dit :

    Bonjour,apres m’etre pris la tête a mainte et mainte reprise pour faire redemarrer Samba,je me suis appercu que votre commande n’était pas bonne….

    sudo /etc/init.d/samba restart ——–>sudo: /etc/init.d/samba: command not found

    il faut rentrer cette commande:

    sudo /etc/init.d/smbd restart

    tres bon tuto…

    1. Merci pour l’info, ça doit être une modification récente, nous avons corrigé.

  11. Hervé dit :

    Bonjour,
    Je pense qu’il faut noter sudo /etc/init.d/smbd restart en lieu et place de sudo /etc/init.d/samba restart.
    J’avais le retour sudo /etc/init.d/samba restart command not found et c’est la solution que j’ai trouvé sur les forums.
    Cordialement

  12. Alexandre dit :

    Bonsoir à tous,

    J’ai suivi le tuto afin de créer le NAS ainsi que OSMC.
    Par contre, je ne sais pas comment lier les deux.
    Y a t’il une personne capable de me répondre svp?

    Merci d’avance

    1. Salut, pour faire un NAS avec OSMC je te conseils d’installer OSMC dans un premier temps, puis d’accéder à la ligne de commande d’OSMC et d’installer le NAS dessus.

  13. Ahmed dit :

    Attention, si vous avez comme moi le soucis de taille de stockage lorsque vous montez le lecteur réseau, pensez dans le fichier /etc/samba/smb.conf à mettre path = /home/shares/public/disk1
    Ajoutez bien ces droits
    sudo chown -R root:users /home/shares/public/disk1
    sudo chmod -R ug=rwx,o=rx /home/shares/public/disk1

    Vous verrez ensuite le poids de stockage fourni par votre lecteur (HDD, USB…) et pourrez écrire dedans sans soucis

  14. renard dit :

    pi@raspberrypi:~ $ sudo apt install samba samba-common-bin
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    Package samba is not available, but is referred to by another package.
    This may mean that the package is missing, has been obsoleted, or
    is only available from another source
    However the following packages replace it:
    samba-common samba-libs

    Package samba-common-bin is not available, but is referred to by another package.
    This may mean that the package is missing, has been obsoleted, or
    is only available from another source

    E: Package ‘samba’ has no installation candidate
    E: Package ‘samba-common-bin’ has no installation candidate

    1. Salut, essayes un apt update avant, parfois c’est juste la lsite des paquets qui n’est pas à jour.

  15. louis paulet dit :

    sudo chmod -R ug=rwx,o=rx /home/shares/public/disk

    devrait être

    sudo chmod -R ug=rwx,o=rx /home/shares/public/disk1

  16. lexa dit :

    Je ne suis pas sur que le Raspberry ne soit le plus indiqué. Ce qui fait la force du raspberry c’est sa très forte communauté et ses très très nombreuses possibilité.

    Cependant pour des usages très classiques comme celui-ci, je conseillerai plutot un autre type de nano pc qui a plus de chevaux mais surtout un vrai port Ethernet, qui plus est 1Gbits/s.

    Depuis peu, il y a l’Ordroid avec le port Gigibits + USB3 en non partagé. Le modèle HC1 de chez Ordroid, un convertisseur USB3=>SATA est mis en place. Il est vendu dans un boitier, c’est propre. Désolé de faire de la pub d’un autre produit sur un site de raspberry mais je reste persuadé que Raspberry est beaucoup plus adapté sur des projets plus sophistiqué ne demandant pas spécialement de ressources réssources ou de puissance.

  17. Soufiane O dit :

    Je voulais seulement vous remercié. Merci.

  18. Maxfly dit :

    J’ai eu quelques petits problèmes, pour compléter le tuto :
    pour détecter le nom du disque dur j’ai dû plutôt utiliser la commande :
    sudo fdisk -l

    Deuxième point, je n’arrivais pas à écrire sur mon HDD via le réseau à la fin du tuto, alors que dans le dossier « public » je pouvais, j’ai dû rajouter les commandes suivantes :
    sudo chown -R root:users /home/shares/public/disk1
    sudo chmod -R ug=rwx,o=rx /home/shares/public/disk1

    J’ai pas galéré longtemps, mais ça peut aider pour les débutants

    Sinon tip top ! Merci du tuto

  19. Thomas dit :

    Bonjour,

    J’arrive sans problème à me connecter au Raspberry Pi via W10, puis à voir le dossier disk1 et à y accéder. Cependant, je ne peux pas écrire dessus, il m’indique qu’il me faut une autorisation.

    Je pense pourtant avoir tout bien suivi dans votre tutoriel ^^
    Une idée de la provenance de ce problème ?

    Merci !

    1. Salut, nous avions oublié la commande d’ajout des droits sur le dossier du disk, le tutoriel est maintenant à jour !

  20. Asteroide05 dit :

    Bonjour,

    je dirais aussi lors du formatage de rajouter sudo

    sudo mkfs.ext3 /dev/sda1

  21. jeje dit :

    il y a une erreur dans ce tuto.
    a l’étape:

    et rajoutez la ligne suivante juste en dessous

    security = use

    ajouter un « r » a la fin de « use ».

    1. Merci du retour, c’est fixé.

  22. Torelka dit :

    Bonsoir,

    Pourquoi un formatage en Ext3? le Ext4 ne fonctionne-il pas?

    cf:Attention, votre périphérique doit être formaté avec un système de fichier ext3.

    Cordialement

    1. Je pense que ext4 doit fonctionner parfaitement. En fait le sens de notre phrase aurait plutôt du être un format « ext » de façon général. Si tu peux me confirmer que ça marche en ext4 on mettra ça à jour.

  23. Nono dit :

    Merci pour ce tuto.
    Juste pour préciser ne pas lire « security = use » mais « security = user ».
    Qui est, je pense, le mode par défaut, si rien n’ai précisé,

  24. Guillaume dit :

    Bonjour, je suis un peu nouveau. J’ai suivi le tutoriel à la lettre. Tout fonctionne mais quand je me connecte sur windows j’ai une erreur d’authentification.
    Le user c’est bien pi et le mot de passe celui utilisé lors de la commande bash : sudo smbpasswd -a pi ?
    merci d’avance

    1. Salut, oui normalement c’est ça, mais il y avait une petite erreur de frappe sur « security = user » on avait mis « security = use » à la place !

  25. HAEZEBROUCK dit :

    Bonjour,

    Il y a quelques années, j’avais monté un serveur SAMBA avec le premier Raspberry Pi + DD Externe auto-alimenté, les performances étaient désastreuses .. Est-ce qu’avec le RPi 3 les performances devraient être améliorées ?

    Merci d’avance pour votre éclairage,
    Lib’

    1. Salut, oui je pense que ça c’est bien améliorer. De notre coté nous n’utilisons pas au quotidien car par l’utilité, mais je sais que c’est une utilisation très « classique » du pi.

  26. Etienne dit :

    Oui enfin un nas sur des dd en USB… Même en etant pas exigeant sur les performances, c’est vraiment médiocre…

    1. Alors effectivement, l’USB c’est pas le truc le plus rapide du monde. En même temps, on est pas sur les mêmes budgets non plus.
      Après ça pose une question, quel intérêt d’avoir du full SSD de la mort qui tue si derrière c’est pour passer par le réseau local et ta box en Wi-Fi, qui sera de toutes façons bridée à 100 MB/s…

      1. lmdlg dit :

        Quel serait le facteur limitant ?
        L’USB 2.0 ? Le Wifi ? La Raspberry elle même ? Est-ce que brancher la Rapsberry sur le port Ethernet va améliorer les vitesses de transmission.
        Sinon, pourquoi ne pas ajouter nofail à la ligne
        /dev/sda1 /home/shares/public/disk1 auto noatime 0 0
        afin que ça ne plante pas si le DD n’est pas branché ?
        Cela donnerait :
        /dev/sda1 /home/shares/public/disk1 auto noatime,nofail 0 0

        1. Merci de l’idée, on ajoute. Si je devais miser, par défaut je dirais le Wi-Fi, et juste après l’USB 2.0.

  27. Nono dit :

    « Prenez de préférence des disques durs auto-alimentés pour soulager la consommation énergétique de la Raspberry Pi. »

    Les disques durs auto-alimentés ne sont pas JUSTEMENT ceux qui utilise l’alimentation via le port USB = Augmente la consomation du Raspberry ?
    => Je ne sais pas pour les modèle récent de Rasp (j’ai le 2B encore) mail il me faut préférer un disque dur alimenté (ou un alim rasp a + de 2A) pour « supporter » un dd auto-alimenté.

    1. C’est effectivement ce que je voulais indiqué, erreur de formulation. Je change ça. Merci pour le retour 🙂

Partager
Inscription à la Newsletter
Inscrivez-vous à la Newsletter.
Vous avez aimé cet article ?
Inscrivez-vous et restez informé !