Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1834 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs

  [Asterisk Voicemail] Gestion de l'espace disque

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Asterisk Voicemail] Gestion de l'espace disque

n°747794
carlos20
Posté le 02-11-2005 à 15:44:38  profilanswer
 

Bonjour,
 
J'ai installé asterisk sur colinux (Linux sur Windows [Debian]). Puis j'ai mis en place son voicemail avec son interface web (vmail.cgi). Mon problème est pour la gestion de l'espace disque des différents utilisateurs que j'ai entré...
 
Je n'ai aucune idée comment limité par le nombre de messages qu'il peut recevoir ou par l'espace qu'il peut occupé sur le disque par utilisateur. Je sais que pour voir l'espace occupé d'un répertoire il faut utiliser la commande df...
Est-ce que quelqu'un sait comment gérer ceci
 
Merci pour vos suggestions..

mood
Publicité
Posté le 02-11-2005 à 15:44:38  profilanswer
 

n°747814
jlighty
Posté le 02-11-2005 à 16:51:56  profilanswer
 

utilise plutôt "du -sm <le répertoire>" pour avoir la valeur en Mo
Tu peux aussi limiter la longueur des messages (cf voicemail.conf)

n°748054
carlos20
Posté le 03-11-2005 à 08:53:59  profilanswer
 

Hello,
 
Merci de tes précisions, dans le fichier voicemail.conf j'ai déjà indiqué la taille max et min des messages

Code :
  1. maxmessage = yyy et minmessage = zzz

n°748055
carlos20
Posté le 03-11-2005 à 09:00:01  profilanswer
 

:oups
 
J'avais pas fini d'écrire... Désolé...
 
Je disais que la taille des messages je l'avais déjà indiquée...
Mon problème est de limiter la taille du répertoire dans lequel se situe les messages et ça pour chaque utilisateur  

Code :
  1. Dans ce cas j'ai un utilisateur SIP avec la boite vocale 301:
  2.           /var/spool/asterisk/voicemail/sip/301/INBOX/


Comment timité dynamiquement le répertoire INBOX pour chaque utilisateur de mon voicemail???
La limitation peut être soit en espace disque soit en nombre de messages dans le répertoire (la première serait nettement mieux).
 
Merci de votre aide...

n°748058
jlighty
Posté le 03-11-2005 à 09:11:47  profilanswer
 

rapidement script sh appelé par cron:
on test le nombre de message 'ls | grep ".gsm" | wc -l'  
si tu dépasses 10 messages par ex ->
on trie les fichiers par numéro ( ls | sort )
on analyse le tout dans une boucle for puis on détruit les anciens messages  (un compteur est utilisé pour arrêter l'effacement des fichiers dès que le nombre de messages est en dessus du seuil)


Message édité par jlighty le 03-11-2005 à 09:12:47
n°748060
jlighty
Posté le 03-11-2005 à 09:20:00  profilanswer
 

en y réflechissant, on peut encore accélérer le script en utilisant ls | sort |head

n°748061
carlos20
Posté le 03-11-2005 à 09:25:49  profilanswer
 

Désolé de posé cette question,
mais ça signifie quoi script sh appelé par cron???
 
Le reste c'est OK merci beaucoup!!!
Tu saurais pas comment limité la taille d'un répertoire??
 
Encore merci....

n°748149
jlighty
Posté le 03-11-2005 à 13:42:57  profilanswer
 

Citation :

mais ça signifie quoi script sh appelé par cron???


script sh : un fichier contenant diverses commandes shells ou appels à des programmes
crond : daemon qui exécute régulièrement un script/commande/programme

Citation :

Tu saurais pas comment limité la taille d'un répertoire??


tu peux limiter un répertoire (ou un point de montage) en appliquant des quotas. Le problème est que si un message récent est déposé sur le répondeur et que l'espace occupé dépasse le quotas, il ne sera pas enregistrer. Ce qui est conseillé de faire : effectuer une purge des anciens messages régulièrement.
pour le script :
- soit "n" le nombre de messages max
- chaque message déposé est contenu dans 4 fichiers .WAV .wav .txt .gsm
- soit "x" le nombre de fichiers max (n*4+1) le +1 est un offset pour la commande tail
pour récupérer tous les messages à effacer :
ls | sort -r | tail -n +"$x"  
grâce à cette commande, tu as les noms des fichiers à supprimer  
ensuite une boucle type for:

Code :
  1. #!/bin/sh
  2. # exemple pour 3 messages max
  3. n=3;
  4. x=`expr "$n" * 4 + 1`;
  5. for nomfichier in `ls | sort -r | tail -n +"$x" `; do
  6. rm -f "$nomfichier"
  7. done



Message édité par jlighty le 03-11-2005 à 13:45:24
n°748158
carlos20
Posté le 03-11-2005 à 14:02:33  profilanswer
 

AHH,
 
OK, merci beaucoup c'est exactement de ça que j'avais besoin.
 :)

n°748162
carlos20
Posté le 03-11-2005 à 14:05:35  profilanswer
 

Pourrais tu juste m'expliquer comment fonctionne les quotas sur un répertoire,
on ne sait jamais ça va sûrement m'être utile plus tard...
 
Encore merci car tu m'a bien aider...... :jap:

mood
Publicité
Posté le 03-11-2005 à 14:05:35  profilanswer
 

n°748173
jlighty
Posté le 03-11-2005 à 14:24:53  profilanswer
 

http://lea-linux.org/cached/index/ [...] otas.html#
pas contre c'est propre à un point de montage

n°748195
carlos20
Posté le 03-11-2005 à 14:54:31  profilanswer
 

Merci beaucoup!!!!!!
 :jap:  
 
J'espère pouvoir te rendre la pareil...
A+


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs

  [Asterisk Voicemail] Gestion de l'espace disque

 

Sujets relatifs
VoIP sur Astérisk [KDE] Gestion de la Transparence
[Ubuntu] Gestion HyperThreading[Mandrake 10.1] Montage de disque dur externes USB
Mandriva 2006 et disque Serial ATAlinux sur disque dur externe usb
Erreurs sur Disque Dur SataLogiciel de gestion réseaux sous Linux ?
Mandriva 2006 et disque sataconfiguration d'asterisk pour softphones
Plus de sujets relatifs à : [Asterisk Voicemail] Gestion de l'espace disque


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR