Toon posts:

[proftp] quota printen bij inloggen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Is dit mogelijk? Dus dat bv de vrije en gebruikte ruimte geprint word bij het inloggen?

Ik heb eigenlijk niks kunnen vinden daarover dus misschien weet iemand een module voor proftp waarmee dat kan :)

  • richardt
  • Registratie: Mei 2002
  • Laatst online: 08-03-2025
Als je mod_quota in je proftpd hebt zitten is dat niet al te moeilijk. Anders moet je die nog meecompileren.

Misschien helpt de [url="http://proftpd.linux.co.uk/localsite/Userguide/linked/x176.html#AEN192"]Proftpd userguide[/url] je verder

Verwijderd

de mod_quota module is getrashed bij recente 1.2.6(rc?) wegens bugs en geen maintainer.

Ik zou je aanraden om Pure-FTPD [pureftpd.org] te gaan draaien...ik heb pas ook m'n server omgezet naar pure en het doet wat jij vraagt :)

Verwijderd

Topicstarter
hmmm ik wil toch liever proftpd blijven gebruiken en mod_quota voldoet niet, daarmee kun je wel wat q uota dingen doen, maar ik wil eigenlijk puur 2 regeltjes printen bij het inloggen:

Er is nog x mb vrij.
Er is x mb gebruikt.

Deze informatie is niet zo moeilijk te krijgen, alleen....hey ik krijg een idee... kun je met proftpd gepersonaliseerde welcome msg's maken? zoja... dan doe ik gewoon de welcome msg's schrijven met de info...

  • richardt
  • Registratie: Mei 2002
  • Laatst online: 08-03-2025
Voor het printen van de vrije ruimte is het dan niet zo moeilijk (gebruik de %F). dus in je proftpd.conf
code:
1
DisplayLogin              /etc/welcome.msg

en daarin kun je de volgende magic cookies kwijt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
%T  Current Time
%F  Available space on file system
%C  Current working directory
%R  Remote host name
%L  Local host name
%u  Username reported by ident protocol
%U  Username originally used in login
%M  Max number of connections
%N  Current number of connections
%E  Server admin's e-mail address
%x  The name of the user's class
%y  Current number of connections from the user's class
%z  Max number of connections from the user's class

Voor een disk usage regeltje is dit dus niet mogelijk. Proftpd was gebouwd als een secure server, die geen externe programma's uitvoert.

  • hammerhead
  • Registratie: April 2000
  • Laatst online: 21:25
Op vrijdag 26 juli 2002 14:37 schreef richardt het volgende:
Voor het printen van de vrije ruimte is het dan niet zo moeilijk (gebruik de %F). dus in je proftpd.conf
code:
1
DisplayLogin              /etc/welcome.msg

en daarin kun je de volgende magic cookies kwijt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
%T  Current Time
%F  Available space on file system
%C  Current working directory
%R  Remote host name
%L  Local host name
%u  Username reported by ident protocol
%U  Username originally used in login
%M  Max number of connections
%N  Current number of connections
%E  Server admin's e-mail address
%x  The name of the user's class
%y  Current number of connections from the user's class
%z  Max number of connections from the user's class

Voor een disk usage regeltje is dit dus niet mogelijk. Proftpd was gebouwd als een secure server, die geen externe programma's uitvoert.
En wat nu als je van [b]/etc/welcome.msg[b] een FIFO maakt? Dan kun je een ander programma (extern) die FIFO elke keer laten vullen en dan zou je dus alle mogelijke gegevens van je hele systeem / FS kunnen laten zien.

Of zit ik er nu toch weer naast als ik zo denk?

Aviation is proof that given the will, we have the capacity to achieve the impossible.
--Eddie Rickenbacker


  • richardt
  • Registratie: Mei 2002
  • Laatst online: 08-03-2025
Interessante vraag! Zoals de naam FIFO al zegt, moet er eerst iets in voordat je er iets uit kunt halen. Het lezen van een empty pipe levert in het gunstigste geval een waarde 0 op, dit is niet wat je wilt.

De vraag is dus: hoe weet de FIFO dat hij wordt gelezen en hoe zorgt hij er dan voor dat er eerst data in wordt geschoven voordat het eruit mag worden gehaald.... :?

Is volgens mij per definitie niet mogelijk. Je kunt toch ook niet zomaar constant data naar die FIFO pipen...

Verwijderd

Topicstarter
na mijn heldere ingeving ben ik direct aan de gang gegaan en heb iets moois in elkaar gezet :)
26-7-2002 15:36:08 230-Je hebt een totale schrijfruimte van 10000 Kb en je hebt 12736 Kb schrijfruimte gebruikt.
26-7-2002 15:36:08 230-Je hebt dus 2736 Kb (264 Kb onder de hardquota grens) teveel schrijfruimte gebruikt.
*trots*

een perl scriptje gemaakt die een tekstje schrijft zoals hierboven aan de hand van het doorlopen van alle users met en daarop het quota command toevoegen en de gegevens eruit filteren... Het perl scriptje draait met een crontab elke 2 minuten (heb pas 10 users ;) )

leuk gedaan toch :)

thx voor de hulp :)

Verwijderd

misschien dat je je oplossing wil delen ?

Verwijderd

Topicstarter
Op vrijdag 26 juli 2002 15:59 schreef linuxgeek het volgende:
misschien dat je je oplossing wil delen ?
ik heb toch gezeg hoe ik het heb gedaan :?

stappenplan (nogmaals):
- perl script maken dat alle users op een systeem leest en de betreffende quota erbij pakt (gewoon exec quota en de output filteren)
- vervolgens met het perl script naar het bestandje /users/$username/welcome.msg schrijven met de info die je hebt
- instellen in proftpd.conf dat een welcome.msg word geprint bij het inloggen
- met een cronjob het scriptje laten draaien

thats all :)
Pagina: 1