From ebd0416f0c7057965081aab21075fcc37a1dae51 Mon Sep 17 00:00:00 2001 From: bserie Date: Fri, 2 Mar 2018 10:14:57 +0100 Subject: [PATCH] =?UTF-8?q?grosse=20r=C3=A9organisation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- HowtoDUC.md | 144 +++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 104 insertions(+), 40 deletions(-) diff --git a/HowtoDUC.md b/HowtoDUC.md index e98840ea..140a666d 100644 --- a/HowtoDUC.md +++ b/HowtoDUC.md @@ -17,6 +17,109 @@ Un paquet est disponible à partir de Debian Stretch. ## Utilisation +### Création de l'indexe + +La première chose à faire est de créer un indexe, c'est la partie qui analyse l'espace disque pour ensuite l'afficher de différentes manières. Par défaut l'indexe sera crée dans `$HOME/.duc.db`, si l'on veut changer le chemin de l'indexe il faudrait utiliser la variable d'environnement `DUC_DATABASE` ou spécifier le chemin avec `-d`. + +L'indexe n'est pas forcément rattaché à un seul chemin, on peut en indexer autant qu'on veut : + +~~~ +$ duc index -d /tmp/duc.idx /var/ +$ duc index -d /tmp/duc.idx /usr/ +~~~ + +### Consulter l'indexe + +#### Voir les informations de l'indexe + +~~~ +$ duc info -d /tmp/duc.idx +Date Time Files Dirs Size Path +2018-03-02 09:49:38 22.5K 2.4K 2.2G /var +2018-03-02 09:49:42 268.0K 24.1K 8.2G /usr +~~~ + +#### Lister le contenu de l'indexe + +~~~ +$ duc ls -d /tmp/duc.idx /usr + 4.3G lib + 3.0G share +606.2M bin +210.5M src + 66.4M include + 35.3M sbin + 20.1M local + 6.4M lib32 + 2.2M libexec + 1.7M games + 4.0K etc + +$ duc ls -d /tmp/duc.idx /usr/bin/ | head + 29.9M hkt + 28.3M hokey + 24.2M node + 19.6M hot + 17.0M shellcheck + 15.7M mysql_embedded + 14.7M fwbuilder + 11.6M audacity + 11.1M rawtherapee + 10.4M qemu-system-x86_64 + +$ duc ls -d /tmp/duc.idx /var/log | head +197.2M atop + 30.4M daemon.log.1 + 24.1M daemon.log + 17.1M installer + 5.4M syslog.1 + 2.7M messages.1 + 2.4M vbox-install.log + 2.1M syslog + 1.9M kern.log.1 + 1.7M ufw.log.1 +~~~ + +#### Lister le contenu de l'indexe avec une interface ncurses + +L'interface ncurses est semblable à celle de ncdu. La touche `h` permettra d'afficher l'aide pour comprendre comment naviguer et interagir avec cette interface. + +~~~ +# duc ui -d /tmp/duc.idx /usr +~~~ + +![Interfaces ncurses](/duc.png) + +#### Lister le contenu de l'indexe avec une interface graphique + +Si on est sur un poste ayant un serveur X (ou en `ssh -X`), on pourra utiliser cette interface et utiliser la souris. + +~~~ +$ duc gui -d /tmp/duc.idx /usr +~~~ + +![Le GUI de Duc](/duc2.png) + +#### Lister le contenu de l'indexe avec un script CGI + +Il suffit de créer ce 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 +~~~ + +Il faudra ensuite utiliser un serveur Web comme [HowtoApache](Apache) pour y accéder. + +### Plomberie + Quelques exemples : Lancer une indexation de /backup/jails : @@ -37,27 +140,12 @@ Pour exclure un répertoire (./backup/ contenant de nombreux fichiers), se place # duc index -p -e "backup" -d duc.idx . ~~~ -On peut tout aussi bien ajouter dans l'indexe, éléments par éléments, qui peuvent même être indépendant les uns des autres (hiérarchie du système de fichier) : - -~~~ -# duc index -d duc.idx /var/foo/ -# duc index -d duc.idx /usr/bar/ -~~~ - 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 -~~~ - -![Interfaces ncurses](/duc.png) - Afficher l'espace disque avec un « ls like ». ~~~ @@ -70,33 +158,9 @@ 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 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. +Il peut être judicieux de créer un cron pour faire une indexation journalière, très pratique quand couplé avec l'interface CGI. ~~~ 30 6 * * * duc index -q -d /backup/duc.idx /backup/jails && chmod 640 /backup/duc.idx && chgrp www-data /backup/duc.idx