Machen Sie Btrfs-Snapshots mit samba4 und vfs_shadow2 verfügbar

4481
CKlink

Ich versuche, das vfs_shadow2-Modul mit Samba 4.2 unter Fedora 22 zu implementieren, um die Windows Explorer-Funktion "vorherige Versionen" auf Clients zum Laufen zu bringen.

Der freigegebene "Ordner" ist ein reales Btrfs-Subvolume, SELinux ist aktiviert, der richtige Kontext wurde festgelegt und die Freigabe ist durchsuchbar, lesbar und wie erwartet für den Benutzer schreibbar. Außerdem habe ich zwei Momentaufnahmen als direkte Kinder der Freigabe erstellt und benannt (wie in der Dokumentation zu vfs_shadow_copy [1] erwähnt), beispielsweise @ GMT-YYYY.MM.DD-hh.mm.ss.

Meine smb.conf bezüglich dieser Freigabe ist

[btrfs] comment = btrfs storagepool with subfolders, subvolumes and snapshots path = /srv/btrfs/subvol01 vfs objects = shadow_copy2 browseable = yes valid users = testuser 

Beim Verbinden mit einem Windows-Client (Win 8.1 Professional x64) und dem Versuch, eine Datei auf eine frühere Version zurückzusetzen, erhalte ich jedoch nur den Hinweis, dass keine früheren Versionen gefunden wurden.

Was vermisse ich? Ist es ein zusätzliches RPM-Paket, das installiert werden muss (obwohl ich bereits alles installiert habe, das Samba von vfs in seinem Namen enthält)? Jede Hilfe wird sehr geschätzt. Vielen Dank.

Mit freundlichen Grüßen!

[1] https://www.samba.org/samba/docs/man/manpages/vfs_shadow_copy2.8.html

2

1 Antwort auf die Frage

3
CKlink

Gelöst mit diesem Artikel: [GUIDE] Windows Vorherige Versionen und Samba (Btrfs - Atomic COW - Volume Shadow Copy)

So reproduzieren Sie eine funktionierende Konfiguration auf Fedora22

1) Erstellen Sie ein BTRFS-Subvolumen

 mount /dev/sda5 /mnt #your BTRFS partition btrfs subvolume create /mnt/share brtfs subvolume create /mnt/share/.snapshots umount /mnt 

2) fstab editieren (oder mounten)

  UUID= /share brtfs subvol=share 0 0 UUID= /share/.snapshots btrfs subvol=share/.snapshots 0 0 

3) Erstellen Sie eine Samba-Freigabe

 [btrfs]  path = /share  vfs objects = shadow_copy2  shadow:format = @GMT_%Y.%m.%d-%H.%M.%S  shadow:sort = desc  shadow:snapdir = .snapshots  

4) Erstellen Sie einen Readonly-Snapshot

 brtfs subvolume snapshot -r /share /share/.snapshots/@GMT_`date +%Y.%m.%d-%H.%M.%S` 

5) So löschen Sie einen Schnappschuss

 btrfs subvolume delete /share/.snapshots/@GMT_2015.07.31-14.01.20