  Kvta mini-HOGYAN
  Ralf van Dooren r.vdooren@snow.nl
  v0.5, 2003.08.09

  Elsz: ezt a dokumentumot Ralf van Dooren (r.vdooren@snow.nl) rta.
  Az eredeti szveg s a dokumentum sszelltsa Albert M.C. Tam copy
  left-je, nagyon sok ksznet illeti az eredeti mini-HOGYANrt.  Erre a
  dokumentumra a GNU Free Documentation License elrsai rvnyesek.  A
  jelen dokumentum vltozatlan formban szabadon hasznlhat, msolhat
  s terjeszthet nem kereskedelmi clbl, amennyiben minden msolatban
  s ahhoz tartoz dokumentumokban feltntetik a szerz/szerkeszt
  nevt. A dokumentumot annak remnyben terjesztjk, hogy hasznosnak
  bizonyul, de a szerz SEMMILYEN GARANCIT, sem kifejezett, sem
  belertett formban nem vllal. Br mindent megtettnk a jelen doku
  mentumban tallhat informcik pontossgnak biztostsrt,  a
  szerz/szerkeszt/karbantart NEM VLLAL FELELSSPGET az itt elfor
  dul hibkrt, vagy az itt szerepl informcik alkalmazsbl ered
  esetleges krokrt.

  A dokumentum lerja, hogyan engedlyezzk a fjlrendszer-kvtt egy
  Linuxot futtat gpen, hogyan rendeljnk kvtt a felhasznlkhoz s
  csoportokhoz, valamint bemutatja a klnbz kvta-parancsok
  hasznlatt. A lers a 2.x verzij (legutbb a 2.4.21-esen
  teszteltk) kernelt hasznlk rszre kszlt.

  Ha  hibt tallsz, vagy ha brmilyen informci hinyzik, nyugodtan
  kldj visszajelzseket vagy megjegyzseket az r.vdooren@snow.nl cmre.
  Mltnyolni fogom.


  1.  Mi a kvta?

  1.1.  Mirt kell a kvta?

  A kvta lehetv teszi, hogy kt szempontbl is meghatrozhass
  korltokat a lemezhasznlatra vonatkozan: az inode-ok szmban,
  amiket egy felhasznl vagy felhasznli csoport birtokolhat; ezen
  fell a lemezblokkok szmban, amit egy felhasznlhoz vagy csoporthoz
  rendelni lehet.

  A kvta lnyege az, hogy a felhasznlk arra vannak knyszertve, hogy
  maradjanak a lemezhasznlati korltjuk alatt, megfosztva ket attl a
  lehetsgtl, hogy tetszleges mret helyet foglalhassanak el a
  rendszeren. A kvtt felhasznli s fjlrendszer alapon kezeljk. Ha
  tbb mint egy fjlrendszer van ahol a felhasznl vrhatan
  ltrehozhat fjlokat, akkor a kvtt egyenknt mindegyik
  fjlrendszerre be kell lltani. Klnbz programeszkzk lteznek,
  amelyekkel adminisztrlni s automatizlni lehet a kvta belltsokat
  egy adott rendszeren.


  1.2.  A kvta jelenlegi llapota a Linuxon

  Jelenleg tbb jelents vltozs is folyamatban van a kvta mkdsvel
  kapcsolatban.  Kt klnbz mdszer ltezik. Az eszkzk ugyangy
  mkdnek, a klnbsg csak a hasznlt fjlokban van. Ez a dokumentum
  az _j_ kvta-belltst taglalja. Mivel ez az j bellts nincs
  benne a hagyomnyos kernel-forrsban, szksg van nhny "foltra"
  (patch).  A dokumentumban lerjuk a foltozs mdjt, s a linuxquota
  csomag teleptst. Ha mr teleptve van kvta-szoftver a gpeden,
  akkor nem biztos, hogy fel kell raknod ezt a foltot s csomagot.  Ha
  krdsed van ezzel kapcsolatban, nyugodtan rhatsz nekem e-mailt. A
  jelen dokumentum egy ksbbi verzijban megprblok majd ttekintst
  adni a disztribcikrl, s kvtakezels klnbz megvalstsairl.


  2.  Kvetelmnyek a kvta hasznlathoz


  2.1.  Kernel


  A 2.x-es kernel-forrs megtallhat a http://www.kernel.org
  <http://www.kernel.org>  webhelyen.  Vlassz egy hozzd kzeli
  tkrszervert, hogy takarkoskodj a svszlessggel.  Ha a tar program
  legjabb vltozatt hasznlod, letltheted a .bz2 tmrtett fjlt

  Csomagold ki a kernelt:

  ______________________________________________________________________
  cd /usr/src
  tar jxvf /path/to/linux-2.4.21-tar.bz2      - for bzip2 kernel -
  tar zxvf /path/to/linux-2.4.21-tar.gz       - for gzip kernel -
  ln -s /usr/src/linux-2.4.21 /usr/src/linux
  ______________________________________________________________________



  2.2.  Kvta szoftver


  Attl fggen, hogy milyen Linux-disztribcit hasznlsz elkpzelhet,
  hogy a kvta-szoftver mr teleptve van  a rendszeren. A legfrissebb
  verzi a SourceForge honlapjrl rhet el, s aktv fejleszts alatt
  ll. A fejlesztk honlapjt a
  http://www.sourceforge.net/projects/linuxquota
  <http://www.sourceforge.net/project/linuxquota> webhelyen tallod meg.


  3.  A kvta teleptse s belltsa

  3.1.  A kernel foltozsa

  Tltsd le a szksges kernel-foltot az
  ftp::/atrey.karlin.mff.cuni.cz/pub/local/jack/quota/
  <ftp://atrey.karlin.mff.cuni.cz/pub/local/jack/quota/> webhelyrl.


  Vlaszd ki az ltalad hasznlt kernel verzijt, majd tltsd le a
  foltot. A "patch" parancs segtsgvel foltozd meg a kernelt.
  Amennyiben egynl tbb folt szksges a kerneledhez, figyelj arra,
  hogy a megfelel sorrendben rakd fel azokat.  Ehhez hasznlhatod ezt a
  szkriptet (felttelezem, hogy a letlttt foltok a /tmp/quota/ , a
  kicsomagolt kernel pedig az  /usr/src/linux knyvtrban van) :

  ______________________________________________________________________
  #!/bin/sh

  gunzip /tmp/quota/*.gz
  cd /usr/src/linux
  COUNT=`ls -1 /tmp/quota/*.diff | wc -l`
  for I in `seq 1 $COUNT`
  do
     patch -p1 < /tmp/quota/quota-2.4.21-$I-*.diff
  done
  ______________________________________________________________________



  3.2.  A kernel ismtelt belltsa


  A kernel jrafordtsa sorn a kapcsold be a kvta-tmogatst.


  A "make menuconfig" vagy "make xconfig" hasznlatakor a Filesystems
  men alatt tallhat meg a szksges vlasztsi lehetsg. Ha
  szksged van klnleges szolgltatsokra, itt bellthatod azokat
  (mint pldul 32 bites UID tmogats)


  Mentsd el a belltsokat s fordtsd jra a kernelt. Bizonyosodj meg
  rla, hogy az j kernel indul el a rendszerindtskor.


  3.3.  A kvta-szoftver lefordtsa s teleptse

  Az sszes szolgltats hasznlathoz szksg lehet az j kvta csomag
  (quota-package) letltsre.  A fent emltett helyrl tltheted le
  azt.


  A letlts utn vgezd el a kvetkez mveleteket:


  ______________________________________________________________________
  $ gzip -dc <letlttt file> | tar xvf
  $ cd quota-tools  (vagy abba a knyvtrba, ahova letlttted)
  $ ./configure
  $ make
  $ su
  # make install
  ______________________________________________________________________



  3.4.  A rendszerindt szkriptek mdostsa a kvta indtskori
  ellenrzsre s bekapcsolsra


  me egy plda:


  ______________________________________________________________________
  # Check quota and then turn quota on.
  if [ -x /usr/sbin/quotacheck ]
          then
                 echo "Checking quotas. This may take some time."
                 /usr/sbin/quotacheck -avug
                 echo " Done."
          fi
           if [ -x /usr/sbin/quotaon ]
          then
                  echo "Turning on quota."
                  /usr/sbin/quotaon -avug
          fi
  ______________________________________________________________________



  Aranyszably, hogy mindig kapcsold be a kvtt, miutn az /etc/fstab-
  beli fjlrendszert becsatoltad, klnben nem fog mkdni. Ajnlom,
  hogy kapcsold be a kvtt rgtn azutn, hogy a fjlrendszereket
  becsatolja a rendszerindt szkripted.
  3.5.  Az /etc/fstab mdostsa


  Azok a partcik, amelyeken nem engedlyeztk a kvtt, norml esetben
  valahogy gy nznek ki:

  ______________________________________________________________________
  /dev/hda1       /       ext2    defaults        1       1
  /dev/hda2       /usr    ext2    defaults        1       1
  ______________________________________________________________________



  A felhasznli kvta-tmogats egy fjlrendszeren val
  engedlyezshez rd be a "usrquota" opcit a negyedik mezbe, ami a
  "defaults" szt tartalmazza (a rszletekrt lsd "man fstab").


  ______________________________________________________________________
  /dev/hda1       /       ext2    defaults        1       1
  /dev/hda2       /usr    ext2    defaults,usrquota       1       1
  ______________________________________________________________________



  Cserld le a "usrquota" szt "grpquota"-ra, ha csoportkvtra van
  szksged.


  ______________________________________________________________________
  /dev/hda1       /       ext2    defaults        1       1
  /dev/hda2       /usr    ext2    defaults,grpquota       1       1
  ______________________________________________________________________



  Mind felhasznli, mind csoportkvtra szksged van?


  ______________________________________________________________________
  /dev/hda1       /       ext2    defaults        1       1
  /dev/hda2       /usr    ext2    defaults,usrquota,grpquota       1   1
  ______________________________________________________________________



  3.6.  A kvta rendszer bekapcsolsa

  A kvta szoftver aktivlshoz jra kell indtani a rendszert azrt,
  hogy az elvgzett vltoztatsok rvnyess vljanak. Ekkor betltdik
  az j, kvtt tmogat kernel, majd az elksztett rendszerindt
  szkripteket is vgrehajtja a gp. Az els futsnl a "quotacheck"
  kszti el a megfelel fjlokat a kvta-adatbzis karbantartshoz.


  3.7.  A "quotacheck" hozzadsa a crontab-hoz

  Br a kvta mkdik rendszeres ellenrzs nlkl is, nha hasznos
  lehet, ha rendszeres idkznknt, mondjuk hetente lefuttatjuk a
  "quotacheck"-et. Ehhez add hozz a kvetkez bejegyzst a
  rendszergazda crontab-jhoz:



  ______________________________________________________________________
  0 3 * * 0 /sbin/quotacheck -avug
  ______________________________________________________________________



  4.  A kvta teleptse: programeszkzk


  Ezt a mveletet az "edquota" paranccsal tudjuk vgrehajtani ("man
  edquota", ha a rszletekre vagy kvncsi).


  4.1.  Kvta megadsa egy adott felhasznlhoz


  Lssunk egy pldt. Van egy bob nev felhasznl a rendszeremen. Az
  "edquota -u bob" parancs kiadsval a vi (vagy az $EDITOR krnyezeti
  vltozban belltott) szvegszerkesztben tallom magam, ahol be
  tudom lltani bob kvtjt mindegyik olyan partcin, ahol az
  engedlyezett:


  ______________________________________________________________________
  Quotas for user bob:
  /dev/hda3: blocks in use: 2594, limits (soft = 5000, hard = 6500)
           inodes in use: 356, limits (soft = 1000, hard = 1500)
  ______________________________________________________________________



  A "blocks in use" a felhasznl ltal egy partcin elfoglalt sszes
  blokkok szma (kilobjtban).

  Az "inodes in use" az inode-ok szma, melyeket a felhasznl lefoglal
  a partcin.


  4.2.  Kvta hozzrendelse egy adott csoporthoz


  Most van egy games nev csoport a rendszeremen. Az "edquota -g games"
  ismt a vi-ba lptet, ahol a games csoport kvtjt tudom belltani:

  ______________________________________________________________________
          Quotas for group games:
          /dev/hda4: blocks in use: 5799, limits (soft = 8000, hard = 10000)
                  inodes in use: 1454, limits (soft = 3000, hard = 4000)
  ______________________________________________________________________



  4.3.  Kvta hozzrendelse felhasznlk csoportjhoz, ugyanazzal az
  rtkkel


  Ahhoz, hogy gyorsan tudjak a rendszeremen lv bob nev felhasznlval
  azonos belltsokkal kvtt hozzrendelni mondjuk 100 felhasznlhoz,
  elszr kzzel szerkesztem bob adatait, majd kiadom a kvetkez
  parancsot:



  ______________________________________________________________________
  edquota -p bob `awk -F: '$3 > 499 {print $1}' /etc/passwd`
  ______________________________________________________________________



  Felttelezem, hogy csh-t hasznlsz, s a felhasznlk UID-jei 500-al
  kezddnek.

  A kvthoz kapcsoldan 3 olyan fogalom van, amikkel meg kell
  bartkoznod: lgy korlt (soft limit), kemny korlt (hard limit) s
  trelmi id (grace period).


  4.4.  Lgy korlt (Soft Limit)


  A lgy korlt jelenti azt a maximlis mennyisg lemezterletet, amit
  egy felhasznl elfoglalhat egy partcin. Amikor a trelmi idvel
  kombinljuk, gy viselkedik, mint egy hatrvonal, ami a felhasznlt
  zenetekkel ltja el a kvta-bellts kzelg megsrtsrl, ha azt
  tllpi.


  4.5.  Kemny korlt (Hard Limit)


  A kemny korlt csak akkor mkdik, ha a trelmi idt is belltjuk.
  Ez az abszolt korltot jelenti a lemezfelhasznls szempontjbl,
  amit a felhasznl semmikppen sem lphet tl.


  4.6.  Trelmi id (Grace Period)


  A trelmi id az az idhatr, melynek leteltig rvnyes a lgy korlt
  a kvtt engedlyez fjlrendszereken. Az idrtkek lehetnek
  msodpercben (sec), percben (min), rban (hour), napban (day), htben
  (week) s hnapban (month) megadva. Ezt ltod az "edquota -t" parancs
  kiadsakor:


  ______________________________________________________________________
  Time units may be: days, hours, minutes, or seconds
  Grace period before enforcing soft limits for users:
  /dev/hda2: block grace period: 0 days, file grace period: 0 days
  ______________________________________________________________________



  Vltoztasd meg a "0 days" rszt brmely ltalad megfelelnek vlt
  idtartamra.  Szemly szerint n 7 napot (vagyis egy hetet)
  vlasztottam.


  5.  Egyb kvtaparancsok


  5.1.  Quotacheck


  A "quotacheck" tvizsglja a fjlrendszert a lemezhasznlat
  megllaptshoz, s frissti az "aquota.user" adatfjlt a dolgok
  legfrissebb llsa szerint. Azt ajnlom, hogy a parancsot minden
  rendszerindtskor, s egy cron-feladaton keresztl idkznknt
  (mondjuk, minden hten?) futtasd le.
  5.2.  Repquota


  A "repquota" sszestett kvta-informcikat ad egy fjlrendszerrl.
  Az albbiakban egy minta tallhat a parancs kimenetrl:

  ______________________________________________________________________
  # repquota -a
                                  Block limits               File limits
          User            used    soft    hard  grace    used  soft  hard  grace
          root      --  175419       0       0          14679     0     0
          bin       --   18000       0       0            735     0     0
          uucp      --     729       0       0             23     0     0
          man       --      57       0       0             10     0     0
          user1     --   13046   15360   19200            806  1500  2250
          user2     --    2838    5120    6400            377  1000  1500
  ______________________________________________________________________



  5.3.  Quotaon s Quotaoff


  A "quotaon" hasznlatos a kvta bekapcsolsra; a "quotaoff"
  kikapcsolja azt. Jelenleg mindkt fjl hasonl.  A rendszerindtskor-
  s lelltskor hajtjuk ket vgre.


  6.  Magyar fordts


  A magyar fordtst Szijjrt Lszl
  <mailto:laca@janus.gimsz.sulinet.hu_NO_SPAM> ksztette (2002.11.27).
  A lektorlst Varga Zsolt <mailto:tech.translation@axelero.hu_NO_SPAM>
  vgezte el (2003.04.09).  Utoljra Daczi Lszl
  <mailto:dacas@freemail.hu_NO_SPAM> frisstette (2003.08.26).
  Brmilyen fordtssal kapcsolatos szrevtelt a linuxhowto@sch.bme.hu
  <mailto:linuxhowto@sch.bme.hu_NO_SPAM> cmre kldjetek.  A dokumentum
  legfrissebb vltozata megtallhat a Magyar Linux Dokumentcis
  Projekt <http://tldp.fsf.hu/index.html> honlapjn.



