ncftpget : copie récursive de fichiers depuis un serveur FTP

ncftpget est un utilitaire en ligne de commande qui permet de copier récursivement une arborescence de fichiers d’un serveur FTP distant. Quand on n’a pas d’autres moyens d’accès que le FTP c’est un petit programme bien pratique.

On peut le télécharger ici http://www.ncftp.com/ncftp/, pour Debian et Ubuntu on fera :

sudo aptitude install ncftp

Exemple d’utilisation :

Pour copier tous les fichiers du répertoire /var/www du serveur www.exemple.com avec le user FTP « machin»  vers le répertoire /var/www/sitemachin de la machine locale :

ncftpget –R –v –u "machin" www.exemple.com /var/www/sitemachin /var/www

avec :

-R : copie récursive
-v : mode verbeux
-u "machin" : nom de l'utilisateur FTP

Lien : Linux: Download all file from ftp server recursively

Copier la table des partitions d’un disque vers un autre disque

Testé sur Debian 5.0 Lenny

La commande sfdisk permet de manipuler les tables de partitions et de dupliquer très simplement la structure de cette table d’un disque vers un autre. Si on veut copier la table des partitions du disque /dev/sda vers le disque /dev/sdb la commande sera :

sfdisk -d /dev/sda | sfdisk /dev/sdb

C’est très pratique si on veut initialiser un volume RAID 1 par exemple.

Attention quand même, comme toutes les commandes de bas niveau qui agissent sur la table des partitions, une mauvaise manip peut avoit des conséquences douloureuses. Mieux vaut réfléchir un brin avant d’appuyer sur Entrée…

Lien : La man page de sfdisk, très bien faite, qui indique les options de sauvegarde et restauration

Limiter les logs snmpd dans syslog

Testé sur Debian 5.0 Lenny et Ubuntu Server 8.04 LTS Hardy

Le démon snmpd est un grand bavard dans sa configuration par défaut sous Debian et Ubuntu, et on se retrouve rapidement avec un syslog envahi de messages à chaque connexion d’un client snmp :

Feb 25 10:40:06 monhost snmpd[2404]: Connection from UDP: [x.x.x.x]:42720
Feb 25 10:40:06 monhost snmpd[2404]: Connection from UDP: [x.x.x.x]:55670
Feb 25 10:40:06 monhost snmpd[2404]: Connection from UDP: [x.x.x.x]:56655
Feb 25 10:40:06 monhost snmpd[2404]: Connection from UDP: [x.x.x.x]:55557
Feb 25 10:40:06 monhost snmpd[2404]: Connection from UDP: [x.x.x.x]:46846
Feb 25 10:40:06 monhost snmpd[2404]: Connection from UDP: [x.x.x.x]:34805
Feb 25 10:40:06 monhost snmpd[2404]: Connection from UDP: [x.x.x.x]:49261
Feb 25 10:40:06 monhost snmpd[2404]: Connection from UDP: [x.x.x.x]:35418
Feb 25 10:40:06 monhost snmpd[2404]: Connection from UDP: [x.x.x.x]:35673

Pour clouer le bec à l’insolent, il faut aller modifier les options de démarrage SNMPDOPTS du démon dans /etc/default/snmpd :

SNMPDOPTS=’-LS4d -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid ’

L’option qui nous intéresse est -LS4d qui permet de n’écrire dans syslog qu’à partir du niveau warning. Un petit redémarrage du démon et le tour est joué.

A noter que la syntaxe semble différer selon les distributions, pour la vôtre ça sera peut-être -LS 4 d avec des espaces entre les arguments pour obtenir le résultat (erreur de syntaxe sous Debian).

Un extrait de la man page de snmpcmd sur les options de journalisation

The  mechanism  and destination to use for logging of warning and error messages can be controlled by passing  various  parameters  to  the  -L flag.

-Le    Log messages to the standard error stream.

-Lf FILE
Log messages to the specified file.

-Lo    Log messages to the standard output stream.

-Ls FACILITY
Log  messages  via syslog, using the specified facility (’d’ for LOG_DAEMON, ‘u’ for LOG_USER, or ‘0′-’7′ for LOG_LOCAL0  through LOG_LOCAL7).

There  are  also  « upper case»  versions of each of these options, which allow the corresponding logging mechanism to be restricted  to  certain priorities of message.  Using standard error logging as an example:

-LE pri
will log messages of priority ‘pri’ and above to standard error.

-LE p1-p2
will log messages with priority between ‘p1′  and  ‘p2′  (inclusive) to standard error.

For  -LF  and  -LS  the priority specification comes before the file or facility token.  The priorities recognised are:

0 or !  for LOG_EMERG,
1 or a for LOG_ALERT,
2 or c for LOG_CRIT,
3 or e for LOG_ERR,
4 or w for LOG_WARNING,
5 or n for LOG_NOTICE,
6 or i for LOG_INFO, and
7 or d for LOG_DEBUG.

Normal output is (or will be!) logged at a priority level of LOG_NOTICE

Supprimer un volume RAID logiciel sous debian / ubuntu

testé sous Debian 5.0 Lenny AMD64

J’ai eu quelques soucis dernièrement à supprimer un volume RAID logiciel (RAID 1) que j’avais créé un peu précipitamment. A chaque redémarrage le volume RAID était rechargé. Voilà comment j’ai résolu le problème :

Volume RAID1 : /dev/md1
Partitions du RAID : /dev/sda3 et /dev/sdb3

on démonte le volume RAID :

sudo umount /dev/md1

on désactive le volume :

sudo mdadm -S /dev/md1

Et on finit par les commandes magiques d’effaçage des superblocks pour ne pas voir revenir son RAID au boot suivant :

sudo mdadm –zero-superblock /dev/sda3
sudo mdadm –zero-superblock /dev/sdb3

Il faut aussi penser à modifier /etc/fstab en conséquence

Lien : La soluce en anglais

Interlude

C’est les vacances, la petite famille part traquer le pingouin dans la haute Corrèze. On se retrouve à partir du 12 août, à bientôt!