Sida 1 av 2

sätta userquota

Postat: 23 aug 2008, 17:18
av tops
Hej.
Jag har skapat en ny användare på systemet och vill att han bara skall kunna använda 10Gb av utrymmet i sin homekatalog.
Har installerat quota men sen vet jag inte hur jag går vidare. Har sett nåt om att ändra i fstab men jag vet ej vad som skall ändras.
Nån som kan förklara hur jag gör?

Re: sätta userquota

Postat: 23 aug 2008, 20:16
av andol
Vet inte riktigt i vilken omfattning det finns en grafik lösning (menyer, etc) för att sätta diskkvota. Hur bekväm känner du dig med att använda terminalen?

Re: sätta userquota

Postat: 23 aug 2008, 20:47
av tops
Terminaen fixar jag med lite bra vägledning.

Re: sätta userquota

Postat: 23 aug 2008, 22:35
av andol
Okej, då ska jag se till att skriva ihop något åtminstone nästan pedagogiskt imorgon. Just nu är jag lite för trött för att ens vilja försöka bygga ihop en trevlig förklaring.

Re: sätta userquota

Postat: 23 aug 2008, 22:52
av tops
Vad bra. kanske nåt att lägga på Wikin om den blir bra!

Re: sätta userquota

Postat: 24 aug 2008, 15:16
av andol
Sådärja.

Alla kommandon kommer att behöva köras med full root-behörighet. Istället för att använda sudo varje gång så ska vi helt enkelt se till att bli root. Har man sedan tidigare satt en root-lösen kan man använda kommando su för att bli root. Annars så är det antagligen lättast att använda sudo enligt följande.

Kod: Markera allt

$ sudo -i
För se vi till att installera de paket som behövs.

Kod: Markera allt

$ apt-get install quota quotatool
Sen är det dags att göra de där ändringarna i fstab du hört om. För att ett filsystem ska kunna hantera diskquota så måste det vara monterat med alternativen usrquota och/eller grpquota. Detta beroende om man vill hantera quota på användar- och/eller gruppnivå. Då det i ditt fall verkar röra sig om en specifika användare så antar jag att vi nöjer oss med usrquota?

Öppna nu /etc/fstab med din favoriteditor. Skulle det vara så att din favoriteditor (läs: emacs) inte finns installerat så kan vi använda oss utav nano istället.

Kod: Markera allt

$ nano /etc/fstab
Hitta där raden som monterar filsystemet du vill sätta quota på. Den kan till exempel se ut i stil med

Kod: Markera allt

UUID=373ee529-60a3-417c-8ecd-0125a30ff108 /               ext3    relatime,errors=remount-ro   0  1
eller

Kod: Markera allt

UUID=373ee529-60a3-417c-8ecd-0125a30ff108 /home        ext3    relatime  0  2
Har du ett filsystem monterat på /home så är det det du vill peta på.

Lägg där till usrquota i alternativkolumnen enligt exempel

Kod: Markera allt

UUID=373ee529-60a3-417c-8ecd-0125a30ff108 /home        ext3    relatime,usrquota  0  2
(Få nu bara inte för dig att kopiera raden ovan rakt av. UUID-värdet är unikt för varje hårddisk.)

Vill du inte starta om datorn för att få de nya inställningarna att gälla så är lättaste alternativt att remounta filsystemet ifråga. Givet att vi har en separat /home så ser det ut så här.

Kod: Markera allt

$ mount -o remount,relatime,usrquota /home
Annars så ändrar du sista värdet från /home till /

Givet att du inte startade om datorn behöver du nu lite halvmanuellt sparka igång quotahanteringen. För att göra det kör du följande kommando.

Kod: Markera allt

$ /etc/init.d/quota start
(Givet att du tittat i en annan, mer manuell, guide kanske du har sett referenser till quotacheck och quotaon. Dessa tar /etc/init.d/quota hand om.)

Nu har vi ett system med stöd för quotahantering. Då dags att faktiskt sätta en quota. Detta kan göras med kommandot quotatool enligt följande modell.

Kod: Markera allt

$ quotatool -u användare -b -l hårdgräns -q mjukgräns filsystem
Exempelvis

Kod: Markera allt

$ quotatool -u andol -b -l 10240Mb -q 8192Mb /home 
Komplettera gärna med flaggorna -nv för att låta det bli en testkörning (n) och se vad som händer (v).

Av någon anledning så verkar postfixet Gb inte fungera. Däremot så går det utmärkt att använda Mb och Kb.

En hård gräns är precis vad det låter som. Den mjuka gränsen går däremot att överstiga under en begränsad tidsperiod. Defaultvärdet för denna tidsperiod är en vecka.

I övrigt så har quotatool en rätt trevlig man(ual) sida.

Kod: Markera allt

$ man quotatool
Nej, det där sista kommandot behöver man inte vara root för att kunna köra :)

Re: sätta userquota

Postat: 24 aug 2008, 17:40
av maths57
Helt klart något för wikin, andol!

Blev lite nyfiken när jag läste den här tråden, så jag kollade runt lite. Hittade att man kunde starta quota så här.

Kod: Markera allt

quotaon -avug 
Är det några start alternativ man missar genom att göra så?

Sedan var det ett smidigt sätt att tilldela användare diskkvot. Jag hittade att man kunde göra så här.

Kod: Markera allt

edquota -u användare 
Man får då upp en tabell som man ska redigera. Men då ska man ju ange mängden i block. Lite knöligt, va?

För att kolla upp en användare.

Kod: Markera allt

sudo quota -u användare 
För att få en fullständig rapport

Kod: Markera allt

sudo repquota -a 

Re: sätta userquota

Postat: 24 aug 2008, 17:50
av tops
Hej.
Jag har fått problem. Installerade quotatools, och börja editera fstab.
Måste gjort nåt generalfel, för när jag köre remount kommandot gick det ej, så jag starta om datorn.
Nu får jag fail to start xserver, men det går att logga in textmessigt utan att grafiken laddas. Dock så har jag nu inga skrivrättigheter till
disk inte ens som sudo. Så jag kan inte ändra tillbaka min fstab. Jag tog en kopia på fstab innan jag editera den, men etfresom jag inte kan
skriva till disk så är jag låst. Hur skall jag lösa detta??

Re: sätta userquota

Postat: 24 aug 2008, 18:00
av maths57
Försök med att köra installations-CDn. Ifrån den lägger du tillbaka din gamla fstab. Klokt av dig att kopiera filen innan du gjorde något.

Re: sätta userquota

Postat: 24 aug 2008, 18:08
av tops
i vilket läge från installatinscd skall man göra detta?
Såg nu att jag råka skriva userquota istället för usrquota i min fstab....

Re: sätta userquota

Postat: 24 aug 2008, 18:10
av maths57
Det vanliga läget, skulle jag tro. Du borde få tillgång till hårddisken från live-CDn och utföra det du behöver. Bra att du har identifierat felet. Då borde det bara vara att ändra det och starta om.

Re: sätta userquota

Postat: 24 aug 2008, 18:18
av tops
Hm, vanliga....
Jag har satt i skivan och då kan jag välja att köra från windows (prova på ubuntu), installera ubuntu, testa minne osv.
Skall jag köra int´stallera i detta läget?
Borde det inte gå att fixa skrivrättigheter på disken? jag vet ju vad felet är...shit vill inte installera om allt igen....
Så fort jag försöker göra nåt (tex skapa en mapp) får jag ":read-only file system"

Re: sätta userquota

Postat: 24 aug 2008, 19:52
av maths57
Nej nej, du ska inte installera om! Du kan inte använda alternativ CDn här, du måste ha standard-CDn. Om du då väljer det översta start alternativet, har jag för mig, kommer du till skrivbordet på live-skivan. Du kör ju distrot direkt från skivan. Det ska vara möjligt att därifrån kunna montera hårddisken och komma in till den fil du ska redigera.

Re: sätta userquota

Postat: 24 aug 2008, 20:00
av tops
Så cdn jag har installerat från är alternativcdn?
Jag antar att det är en annan iso jag skall ladda ner och bränna ut då? Var finns den jag skall ha?

Re: sätta userquota

Postat: 24 aug 2008, 20:10
av andol
Tror nog i och för sig inte att vi ska behöva använda Live-CDn.

När det grafiska inte vill starta sig så antar jag att du får en möjlighet att logga in i textläge?

Logga då in som din vanliga användare. Kör därefter följande kommando.

Kod: Markera allt

sudo mount -o remount,relatime,rw /dev/sda1 /
Nu ska filsystemet åter vara skrivbart, varpå du torde kunna rätta till din fstab.

Re: sätta userquota

Postat: 24 aug 2008, 20:25
av tops
Jag får följande fel:
unrecognized mount option "userquota" oe missing value mount:/ not mounted already, or bad option

Jag råkade ju sätta userquota i fstab istället för usrquota. detta verkar skita min mount.
Ps tror min disk heter sdb5 men det har väl mindre betydelse....

Re: sätta userquota

Postat: 24 aug 2008, 20:32
av andol
Jo, visst kan det ha betydelse. Gjorde nämligen inte bara ett antagande när jag gav dig den där kommandot.

Har du möjlighet att skriva av raden i fstab som innehåller userquota-felet?

EDIT: Nej, det exakta UUID-värdet är inte så noga. Däremot kommentaren på raden ovanför, typ #/dev/sda1 alt. # /dev/sdb5 får du gärna ta med.

Re: sätta userquota

Postat: 24 aug 2008, 20:45
av tops
Kan ha missat sista /, för nu säger de nnåt annat.

Jag skrev följande

sudo mount -o remount,realtime,rw /dev/sdb5 /

Följande kommer ut

EXT3-fs: unrecognizwd mount option "realtime" or missing value
mount: you must specify the filesystem type


I min fstab står det
# /dev/sdb5
UUID=..... (orka inte skriva) /ext3 relatime,userquota,errors=remount-ro 0 1

JAg såg nu att även realtime var fel, relatime... Shit jag hade problem med editorn jag inte var van vid så det smög in sig massa fel....

Re: sätta userquota

Postat: 24 aug 2008, 20:53
av andol
Du ska inte försöka igen, och dubbelkolla att du verkligen skrivit helt rätt? Alltså

Kod: Markera allt

sudo mount -o remount,relatime,rw /dev/sdb5 /
Kan också vara en idé att se till så det verkligen rör sig om /dev/sdb5, och inte bara en kommentar som blivit felaktig av någon anledning. Kör kommandont mount (utan paramterar) och se vilken enhet det är som står i anslutning till /

Borde som sagt verkligen fungera. Har till och med reproducerat felet, såväl som lösningen, på en virtuell maskin.

Re: sätta userquota

Postat: 24 aug 2008, 20:58
av tops
Hej igen.
Jag får be så mycket om ursäkt, jag läser inte tillräckligt noga! jag skrev realtime inte relatime, skumt hur ögat läser det den vill se.
Nu funkar det ialla fall, jag kom åt disken och kopierade tillbaka den gamla fstab. starta om och vips så är jag på banan igen.

Så nu skall jag fortsätta försöka sätta userquota.

TACK för att ni tålmodiga människor finns!!