Автор Тема: Отново за самба  (Прочетена 1434 пъти)

anakinn

  • Напреднали
  • *****
  • Публикации: 190
    • Профил
Отново за самба
« -: Feb 26, 2007, 14:51 »
Здравейте.

Имаме следната ситуация. Например има един шеър в самбата (/data1) в него има няколко под директории (например директория "A" "B" и "C"). Как да направя, така че различните юзъри да имат различен достъп до самата директория?
Например user niki да може да пише в "A" и "B", но да не може в "C", а "get" да може да пише "C" и "B" или нещо от сорта

Самба 3.0.24, OS - FreeBSD 6.2

ето го и конфига засега:
[global]
        workgroup = 33
        server string = db
        smb passwd file = /usr/local/etc/usrpass
        log level = 1 vfs:2
        syslog = 0
        log file = /var/log/samba/%U.%m.log
        max log size = 900
        socket options = TCP_NODELAY, SO_RCVBUF=8192 SO_SNDBUF=8192
        name resolve order = wins bcast
        lpq cache time = 10
        printcap name = /etc/printcap
        load printers = No
        show add printer wizard = No
        os level = 22
        preferred master = No
        local master = No
        passdb expand explicit = No
        admin users = niki, root
        read only = No
        hosts allow = 192.168.1., 127., 192.168.2.

[data1]
        comment = Data1
        path = /data1
        admin users = niki, get
        read list = all
        write list = niki, get
        guest ok = Yes
        vfs object = extd_audit recycle
        recycle: config-files = /usr/local/etc/samba-recycle.conf

Благодаря !
Активен

anakinn

  • Напреднали
  • *****
  • Публикации: 190
    • Профил
Отново за самба
« Отговор #1 -: Feb 28, 2007, 17:18 »
Дайте някакъв съвет '<img'>

Да кажем нещо от типа на chmod  на някой от поддиректориите и да се укаже еди коя си група да има достъп до тази директория?
Активен

neter

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 3408
  • Distribution: Debian, SailfishOS, CentOS
  • Window Manager: LXDE, Lipstick
    • Профил
    • WWW
Отново за самба
« Отговор #2 -: Feb 28, 2007, 17:37 »
Можеш да направиш отделни шерове А, В и С и на всеки от тях да зададеш потребители, които могат да пишат там, както си ги задал за data1
за А: write list = niki
за В: write list = niki, get
за С: write list = get
Активен

"Да си добре приспособен към болно общество не е признак за добро здраве" - Джиду Кришнамурти

bozho

  • Напреднали
  • *****
  • Публикации: 115
    • Профил
Отново за самба
« Отговор #3 -: Feb 28, 2007, 17:49 »
прочети за ACL.
С тях ще можеш да даваш ралични права за раличните потребители и групи за една  и съща директория.
Например:


Примерен код
setfacl -R  -m  u:ivan:rwx,u:stoian:r--,g:masters:rwx,g:lamers:--- dirname




Активен

anakinn

  • Напреднали
  • *****
  • Публикации: 190
    • Профил
Отново за самба
« Отговор #4 -: Mar 01, 2007, 15:28 »
neter:

По този начин няма да стане, защото се нарушава дървото/структурата на директориите.

bozho:

Това мисля, че ще свърши работа!

Ще поровя ПАК в man-а на самбата ако има нещо по въпроса, но май не..

Благодаря все пак де.

Още идеи приемам '<img'>
Активен

rpetrov

  • Напреднали
  • *****
  • Публикации: 571
    • Профил
    • WWW
Отново за самба
« Отговор #5 -: Mar 01, 2007, 19:51 »
anakinn,
Най-добре е, ако файловата система ти дава правата.
Но не винаги става - не всички файлови системи поддържат сложни правила за достъп ( POSIX ACL ). Май и самбата иска при компилиране ( ! ) да се укаже дали да поддържа acl ( забравил съм ).

Може и по начина на neter с една  добавка.
Активен

bozho

  • Напреднали
  • *****
  • Публикации: 115
    • Профил
Отново за самба
« Отговор #6 -: Mar 02, 2007, 01:32 »
Цитат (rpetrov @ Март 01 2007,20:51)
anakinn,
Най-добре е, ако файловата система ти дава правата.
Но не винаги става - не всички файлови системи поддържат сложни правила за достъп ( POSIX ACL ). Май и самбата иска при компилиране ( ! ) да се укаже дали да поддържа acl ( забравил съм ).

Може и по начина на neter с една  добавка.

ext2-3 със сигурност подържат '<img'>
но трябва да се компилира и в ядрото
има там
 Tmpfs POSIX Access Control Lists  
като поровиш
За samba - вярно е, но зависи от дистрибуцията - в някои готовите пакети са компилирани с подръжка на acl, както и ядрото-
наскоро с една centos се занимавах - всичко си беше готово.
Активен

anakinn

  • Напреднали
  • *****
  • Публикации: 190
    • Профил
Отново за самба
« Отговор #7 -: Mar 02, 2007, 14:42 »
Файловата система във FreeBSD е UFS

/dev/mirror/gm0s1d      /data           ufs     rw              2       2

Мисля, че fbsd работи без проблем с acl

Също така ще проверя за това DFS, въпреки че много много не можах да разбера за какво става на въпрос. Някаква файлова система...

Аз все още си мисля дали с chmod няма да се получи.
Например слагаме на директория "C" owner групата wheel (например) и по този начин когато някой, който не е в тази група, се опита да достъпи конкретната директория не би трябвало да го допусне нали така ?
Активен

anakinn

  • Напреднали
  • *****
  • Публикации: 190
    • Профил
Отново за самба
« Отговор #8 -: Mar 05, 2007, 10:00 »
Четох, че е възможен следния вариант:
слагат се %username%.conf
т.е. за всеки юзър се описват правата, но нещо не можах да свахана принципа.

Някой да е наясно?
Активен

anakinn

  • Напреднали
  • *****
  • Публикации: 190
    • Профил
Отново за самба
« Отговор #9 -: Mar 07, 2007, 11:55 »
в smb.conf
include = /etc/samba/smb.conf.%m

А това в smb.conf.root, който е в същата директория

Добавих в smb.conf

include = /usr/local/etc/smb.conf.%m

Oт testparm излиза следното:
Can't find include file /usr/local/etc/smb.conf.

А така излежда smb.conf.root
[ROOT]
comment = Files
path = /data (в smb.conf шеъра е "/data", а не "/data1")
guest ok = yes
writable = yes

Ужас направо...
Помощ, помагайте !
Активен