**Cette page a été importée automatiquement de notre ancien wiki mais n'a pas encore été révisée.**

# HowtoDuc

Duc est un utilitaire pour analyser l'espace disque (le précédent projet du même développeur était philesight).

## Installation

Il n'y a pas de paquets officiel ou de Debian, il faut le compiler, cf. les instructions sur le site <http://duc.zevv.nl/>
En revanche, nous avons des paquets Evolix pour Squeeze, Wheezy et Jessie, il faut mettre dans son sources.list :

~~~
deb http://pub.evolix.net/ jessie/ main/
~~~


## Utilisation

Quelques exemples :

Lancer une indexation de /backup/jails :


-H : Compter les mêmes inode une seule fois.

-e <regex> : Exclure les fichiers correspondant (ne correspond que au nom du fichier et non de son PATH complet).

-p : Voir la progression.

~~~
# duc index -p -H -e "*.log*" -d /backup/duc.idx /backup/jails
# duc index -p -H -d /backup/duc.idx /backup/jails 
~~~

Pour exclure un répertoire (./backup/ contenant de nombreux fichiers), se placer dessus par exemple et faire :

~~~
# duc index -p -e "backup" -d duc.idx .
~~~

On peut tout aussi bien ajouter dans le fichier index, éléments par éléments, qui peuvent même être indépendant les uns des autres (hiérarchie FS) :

~~~
# duc index -d duc.idx joe/
# duc index -d duc.idx /etc/hosts
~~~

Exemple, analyser /backup, avec un index dans /home :

~~~
# duc index -p -d /home/duc_backup.idx /backup
~~~

Afficher l'espace disque avec l'interface ncurses. (q pour quitter, flèche directionnelles pour naviguer).

~~~
# duc ui -d /backup/duc.idx /backup/jails
~~~

Afficher l'espace disque avec un « ls like ».

~~~
# duc ls -d /backup/duc.idx -Fg /backup/jails/
~~~

Générer un graphique : 

~~~
# duc graph -d /backup/duc.idx -o /tmp/duc.png -l8 -s 1920 /backup/jails/
~~~

### En CGI

Il suffit de créer ce petit script sh dans `/usr/lib/cgi-bin/duc.cgi`, de donner les bons droits et d'y accéder.

~~~
#!/bin/sh
/usr/bin/duc cgi -d /backup/duc.idx --list
~~~

~~~
# chmod 755 /usr/lib/cgi-bin/duc.cgi
# chown www-data: /usr/lib/cgi-bin/duc.cgi
# chmod 640 /backup/duc.idx
# chgrp www-data /backup/duc.idx
~~~

#### Apache

Apache traite les CGI par défaut dans cgi-bin, il n'y a donc rien à faire.

#### NginX

À priori impossible à part avec un wrapper CGI…

### Cron

Cron d'indexation journalier.

~~~
30 6  * * * duc index -q -d /backup/duc.idx /backup/jails && chmod 640 /backup/duc.idx && chgrp www-data /backup/duc.idx
~~~