onsdag 9 december 2009

Skapa CIFS/SMB share

För att dela ut poolen via CIFS (windows utdelning) gör man på liknade sätt som för NFS.

Man behöver bara sätta egenskapen(property) sharesmb på filsystemet som ska delas ut.
Kommandot ser ut så här:
zfs set sharesmb="on|off" pool-name

Min pool heter protector så kommandot blir för mig:
zfs set sharesmb=on protector

Nu är /protector utdelad som smb://ip/protector

Vill du inte ha poolnamnet på utdelningen så kan du ange valfritt utdelningsnamn så här:
zfs set sharesmb=name=myshare pool-name/filesystem

Ex:
zfs set sharesmb=name=hinken protector
Med det kommandot kommer poolen /protector delas ut som smb://ip/hinken



För att se vilka utdelningar man har gjort körs följande kommando:
sharemgr show -vp zfs

Läs mer om sharesmb här

Jag vill att alla ska ha fullständiga rättigheter till utdelningen. Att bara köra kommandot chmod -R 777 på filsystemet var inte tillräckligt. Det visade sig att windows använder ACL och att Sun(C)'s implementation av CIFS stödjer detta fullt ut. Till skillnad från Samba, som jag är van vid från Ubuntu, översätts inte *nix rättigheter till ACL. Om jag nu fattat det rätt.
Lösningen är att sätta rätt ACL på zfs poolen.
Jag körde följande kommando (allt på en rad):
chmod -R A=owner@:rwxpdDaARWcCos:df:allow,
everyone@:rwxpdDaARWcCos:df:allow

Som ger ägare:full-kontroll och alla:full-kontroll

Inga kommentarer:

Skicka en kommentar