Freebox Server (Pop V8/ Delta V7 / Revolution V6 / Server Mini 4K)

  • État Close
  • Type de tâche Évolution
  • Catégorie Services locaux → SMB
  • Assignée à Personne
  • Système d'exploitation Tous
  • Sévérité Basse
  • Priorité Normale
  • Basée sur la version A PRECISER
  • Due pour la version Non décidé
  • Date d'échéance Non décidé
  • Votes 0
  • Privée Non
Concerne le projet: Freebox Server (Pop V8/ Delta V7 / Revolution V6 / Server Mini 4K)
Ouverte par Jean-Sébastien L. (idoric) - 23/04/2021
Dernière édition par Marios Makassikis (mmakassikis) - 26/04/2021

FS#34633 - Impossible de créer un lien dur (hardlink) sur un disque dur monté via SMB

Bonjour,

La création d’un lien dur (hardlink) ne semble pas possible via le protocole SMB (en version 2 et 3 du moins, je n’arrive plus à activer la version 1 sur ma distribution Linux donc je ne peux pas tester). Cette fonctionnalité m’est réclamée par mon logiciel de backup, qui m’affiche “Failed to initialize repository […] hardlinks not supported […]”.

Je précise qu’avec le même disque, via un partage SMB également, cela fonctionne parfaitement sur mon Raspberry Pi avec LibreElec (malheureusement, il surchauffe trop vite pour être utilisable comme NAS de fortune). Après vérification, le format NTFS est censé gérer les liens durs, et j’ai pu constater qu’après reformatage au format ext4, le problème était identique. Par contre, en NTFS comme en ext4, j’arrive à initialiser (et à utiliser) mon dépôt de backup si j’utilise le partage AFP (Partages Mac OS, AirPort): des liens durs sont bel et bien créés.

D’après mes recherches, avec Samba il faut activer les “unix extensions” dans le fichier “smb.conf” (même pour les partitions NTFS malgré la référence à UNIX), mais je ne sais pas si vous utilisez Samba pour SMB2 et SMB3 (SMB2 arrive avec Samba 3.5, or dans les mentions légales de la Freebox vous dites utiliser la version 3.0.37), cette information vous sera donc peut-être inutile.

Je précise que je parle pour la version 4.3 de Freebox OS (le formulaire de rapport de bug ne me propose que 4.2.9 ou à préciser).

Bien à vous.

Close par  Marios Makassikis (mmakassikis)
lundi 26 avril, 2021 07:29:22
Raison de clôture :  Résolu

Cette tache ne dépend pas d'autre tache

Marios Makassikis (mmakassikis)
vendredi 23 avril, 2021 15:19:57

Sur un partage monté avec mount.cifs, la création de hardlink fonctionne (testé en ext4 et xfs):

$ sudo mount -t cifs //192.168.1.254/disk share_smb -o guest,uid=mmakassikis,vers=3.1.1
$ cd share_smb
$ touch file1 file2
$ ln file1 link_to_file1
$ ls -li file1 file2 link_to_file1 
3145738 -rwxr-xr-x 2 mmakassikis root 0 avril 23 16:58 file1
3145739 -rwxr-xr-x 1 mmakassikis root 0 avril 23 16:58 file2
3145738 -rwxr-xr-x 2 mmakassikis root 0 avril 23 16:58 link_to_file1

La commande ‘ln’ n’a pas renvoyé d’erreur, et les fichiers file1 et link_to_file1 ont bien le même numéro d’inode (3145738).

Pouvez-vous m’envoyer le résultat de la commande “mount | grep cifs” ?
Pouvez-vous également m’indiquer le logiciel de backup utilisé ?

Jean-Sébastien L. (idoric)
vendredi 23 avril, 2021 20:28:18

“mount | grep cifs” ne renvoie rien, et pour cause : le logiciel sous-jacent de backup utilisé est Borg (borgbackup.org), mais c’est Pika Backup (wiki.gnome.org/Apps/PikaBackup) que j’utilise et qui fait office d’interface graphique, et ce dernier accède au partage SMB en faisant appel à GVFS (wiki.gnome.org/Projects/gvfs).

Marios Makassikis (mmakassikis)
samedi 24 avril, 2021 07:50:26

La création de hardlinks fonctionne via smbclient sur la freebox mais aussi sur un serveur samba (sans avoir touché à la configuration pour activer les extensions UNIX).
Ceci me fait penser que le backend SMB de GVFS se fait pas gérer correctement la création de hardlink.

Je vous conseille de monter le disque avec mount.cifs (pour que ce soit fait automatiquement au démarrage, il faut rajouter une entrée dans le fichier /etc/fstab). Par exemple:

 //mafreebox.freebox.fr/Disque /mnt/Freebox cifs vers=3.1.1,uid=idoric,user=freebox,password=freebox123 0 0

Remplacer ‘Disque’ par le nom du disque et adaptez les informations d’authentification. Le répertoire cible (/mnt/Freebox en l’occurrence) doit exister. Le paramètre “uid=idoric” permet à l’utilisateur d’écrire dans le répertoire sans nécessiter les droits root. Enfin, configurer PikaBackup pour stocker les sauvegardes dans /mnt/Freebox.

Jean-Sébastien L. (idoric)
samedi 24 avril, 2021 10:03:04

Je prends bien note.

Chargement...