Ik heb een server ingericht met Ubuntu en samba server werkend gekregen. Een aantal directories worden geshared, samba en ubuntu users zijn aangemaakt, passwords zijn toegewezen.
De directories die worden geshared hebben alle een sticky group (rwxrwsr-x). Dit betekent dat nieuw aangemaakt directories en bestanden dezelfde gid krijgen als de dir waar ze in zitten.
Via de smb.conf heb ik globaal ingesteld dat de permissies voor aanmaak van directories 775 moet zijn (bestanden 664), alle shares zijn read-write.
Hierna aan het testen geslagen:
Locaal werkt dit perfect. Users kunnen op deze manier bestanden en directories aanmaken en zijn wijzigbaar voor alle andere leden van de group (bijv. 'users'). Nieuw aangemaakte dir's krijgen ook de sticky group bit.
Via een XP machine de shares benaderd en directories en bestanden aangemaakt. Werkt perfect: bestanden worden met (locaal gecontroleerd) aangemaakt met de juiste permissies en gid ('users'). Nieuwe dir's krijgen ook hier een sticky group bit.
Via een Ubuntu systeem de server benaderd via en na ingave van gebruiker en wachtwoord bestanden en directories toegevoegd. Werkt ook perfect (juiste permissies met juiste group en sticky). Bij het opvragen van de eigenaar wordt als eigenaar de samba-user vermeld.
Probleem bij bovenstaande verbinding is dat ik wel een verwijziging aan kan maken (komt op desktop te staan) maar deze niet kan gebruiken binnen Thunderbird, Gimp, Gthump en dergelijke omdat deze een fysieke directory vereisen.
Dus via de fstab via smbfs een share gemount aan een directory, credentials via een verborgen file met daarin de samba-user en -password:
credentials=/root/.smbcred,dmask=775,fmask=664
Hier krijg ik een probleem, de rechten zijn totaal anders, kan alleen bestanden lezen (eigenaar blijkt root te zijn).
Hierna binnen de fstab de permissie's weggehaald. Hierna opnieuw gemount.
Naar de gemounte directory gegaan en inhoud bekeken met 'ls -l'.
Gevolg is dat alle bestanden (dirs) als 755 worden gezet. Bestanden worden abusievelijk als uitvoerbaar gepresenteerd en geen schrijfpermissie voor bestanden en directories. Eigenaar is root.
Hier binnen de fstab de permissie's veranderd naar 777 en 666 resp. voor directories en bestanden. Opnieuw gemount.
Verplaatst naar de gemounte directory en met 'ls -l' de inhoud bekeken:
Bestanden krijgen de permissie 666, dirs 777 (hmmm, ok...), eigenaar blijft nog steeds root evenals group (in de verste verte geen gid 'users' te zien).
Bestanden kunnen nu worden aangemaakt. Krijgen eigenaar/group root mee maar zijn 666 permissie. Controle op het serversysteem verteld dat de eigenaar wel degelijk de samba-user is met group 'users'. Jammergenoeg is locaal de permissie 644, dus geen schrijftoegang voor de overige leden van de groep.
Nieuw aangemaakt directories verschijnen op de client met 777 eigenaar/group root. Op de server daarentegen met eigenaar de samba-user en group users en permissie 755, dus ook hier geen schrijftoegang voor de directory voor andere leden van de groep, sterker nog: voor de remote aangemaakte directory is de sticky group aanduiding verdwenen dus voor alle bestanden in de nieuw aangemaakt directory geldt dat de eigenaar/groep de samba-user wordt.
Dit is niet wenselijk. Mijn vraag is nu hoe de fstab moet worden aangepast om een goede situatie te krijgen. Ik heb zelf al geprobeerd om de uid en gid opties toe te voegen binnen de fstab. Dit heeft tot gevolg gehad dat bij presentatie van de gegevens eigenaar/groep op smb-user komt te staan. Nu nog de juiste permissie's en de sticky group bit.
Wie o wie?