Diverses choses à ne pas oublier.

ToDo

VIM

Quelques paramètres à mettre dans ~/.vimrc pour l'édition de fichiers et notamment ceux en python. Pour ce dernier langage, il faudra se rapprocher le plus possible du PEP 8

if has ("autocmd")
    filetype plugin indent on
endif

autocmd FileType python set ts=4 expandtab textwidth=79
autocmd FileType python set omnifunc=pythoncomplete#Complete

Conserver Thunderbird-3 sous lucid

Méthode 1 : déconseillée

{X} A ne pas utiliser car la 3.0 a des bogues et est lente

Il ny a pas de version 3.1.x disponible :-(

On utilise hold pour éviter que ces paquets ne soient mis à jour ultérieurement.

Méthode 2 : usage de 'preferences'

Package:thunderbird
Pin: version 3.1.19+build1+nobinonly-0ubuntu0-0.10.04.1
Priority:1001

Package:thunderbird-locale-fr
Pin: version 1:1.3.7ubuntu0.10.04.1
Priority:1001

Munin

Plugins OpenVZ

Un exemple de script depuis le wiki d'OpenVZ qui permet de surveiller l'état des beancounter

/!\ Attention le shebang a été espacé d'une ligne afin de ne pas entrer en conflit avec le formatage du wiki

# !/bin/sh
#
# Munin's plugin to monitor OpenVZ bean counters.
#
# $Log$
# Revision 1.3 2007/07/19 12:57:00 Jan Tomasek <jan@tomasek.cz>
# * rewrited to work with /proc/bc/<VEID>/resources instead of
# /proc/user_beancounters, that simplified code and result
# is also bit faster.
# * added references to OpenVZ wiki
# Revision 1.3.1 2008/05/13 01:26:00 Daniel Hahler <http://daniel.hahler.de/>
# * Minor fixes
#   - "exit 0" in "config" block
#   - Use "echo ${str%% *}" in "suggest", instead of "vals=($str); echo ${vals[0]}"
#
# Revision 1.3.2 2008/08/09 12:30:00 Christian Rubbert <crubbert@xrc.de>
# * Feature
#   - If only 1 variable is graphed, also display maxheld, barrier and limit
#
# Original revision taken from:
# http://wiki.openvz.org/Monitoring_openvz_resources_using_munin
#
#%# family=auto
#%# capabilities=autoconf suggest
 
VEID=`basename $0 | sed -e 's/^vebc_.*_//'`;
STATS=`basename $0 | sed -e 's/^vebc_//' -e 's/_[0-9]*$//' -e 's/_/ /g'`
x=0; STATSCNT=`for i in $STATS; do x=$[$x+1]; done; echo $x`
 
if [ "$1" = "autoconf" ]; then
    if [ -r /proc/bc/0/resources ]; then
        echo yes
        exit 0
    else
        echo "no (/proc/bc/0/resources not found)"
        exit 1
    fi
fi
 
if [ "$1" = "suggest" ]; then
    if [ -r /proc/bc/0/resources ]; then
        cat /proc/bc/0/resources | while read str; do
        # Print everything before " "
        echo ${str%% *}
        done
        exit 0
    else
        exit 1
    fi
fi
 
if [ ! -f /proc/bc/$VEID/resources ]; then
    exit 0;
fi
 
if [ "$1" = "config" ]; then
    #echo "graph_order down up"
    echo "graph_title VE$VEID: $STATS"
    echo "graph_vlabel bean counters"
    echo "graph_category VE$VEID"
 
    # Note on URLs. General graph info is by munin version 1.2.5
    # accepted even with HTML code. But for value.info it escapes URL,
    # I expect that authors of munin will note that in future and put
    # escaping even for graph.info.
    echo "graph_info VE bean counters info. Documentation of the OpenVZ resource management is located at <a href=\"
http://wiki.openvz.org/UBC\">http://wiki.openvz.org/UBC</a>."
 
    cat /proc/bc/$VEID/resources | while read name value top warn max stuff ; do
        for statname in $STATS; do
        if [ "$name" = "$statname" ]; then
            URL="http://wiki.openvz.org/$name"
            if [ "$warn" = "0" ]; then
                warn=$max
            fi
            echo $name.label $name
            echo $name.warning $warn
            echo $name.critical $max
            echo $name.info Description of this resource is located at $URL
        fi
        done
    done
 
    if [ "$STATSCNT" = "1" ]; then
        echo maxheld.label Maxheld
        echo maxheld.draw LINE2
        echo maxheld.info Maximum value
        echo barrier.label Barrier
        echo barrier.draw LINE2
        echo barrier.info Barrier
        echo limit.label Limit
        echo limit.draw LINE2
        echo limit.info Limit
    fi
    exit 0
fi;
 
cat /proc/bc/$VEID/resources | while read name value top warn max stuff ; do
    for statname in $STATS; do
    if [ "$name" = "$statname" ]; then
        echo $name".value "$value;
 
        if [ "$STATSCNT" = "1" ]; then
            echo maxheld.value $top
            echo barrier.value $warn
            echo limit.value $max 
        fi
    fi
    done
done
  • enregistrer le fichier dans /usr/local/share/munin/plugins/openvz_beancounter

  • faire un lien symbolique comme par exemple ln -s /usr/local/share/munin/plugins/openvz_beancounter /etc/munin/plugins/vebc_resource1_resource2_resourceN_CTID où chaque resourceN est le nom d'un paramètre qu'on souhaite surveiller. Ex: kmemsize, privvmpages

    • Il est à noter qu'il faut créer un lien symbolique à chaque fois qu'on met sur pied un nouveau CT et préciser les paramètres qu'on souhaite surveiller
  • attribuer les droits root au processus sur un fichier qu'on va appeler openvz_beancounter qui sera situé dans /etc/munin/plugins-conf.d

[vebc*]
 user root
  • redémarrer munin-node et attendre ...

SAN

Le considérer comme un disque de stockage disponible depuis le réseau

{i} Le plus gros du travail se fait au niveau du SAN avec un nombre de possibilités sur le partitionnement, accès partagés ou restreints des volumes très intéressants. Sur la machine qui utilisera le disque, il y a juste quelques réglages à effectuer.

Sur Debian squeeze il faut installer le paquet open-iscsi (version squeeze: 2.0.871.3) pour pouvoir manipuler le périphérique.

sudo iscsiadm --mode discovery --type sendtargets --portal=adresse.ip.du.SAN

sudo iscsiadm -m node -T nom.Du.Noeud.SAN -p adresse.ip.du.SAN -l

Coexistence avec LVM

En règle générale, les volumes physiques sont chargés au démarrage avant de faire la recherche de disques en réseau. Il existe cependant dans la version d'open-iscsi sous debian squeeze la possibilité de spécifier les noms des volumes existant.

# s'il y en a plusieurs, les noms de volume doivent être séparés par des espaces
LVMGROUPS="nom_de_mon_groupe_de_volume"

# SAN
#UUID=xxxxxxxxxxxxxxxxxxx     /mnt/san ext4    defaults,_netdev        0       0

#CT 1000 : MySQL
/dev/mapper/vg_san_data0-1000_root      /var/lib/vz/private/1000        ext4    defaults,_netdev        0       0
/dev/mapper/vg_san_data0-1000_log       /var/lib/vz/private/1000/var/log        ext4    noauto,_netdev  0       0
/dev/mapper/vg_san_data0-1000_var_lib_mysql     /var/lib/vz/private/1000/var/lib/mysql  ext4    noauto,_netdev  0       0

Debian chroot

Mise en place d'un environnement de travail correspondant à un serveur X . Ici X est debian wheezy 64 bits

sudo debootstrap --exclude=modutils,module-init-tools,pciutils,laptop-detect,dmidecode --include=locales,iproute,tcpdump,less,sudo,mtr-tiny,htop,rsync,screen,vim,python --arch amd64 wheezy debian1 http://miroir.cm.auf.org/debian/

sudo mount -o bind /dev/pts debian1/dev/pts
sudo mount -o bind /proc debian1/proc

sudo chroot debian1

Installation scanner EPSON GT-S85 (sur Ubuntu Precise)

La FAQ indique les étapes à suivre...

IPv6

Routage

En cherchant à comprendre comment configurer plusieurs routes IPv6

Squid3

Si jamais votre cache web squid3 vous retourne des réponses en IPv6 alors que votre réseau n'est qu'en IPv4 vous pouvez modifier l'une ou l'autre des options suivantes avec une préférence pour la seconde

Lu depuis (en prenant en compte les commentaires) : http://dev-tricks.net/squid-101-network-is-unreachable-when-dns-returns-ipv6

Munin

Support IPv6 http://munin-monitoring.org/wiki/MuninConfigurationNetworkIPv6

Inscription en masse avec les noms réels sur mailman

jdoe@example.com
 <jdoe@example.com>
John Doe <jdoe@example.com>
"John D. Doe" <jdoe@example.com>
jdoe@example.com (John Doe)

Expliqué ici

Mutt

Version utilisée ici : 1.5.24-1build1

Présentation de mon muttrc qui se trouve dans ~/.mutt/muttrc

set realname="Willy Ted MANGA"
set spoolfile="imaps://willy.manga@mail.cm.auf.org/"
set folder="imaps://willy.manga@mail.cm.auf.org/"
set imap_user="willy.manga@cm.auf.org"
set from="willy.manga@auf.org"
# pas nécessaire puisque mutt est compilé avec 1 client smtp
#set sendmail="/usr/bin/esmtp -v -X /tmp/esmtp.log"
set use_envelope_from=yes
set imap_list_subscribed=yes
set imap_check_subscribed
set header_cache=~/.mutt/cache
set message_cachedir=~/.mutt/cache
set mbox_type=Maildir 

set smtp_url="smtp://willy.manga@smtp-sortant.cm.auf.org:587"
set record="=Sent"
set postponed="=Drafts"
#timeout
set mail_check=90
set timeout=15


#trier par fils de discussion + antéchronologique
set sort = reverse-threads
set sort_aux = last-date-received

{i} Mutt ne conserve pas vraiment le courrier hors-ligne. y associer un outil comme offlineimap mais je n'ai pas encore vraiment testé

{i} Les certificats AUF sont stockés dans ~/.mutt_certificates

Linux policy routing

Notes spécifiques


  1. Et vu ma bande passante :) (1)