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

  • État Fermée
  • Pourcentage achevé
    100%
  • Type Évolution
  • Catégorie Services locaux → SMB
  • Assignée à Personne
  • Système d'exploitation Tous
  • Sévérité Basse
  • Priorité Très Basse
  • Basée sur la version A PRECISER
  • Due pour la version Non décidée
  • Échéance Non décidée
  • Votes
  • Privée
Concerne le projet: Freebox Server (Ultra V9/ Pop V8/ Delta V7 / Revolution V6 / Mini 4K)
Ouverte par idoric - 23/04/2021
Dernière modification par 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.

Fermée par  mmakassikis
26.04.2021 07:29
Raison de la fermeture :  Résolu
Admin

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

idoric a commenté le 23.04.2021 20:28

"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).

Admin

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.

idoric a commenté le 24.04.2021 10:03

Je prends bien note.

Chargement...

Activer les raccourcis clavier

Liste des tâches

Détails de la tâche

Édition de la tâche