Je prévois un déplacement au Maroc pour cet hiver. Le marché de l'Internet sans fil (CDMA et UMTS) là bas est assez développé et deux opérateurs se livrent une rude concurrence sur ce marché. L'acteur qui m'a semblé le plus populaire sur le marché, Wana, ex-Wanadoo et filiale du groupe ONA exploite un réseau CDMA (EVDO Rev.A). Ils ont choisi le fabriquant Coréen LG pour leur fournir des modems USB abordables. Malheureusement, depuis le début de l'automne, un nouveau modem ne fonctionnant (à priori) que sur plate-forme Windows a commencé à innonder le marché : le LDU-1900D, laissant les utilisateurs Linux et MacOS X en mauvaise posture. Comptant accéder à Internet durant mon voyage, je me suis penché sur la question...
Keyword - howto
02dec
Lister la commande complète avec 'ps'
Par Sébastien Carrillo - aucun commentaire
Aller encore un petit truc ce matin. La plupart des utilisateurs de Linux
connaissent la commande ps. Elle permet de voir la liste des
processus qui roulent sur le système. Les options les plus utilisées sont
-ef ou -aux.
La sortie de la commande ps est formatée selon la largeur de votre terminal. Par exemple si votre terminal peut afficher 80 caractères sur une ligne, vous ne connaîtrez pas les options d'une commande plus longue:
root 7035 7010 0 07:38 pts/1 00:00:00 /bin/bash /usr/bin/rbme hydre:/home /var
root 7036 7035 0 07:38 pts/1 00:00:00 tee -a /tmp/RBME.rbme.dEZHQGMqhjoeHT7024/output /tmp/RB
root 7060 7033 0 07:38 pts/1 00:00:01 /usr/bin/rsync --link-dest=/mnt/nas01-1500/rbme/hydre/2
root 7061 7060 0 07:38 pts/1 00:00:00 ssh -c blowfish-cbc hydre rsync --server --sender -lHog
root 7062 7060 0 07:40 pts/1 00:00:00 /usr/bin/rsync --link-dest=/mnt/nas01-1500/rbme/hydre/2
root 7065 1097 0 08:20 ? 00:00:00 sshd: root@pts/0
Si on veut avoir la liste des commandes complètes, il suffit de rediriger la sortie standard vers cat. Le terminal n'a donc plus d'impact:
root 7035 7010 0 07:38 pts/1 00:00:00 /bin/bash /usr/bin/rbme hydre:/home /var
root 7036 7035 0 07:38 pts/1 00:00:00 tee -a /tmp/RBME.rbme.dEZHQGMqhjoeHT7024/output /tmp/RB
ME.rbme.dEZHQGMqhjoeHT7024/hydre
root 7060 7033 0 07:38 pts/1 00:00:01 /usr/bin/rsync --link-dest=/mnt/nas01-1500/rbme/hydre/20
08-12-01/ --relative -aSH --ignore-errors -x --exclude-from=/dev/fd/63 --include-from=/dev/fd/62 hydre:/
home /var /mnt/nas01-1500/rbme/hydre/2008-12-02/
root 7061 7060 0 07:38 pts/1 00:00:00 ssh -c blowfish-cbc hydre rsync --server --sender -lHog
DtprRxS --ignore-errors . /home /var
root 7062 7060 0 07:40 pts/1 00:00:00 /usr/bin/rsync --link-dest=/mnt/nas01-1500/rbme/hydre/2
008-12-01/ --relative -aSH --ignore-errors -x --exclude-from=/dev/fd/63 --include-from=/dev/fd/62 hydre
:/home /var /mnt/nas01-1500/rbme/hydre/2008-12-02/
root 7065 1097 0 08:20 ? 00:00:00 sshd: root@pts/0
On voit ici tous les arguments de la commande rsync. Comme vous le voyez, je suis en train de travailler sur la solution de backup que je vais bientôt mettre en vente...
28nov
Convertir des dates
Par Sébastien Carrillo - aucun commentaire
C'est souvent utile, alors je partage avec vous deux petits trucs.
D'abord un petit rappel. Unix, et donc Linux, compte le temps en secondes depuis le 1er janvier 1970. Donc si vous voulez savoir combien de secondes se sont écoulées, vous faite la commande suivante (il est ven nov 28 11:12:53 EST 2008):
[scarrillo@vercors ~]# date +%s
1227888773
Si vous avez une application qui fait des logs avec des dates marquées en seconde, comme par exemple squid (je devrais bientôt faire un article à ce sujet), et que vous voulez savoir à quelle heure a été fait l'accès, voici comment faire:
16nov
Linux : Volumes disque chiffrés avec LUKS
Par Jérome Oufella - aucun commentaire
Le goût du LUKS
Le système Linux fournit de manière native un mécanisme de chiffrement de périphériques de type "bloc", appellé LUKS (pour Linux Unified Key Setup). Ce système propose une approche intéressante, dans le sens où l'accès aux périphériques chiffrés peut être délégué à plusieurs clés (jusqu'à huit). Il est ainsi possible de donner accès à un périphérique à plusieurs personnes, ou encore de donner à une personne plusieurs ressources pour accéder au volume ; par exemple une clé d'utilisation courante, une clé issue d'une empreinte digitale, et une clé en coffre à la banque.
08nov
Augmenter le nombre de sessions telnet simultanées
Par Sébastien Carrillo - aucun commentaire
Un de mes gros clients a des terminaux qui se connectent avec le protocole
telnet sur le serveur. Par défaut RedHat Enterprise Linux ne
propose pas suffisament de sessions simultanées.
Comme je lance telnet avec xinetd, il faut augmenter le nombre
d'instances de xinetd simultanées. Voici comment:
cat /etc/xinetd.confDe cette façon, 120 utilisateurs peuvent utiliser le serveur simultanément.
#
# Simple configuration file for xinetd
#
# Some defaults, and include /etc/xinetd.d/
defaults
{
instances = 120
log_type = SYSLOG authpriv
log_on_success = HOST PID
log_on_failure = HOST
cps = 25 30
}
includedir /etc/xinetd.d
24oct
Changer le fuseau horaire avec CentOS
Par Sébastien Carrillo - un commentaire
Ce matin, je me configure une machine virtuelle chez Gandi pour surveiller mes serveurs avec Munin. Et comme les machines virtuelles de Gandi sont configurées sur le fuseau horaire de Paris, j'ai du chercher comment changer l'heure.
Voici la solution:
[root@gandi etc]# date
Fri Oct 24 16:54:34 CEST 2008
[root@gandi etc]# cat /usr/share/zoneinfo/America/Montreal > /etc/localtime
[root@gandi etc]# date
Fri Oct 24 10:54:55 EDT 2008
23oct
Réparer un disque RAID sous linux
Par Sébastien Carrillo - aucun commentaire
Une façon simple de protéger ses données contre la perte d'un disque dur est
de créer une grappe RAID (Redundant Array of Inexpensive Disks)
Linux permet de s'affranchir de cette tâche assez facilement. Nous allons voir
ici, une fois la grappe crée (si vous voulez que je fasse un article sur la
création du RAID, laissez un commentaire), comment effectuer un changement de
disque sans éteindre le serveur.
Pour cet exercice, nous disposons d'un serveur avec deux disques SATA hotswap
qui seront reconnus comme des périphériques /dev/sd[a-z]
Le principe du test consiste en l'arrachage d'un disque, au remplacement par un
disque neuf et à la resynchronisation des disques (RAID).
19oct
Dépasser la limite de 2Gb avec tar
Par Sébastien Carrillo - aucun commentaire
Saviez-vous que la commande tar ne peut pas générer des fichiers d'une taille supérieure à 2Gb? En effet, si vous voulez faire des archives d'une taille supérieure, vous devez utiliser les options "multi-volume" afin de créer plusieurs fichiers. Voici un exemple:
tar -c \
-v \
--tape-length 1900000 \
--multi-volume \
-f /backup/`hostname`-home.vol1.`date "+%Y%m%d"`.tar \
-f /backup/`hostname`-home.vol2.`date "+%Y%m%d"`.tar \
-f /backup/`hostname`-home.vol3.`date "+%Y%m%d"`.tar \
-f /backup/`hostname`-home.vol4.`date "+%Y%m%d"`.tar \
--preserve \
--same-order \
--one-file-system \
/home >> /backup/`hostname`-home.`date "+%Y%m%d"`.log 2>&1
Vous devez ensuite, si vous le voulez, zipper les fichiers individuellement avec une petite boucle.
C'est fastidieux et si le /home dépasse 8Gb, on aura pas assez de volumes...
Afin de contourner le problème, on peut utiliser les redirections d'entrée-sortie afin de créer une archive tar d'une taille supérieure à 2Gb:
tar -cv --preserve \
--same-order \
--one-file-system \
/home > /backup/`hostname`-home.vol4.`date "+%Y%m%d"`.tar
Comme c'est le shell et plus tar qui crée le fichier, plus de problème de taille.
et si on veut zipper à la volée:
tar -cv --preserve \
--same-order \
--one-file-system \
/home | bzip2 > /backup/`hostname`-home.vol4.`date "+%Y%m%d"`.tar.bz2
fera le travail. ;)
19oct
Howto - Désactiver IPv6
Par Sébastien Carrillo - un commentaire
Le protocole IPv6 est maintenant disponible en standard dans la plupart des distributions Linux. Si votre passerelle ne le gère pas, cela ralentit le réseau.
Voici comment le désactiver :
Dans les distributions de saveur RedHat (CentOS, RHEL, Fedora):
Ajouter ces deux lignes dans le fichier /etc/modprobe.confDans les distributions de saveur Debian (dont Ubuntu), on ajoutera les mêmes lignes dans /etc/modprobe.d/aliases
::::::::::::::
/etc/modprobe.conf
::::::::::::::
alias net-pf-10 off
alias ipv6 off
04sep
Howto - Encrypter un fichier sous Linux avec gpg
Par Sébastien Carrillo - un commentaire
Si vous voulez laisser vos fichiers personnels sur un serveur et que vous ne voulez pas qu'ils puissent tomber dans de mauvaises mains, voici une façon très simple de chiffrer un fichier:
scarrillo@estemaira:~/Bureau$ gpg -c fichierperso.ods
Entrez la phrase de passe:
Répétez la phrase de passe:
scarrillo@estemaira:~/Bureau$ ls -l
-rw-r--r-- 1 scarrillo scarrillo 979 2008-09-04 18:07 fichierperso.ods
-rw-r--r-- 1 scarrillo scarrillo 690 2008-09-04 18:07 fichierperso.gpg
Il faut bien sûr effacer votre fichier original.
Pour décrypter maintenant:
scarrillo@estemaira:~/Bureau$ gpg -d fichierperso.gpg > fichierperso.odsVotre fichier original est maintenant restauré. ;)
gpg: données chiffrées avec CAST5
gpg: chiffré avec 1 phrase de passe
scarrillo@estemaira:~/Bureau$ ls -l fichierperso*
-rw-r--r-- 1 scarrillo scarrillo 979 2008-09-04 18:10 fichierperso.ods
-rw-r--r-- 1 scarrillo scarrillo 690 2008-09-04 18:07 fichierperso.gpg
Il existe bien-sûr plein d'autres façons de crypter un fichier, dont beaucoup sont plus fiables. Cette méthode à l'avantage d'être simple et de ne pas nécessiter la visualisation du manuel à chaque fois! Elle suffit pour la plupart des utilisations.