disque dur

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

Mis à jour le 9 mars 2018 - 27 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/samba 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/disk

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 !

Partager
Newsletter
Auteur :
Raspbian France
Rejoignez la communauté Raspberry Pi
Un ordinateur à 35€ déjà vendu à 10 millions d'exemplaires
ACHETEZ LA NOUVELLE RASPBERRY PI 3
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 Bien choisir vos accessoires pour les Raspberry Pi 3 et 2 Envoyer, gérer et recevoir des SMS avec la Raspberry Pi Installer un serveur web sur votre Raspberry (Apache + PHP + MySQL)
27 commentaires
Besoin d'aide ? Vous la trouverez plus vite sur notre forum.
  1. 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 🙂

  2. 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.

  3. 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.

  4. 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 !

  5. 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é,

    1. C’est corrigé merci !

  6. 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.

  7. 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é.

  8. Asteroide05 dit :

    Bonjour,

    je dirais aussi lors du formatage de rajouter sudo

    sudo mkfs.ext3 /dev/sda1

  9. 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 !

  10. 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

  11. Soufiane O dit :

    Je voulais seulement vous remercié. Merci.

  12. 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.

  13. 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

  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.

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