1

Temat: Ograniczenie przestrzeni katalogu

Cześć,
Czy quotą uzyskam limit przestrzeni dla określonego katalogu na dysku. Tzn. mam dysk 750 GB i mam na nim katalog dokumenty, który udostępniam sambą i chcę, aby maksymalny rozmiar jaki ten katalog może osiągnąć wynosił np. 20 GB. Czy uzyskam coś takiego quotą a jeżeli nie to w jaki sposób?
Pozdrawiam

2

Odp: Ograniczenie przestrzeni katalogu

Generalnie OpenWrt nie ma wbudowanych linuksowych mechanizmów quoty. Więc jeżeli chcesz wykorzystać te mechanizmy to będzie problem.

Natomiast - samba umożliwia podanie wolnego miejsca na nośniku (opcja dfree). Można by ją tak przerobić, że jeżeli dane zajmują więcej niż te 20GB to niech zwraca 0 po prosty, wtedy windows odmówi zapisu na taki dysk. Powinno działać, choć nie sprawdzałem.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: Ograniczenie przestrzeni katalogu

Cezary, mógłbyś mnie trochę nakierować?
Opcja

 df $1 | tail -1 | awk '{print $2" "$4}'

pokazuje całkowitą pojemność partycji oraz wolną przestrzeń jako ilość bloków KB oddzielonych spacją, takich danych oczekuje polecenie dfree w sambie.
Stworzyłem plik dfree w /etc/config o zawartości

root@Gargoyle:/etc/config$ cat dfree

df $1 | tail -1 | awk '{print $2" "$2-1000000}'
root@Gargoyle:/etc/config$

w /etc/samba/smb.conf.template dodałem polecenie

        smb passwd file = /etc/samba/smbpasswd
        dfree command = /etc/config/dfree
root@Gargoyle:/etc/samba$

restartuję sambę a mimo tego windows nadal pokazuje niezmienione dane odnośnie pojemności partycji.
Masz jakiś pomysł co robię źle?
Pozdrawiam

4

Odp: Ograniczenie przestrzeni katalogu

Pierwsza to całkowita pojemność, druga to ilość wolnego. Odejmując te dwie dostaniesz liczbę zajętego.

Więc pierwszą ustaw na 20G (przeliczywszy na bloki 1k), a drugą na 20G - liczbą zajętego, dostaniesz ilość pozostałych z tych 20G.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5 (edytowany przez szupek 2012-08-19 23:15:52)

Odp: Ograniczenie przestrzeni katalogu

Ale rzecz w tym, że nawet jak w skrypcie wpiszę z palca jakieś wartości np.:

df $1 | tail -1 | awk '{print $2000000" "$1900000}'

to system nadal pokazuje tyle samo miejsca - prezentacja wolnego miejsca nie zmienia się. Chyba jednak coś pominąłem w konfiguracji.

PS. Czy komendę "dfree command" powinienem dodać w sekcji global (tak jak mam teraz), czy przypisać per share?

6

Odp: Ograniczenie przestrzeni katalogu

W global. W skrypcie podaj np

echo "2000 1000" i zobacz ile Ci raportuje wolnego miejsca.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7

Odp: Ograniczenie przestrzeni katalogu

Teraz wykonanie skryptu pokazuje

root@Gargoyle:/usr/sbin$ rootfree.sh
2000 1000
root@Gargoyle:/usr/sbin$

a mimo wszystko windows pokazuje taką samą jak poprzednio ilość miejsca.

8

Odp: Ograniczenie przestrzeni katalogu

Pokaż ten plik samby który zmodyfikowałeś.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9

Odp: Ograniczenie przestrzeni katalogu

Proszę bardzo:

root@Gargoyle:/etc/samba$ cat smb.conf.template
[global]
        netbios name = |NAME|
        workgroup = |WORKGROUP|
        server string = |DESCRIPTION|
        syslog = 10
        encrypt passwords = true
        passdb backend = smbpasswd
        obey pam restrictions = yes
        socket options = TCP_NODELAY SO_KEEPALIVE IPTOS_LOWDELAY
        unix charset = UTF-8
        preferred master = yes
        local master = yes
        domain master = yes
        os level = 20
        security = user
        null passwords = yes
        map to guest = Bad User
        guest account = root
        invalid users = root
        smb passwd file = /etc/samba/smbpasswd
        dfree command = /usr/sbin/rootfree.sh



root@Gargoyle:/etc/samba$

10

Odp: Ograniczenie przestrzeni katalogu

Więc to tyle. Możesz w  /usr/sbin/rootfree.sh sobie dodać linię na początku

logger "to dziala"

odczytać coś w windows i zobaczyć w logread czy dfree w ogóle się wykonuje.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

11

Odp: Ograniczenie przestrzeni katalogu

no właśnie rzecz w tym, że chyba ten skrypcik się nie wykonuje nawet. zrobiłem jak napisałeś i logread nie pokazuje ciągu to działa.

12

Odp: Ograniczenie przestrzeni katalogu

A zrób restart samby. No i czymś musisz najpierw przez sambe wejść do tego katalogu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

13

Odp: Ograniczenie przestrzeni katalogu

Robiłem restart samby, później całego urządzenia. Wchodzę do folderu przez eksplorator windows, mam te dyski podmapowane w "Mój komputer" i tam wyświetla się inrormacja o tym ile jest miejsca zajętego a ile wolnego.

14

Odp: Ograniczenie przestrzeni katalogu

Powiem tak - musi się wykonywać więc...

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

15

Odp: Ograniczenie przestrzeni katalogu

kurna, jak wykonam ten skrypt z palca to widać w logach "to działa". CZyli ten skrypcik nie jest jednak wywoływany z jakiegoś powodu. Czy może to być problem z uprawnieniami zapisu? Nadałem plikowi skryptu prawa 0777.

16

Odp: Ograniczenie przestrzeni katalogu

Po prostu powinna samba wykonywać ten skrypt przy dostępie do zasobu. I tyle.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.