Table of Contents

linux

Index de la rubrique linux

Nettoyer sa Debian

Voici quelques commandes et utilitaires à installer afin de nettoyer/entretenir son système (source : http://forum.debian-fr.org/viewtopic.php?f=8&t=3826&sid=1f219a3a825538c5d970f1ce18ceb4a0) :

Pour supprimer les locales non utilisées:

Localpurge

Désinstaller les paquet orphelins

apt-get remove --purge `deborphan --guess-all`

Supprimer le cache et les fichiers temporaires de certaines applications

find -P ~/ -regex ".*\(~\|mozilla.*/Cache.*\|/.thumbnails/.*\|/.wine/.*/temp/.*\|/.gnome2/gnome-art/.*\)" \
   -type f -print -delete && rm -vfr ~/.Trash/* ~/.dvdcss/* ~/.recently-used

Supprimer les paquets téléchargés (pas ceux installés hein !)

aptitude clean
aptitude autoclean

Toutes les questions que je me suis posées et dont j'ai trouvé une réponse. Toutes les astuces, tips que j'ai grapillés ici et là.

Xorg

Pour règler le gamma du bureau, on peut utiliser l'outil xgamma disponible avec les drivers ATI proprio (je crois) :

xgamma -gamma 1.1

SUID / GUID

Sécuriser Apache

Les modules obligatoires :

Les autres :

Directives pour limiter la divulgation des informations de configuration d'Apache :

# Set to one of:  Full | OS | Minor | Minimal | Major | Prod
ServerTokens OS
# Set to one of:  On | Off | EMail
ServerSignature On

Sécuriser Proftpd

Interdire l'exécution sur /tmp

Ca peut etre une faille de sécurité de laisser le droit d'exécution sur /tmp ; mieux vaut donc le monter avec des droits restreints : pour cela, il faut monter la partition ainsi (dans la fstab) :

/dev/sda3   /tmp    ext3   noexec,nosuid     0    2

Si vous n'avez pas de partition spécifique pour /tmp, on peut l'émuler via un fichier :

cd /root
dd if=/dev/zero of=/root/tmpMnt bs=1024 count=40000
mkfs.ext3 -F /root/tmpMnt
mv /tmp /tmp.backup
mkdir /tmp
mount -o loop,noexec,nosuid,rw /root/tmpMnt /tmp
chmod 0777 /tmp
if ! grep -qai tmpMnt /etc/fstab ; then 
   echo "/root/tmpMnt /tmp ext3 loop,noexec,nosuid,rw  0 0" >> /etc/fstab
fi
mount -a
cp /bin/ls /tmp/
/tmp/ls

-- MARK -- dans messages

Le journal /var/log/messages contient pleins de lignes dans le genre :

Nov  2 09:22:56 tiga -- MARK --

C'est le syslogd qui les y ajoute toutes les 20 min pour qu'en cas de panne du système, on puisse savoir à quelle heure a eu lieu le problème.

Informations CPU

Pour afficher des informations sur le processeur :

cat /proc/cpuinfo
 processor       : 0
 vendor_id       : AuthenticAMD
 cpu family      : 6
 model           : 8
 model name      : AMD Athlon(tm) 
 stepping        : 1
 cpu MHz         : 1202.802
 cache size      : 256 KB
 fdiv_bug        : no
 hlt_bug         : no
 f00f_bug        : no
 coma_bug        : no
 fpu             : yes
 fpu_exception   : yes
 cpuid level     : 1
 wp              : yes
 flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mp    mmx ext 3dnowext 3dnow ts
 bogomips        : 2410.41

Si le matériel est compatible, on peut lire la température du processeur ainsi que les seuil limites de cette façon :

cat /proc/acpi/thermal_zone/THRM/temperature /proc/acpi/thermal_zone/THRM/trip_points
 temperature:             27 C
 critical (S5):           100 C
 passive:                 100 C: tc1=4 tc2=3 tsp=60 devices=0xcbfeef80 
 active[0]:               100 C: devices=0xb13fd6e0

Là on voit que je n'aurais pas dû laisser la fenêtre ouverte.

Ubuntu Edgy Eft sous VMWare

Installer Ubuntu Edgy Eft sous VMWare se fait sans problèmes, à ceci près que les “VMWare-tools” ne s'installent pas, et ce malgré l'installation clean des linux-header et des build-essential.

sudo apt-get install build-essential
sudo apt-get install linux-headers-`uname -r`

En effet l'utilitaire de configuration (de tête vmware-config.pl) stop avec une erreur mentionnant X.org 7.1. De plus il fait sauter la carte réseau, obligeant un reboot de la machine virtuelle.

Après une rapide recherche sur gg, il s'agit d'une incompatibilité entre la version 5.5.1 de VMWare et la version 7.x de X.org, fourni avec Edgy Eft. Ca devrait marcher avec la version 5.5.2.

Freeze au retour d'hibernation

Sous Feisty fawn avec un portable Sony FE41M (core 2 duo mais surtout nvidia avec drivers proprios) Une solution semble être http://forum.ubuntu-fr.org/viewtopic.php?id=86849 à vérif.

Chrooter un utilisateur ssh

Le tuto est dispo sur lealinux http://www.lea-linux.org/cached/index/Trucs:Chrooter_un_utilisateur_(ssh,_terminal,_console,_etc…).html

Erreur sendfile Proftpd

Proftpd utilise sendfile, qui peut poser problème avec certains systèmes de fichier (NFS ou SMB) :

unable to serve the network file through its own cache.

Il faut donc désactivé son utilisation par la directive

UseSendfile off

dans le fichier de conf /etc/proftpd/proftpd.conf.

source : http://www.proftpd.org/docs/directives/configuration_full.html#USESENDFILE

Taille du terminal

Par défaut le terminal d'Ubuntu est gnome-terminal et il se lance en 80×24. Pour modifier sa taille :

gnome-terminal --geometry=100x30

On peut spécifier la position dans l'écran, en partant de l'origine (en haut à gauche) avec + ou de son opposé avec - :

gnome-terminal --geometry=100x30+120-80

Là il va se lancer en 100×30 caractères, à 120 pixels de la gauche et 80 du bas de l'écran.

Lancer un script au démarrage

Création du script :

vi /etc/init.d/toto.sh
 !/bin/bash
 echo toto

On le rend exécutable :

chmod +x /etc/init.d/toto.sh

On l'ajoute au démarrage :

update-rc.d /etc/init.d/toto.sh defaults

Limiter la vitesse du CDRom

Quand on regarde un cd/dvd, c'est encore mieux sans le bruit du lecteur. eject, une commande que tout le monde a d'installer, a une option -x (sur les versions récentes)

eject -x 8 /dev/cdrom

limite la vitesse du lecteur a 8x. c'est plus silencieux. C'est réversible dès que le cd/dvd est éjecté

Modifier le groupe principal d'un utilisateur

Pour modifier le groupe principal d'un utilisateur, il suffit de modifier le 4e champ de la ligne correspondante dans le fichier /etc/passwd :

dude:x:1000:1001:,,,:/home/dude:/bin/bash

Ici il s'agit du groupe d'identifiant (gid) = 1001.

On trouve le nom du groupe en question dans le fichier /etc/group :

grep 1001 /etc/group
masterusers:x:1001:toto,dude

(On constate que 2 utilisateur appartiennent à ce groupe : toto et dude.)

Ainsi, les fichiers de l'utilisateur “dude” seront créés sous le groupe “masterusers” d'identifiant 1001.

whoami
 dude
touch toto
ll toto
 -rw-r--r-- 1 dude masterusers 0 jun  2 01:54 toto

Activer le 3eme bouton de la souris

Il faut éditer le fichier de conf du serveur X (X11 sous Ubuntu : /etc/X11/xorg.conf) et y ajouter les lignes suivantes, dans la section Section “InputDevice” :

Option          "Buttons"       "5"
Option          "ZAxisMapping"  "4 5"

La première active le 3ème bouton et la seconde active le scroll up/down (le 3ème bouton a en fait 3 clics : le clic “du milieu”, le scroll up et le scroll down).

Transfert de fichiers par le réseau plus rapide

J'ai trouvé une bidouille astucieuse sur l'excellent qui permet, d'après mes tests, de diviser par 2 le temps de copie de fichiers par le réseau.

dude@dude:~/Documents$ time `cp -R dev /Volumes/data/tmp/popo/`

 real	6m32.577s
 user	0m0.704s
 sys	0m23.531s

Sur la machine destination on doit passer la commande

nc -l -p 1235 | tar -C . -xzf -

Sur la machine source

dude@dude:~/Documents$ time `tar -cz ./dev | nc tyr.rv 1235`
 real	3m13.514s
 user	2m35.526s
 sys	0m31.486s

dude@tyr:/mnt/data/tmp/popo$ time `ssh dude@192.168.2.23 'tar -cz -C /Users/dude/Documents/ dev' | tar -zx`

 real	4m12.939s
 user	1m58.999s
 sys	1m44.563s

Supprimer les ^M d'un fichier

Il arrive que, lorsqu'on importe un fichier qui a été encodé sous Windows, apparaissent en fin de ligne le caractère ^M qui correspond à un retour à la ligne mal interprété par vi - entre autres. Pour les supprimer, il faut ouvrir le fichier sous vi, passer en mode commande, saisir :%s/ puis passer les combinaisons de touches ctrl+v puis ctrl+m (et enfin / /g, pour remplacer toutes les occurences par pour une chaine vide):

<echap>
:%s/^v^m//g

Sauvegarder un FTP en local

Dans mon cas je veux sauvegarder le contenu de mon site internet, disponible via FTP uniquement, sur mon serveur de sauvegarde. Sur la documentation d'ubuntu-fr ils expliquent tout.

Il suffit d'installer le client FTP lftp et de saisir la commande :

lftp ftp://login:mdp@serveur_FTP -e "mirror -e -x dossier_ignoré_1 -x dossier_ignoré_2 /emplacement_distant /emplacement_local ; quit"

Ça marche aussi dans l'autre sens, pour mettre à jour un site avec le dernier contenu située sur ma machine en local :

lftp ftp://login:mdp@site_FTP -e "mirror -e -R -x dossier_ignoré_1 -x dossier_ignoré_2 /emplacement_local /emplacement_distant ; quit"

Paramètres :

Autre possibilité (à approfondir) : utiliser yafc en script par exemple :

#!/bin/bash
yafc login:pwd@server <<**
put -nrv /dossier_local -o /dossier_distant
bye
**

Paramètres :

Gérer les droits d'un dossier partagé

Dans le cas d'un dossier du genre incoming, qui doit être accessibles en rw aux utilisateurs ftp et smb, il faut activer le sticky bit sur chaque dossier, ce qui permet de conserver les droits du dossier père sur les nouveaux fichiers, qui que ce soit qui les créer (source).

Modifier l'adresse MAC d'une carte réseau

Pour changer l'adresse mac de eth0 :

ifconfig eth0 down
ifconfig eth0 hw ether 00:11:22:33:44:55
ifconfig eth0 up

voir

/etc/init.d/networking restart

On peut aussi modifier le fichier /etc/network/interfaces (TODO).

Personnaliser le prompt du bash

voir ici ou .

Analyser un processus

Un bien grand mot pour décrire la façon de savoir quel binaire se cache derrière un processus. Il faut pour celà récupérer son PID, puis regarder le lien synbolique situé dans /proc/<PID>/exe :

ps
 PID TTY          TIME CMD
 20338 pts/4    00:00:00 bash
 20358 pts/4    00:00:00 ps

ll -a /proc/20338/exe 
 lrwxrwxrwx 1 dude smbusers 0 avr 27 23:21 /proc/20338/exe -> /bin/bash*

Dans le cas d'un processus suspect, on peut avoir des surprises : par exemple le lien qui pointe vers un exécutable bizarroïde situé dans /tmp

Afficher l'heure dans l'historique des commandes

Pour afficher la date et l'heure dans l'historique des commandes, ajouter cette ligne dans son .bashrc :

HISTTIMEFORMAT="%m/%d_%H:%M:%S "

Récupération d'un mot de passe root

Quand on perd le mot de passe root sous Linux, on n'est plus rien. Heureusment il existe une procédure de recovery :

grub edit> kernel /boot/vmlinuz-2.6.8-2-386 root=/dev/sda1 rw init=/bin/bash

Afficher un fichier avec les numéros de lignes

perl -ne 'print "$. - $_"' infile.txt

Débloquer un terminal

Il arrive que votre terminal soit bloqué suite à une commande qui ne rend pas la main ; exemple :

telnet 10.0.0.1
Trying 10.0.0.1...
Connected to 10.0.0.1.
Escape character is '^]'.
^C
^C
exit
quit
^^^X^X^X^A^Z^Z^Z^Z^Z^C^C^V^C^C^M

Pour débloquer le terminal : ^V^O<enter> (<ctrl+v><ctrl+o><enter>)

La commande reset peut aussi fonctionner pour rétablir le titre de la fenêtre, après avoir lu un binaire par exemple.

Source : commandlinefu

Changer la langue du clavier

Pour changer la langue du clavier (AZERTY ou QWERTY) :

setxkbmap [fr | us]

NB : sous centOS

loadkeys fr

Prendre un screenshot d'une machine distante

Voici une commande pour prendre une capture d'écran d'une machine distante lorsqu'on est connecté dessus via SSH (PS : il faut qu'elle fasse tourner un serveur X évidemment) :

DISPLAY=":0.0" import -window root screenshot.png

Créer un fichier temporaire automatique

Certaines commandes requièrent qu'on leur fournisse un fichier en input ; c'est le cas de la commande mail par exemple, pour spécifier le corps (contenu) du mail. Il faut donc créer ce fichier, ce qui est souvent fastidieux : par exemple :

echo "Ceci est le corps du mail" > /tmp/mail.tmp
mail -s "Sujet du mail" destinataire@serveur.com < /tmp/mail.tmp
rm -f /tmp/mail.tmp

Pour éviter la création du fichier temporaire, on encadre une commande par <( et ) ce qui a pour effet de la faire passer par un fichier automatiquement :

mail -s "Sujet du mail" destinataire@serveur.com <(echo "Ceci est le corps du mail")

Plus simple, plus rapide et plus propre, ce second exemple fait la même chose que le premier code.

Connaitre la date d'installation du système

NB : ceci ne marche que si le système n'a pas changé de système de fichier depuis son installation.

tune2fs -l $(df -P / | tail -n1 | cut -d' ' -f1 ) | grep 'Filesystem created:'
 Filesystem created:       Sun Jun  7 23:06:33 2009

Augmenter le nombre de ports clients

Quand on initie une connexion, les applications utilisent des ports > 1024 comme port coté client (le port serveur étant par exemple 25 pour un serveur de mail, ou 80 pour un serveur web). Sous Linux les applications sont limitées aux ports clients indiqués dans le fichier /proc/sys/net/ipv4/ip_local_port_range, dans mon cas sous Debian Squeeze entre 32368 et 61000 :

cat /proc/sys/net/ipv4/ip_local_port_range
32768   61000

Pour augmenter cette plage de ports (c'est utile pour mettre en place un serveur proxy par exemple) il faut modifier le contenu du fichier via la commande :

sysctl -n net.ipv4.ip_local_port_range="25000 65000"

source : Linux * Screw

Fichiers notoires

rhosts

Contient la liste des hosts / logins ayant accès sans authentification aux services remote comme rsh ou rlogin, par exemple l'utilisateur dude sur la machine 192.168.2.3.

192.168.2.3     dude

/etc/motd

Il contient le message de bienvenue qui s'affiche quand un utilisateur se connecte à la machine.

cat /etc/motd
 Linux vtiga 2.6.18-4-686 #1 SMP Wed May 9 23:03:12 UTC 2007 i686
 
 The programs included with the Debian GNU/Linux system are free software;
 the exact distribution terms for each program are described in the
 individual files in /usr/share/doc/*/copyright.
 
 Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
 permitted by applicable law.

/etc/inittab

Configure le service init, à l'origine de tous les autres processus lancéssur le système

id:5:initdefault:

on démarre ici en niveau d'exécution 5 (graphique)

ca:12345:ctrlaltdel:/bin/shutdown -r now
l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2

Cela indique les scripts lancés pour chaque runlevel ainsi que les paramètres envoyés. Par ex. le dossier /etc/rc3.d contient des liens symboliques vers le fichiers de scripts qui seront chargés lors d'un runlevel 3.

/forcefsck

Ce fichier n'existe pas “normalement”. On le créer afin de forcer un fsck au prochain démarrage de la machine.

touch /forcefsck

La machine, après avoir effectué le fsck, supprime le fichier de sorte qu'elle ne le refera pas à tou les futurs démarrages.

/proc/meminfo

Pour récupérer des information sur la mémoire vive :

cat /proc/meminfo
MemTotal:       968368 kB
MemFree:         34104 kB
Buffers:        128464 kB
Cached:         601764 kB
SwapCached:          0 kB
Active:         404812 kB
Inactive:       482104 kB
HighTotal:       62912 kB
HighFree:          192 kB
LowTotal:       905456 kB
LowFree:         33912 kB
SwapTotal:      979924 kB
SwapFree:       979272 kB
Dirty:             452 kB
Writeback:           0 kB
AnonPages:      156688 kB
Mapped:          21884 kB
Slab:            37704 kB
SReclaimable:    32008 kB
SUnreclaim:       5696 kB
PageTables:       1492 kB
NFS_Unstable:        0 kB
Bounce:              0 kB
WritebackTmp:        0 kB
CommitLimit:   1464108 kB
Committed_AS:   433792 kB
VmallocTotal:   114680 kB
VmallocUsed:      3188 kB
VmallocChunk:   111036 kB
HugePages_Total:     0
HugePages_Free:      0
HugePages_Rsvd:      0
HugePages_Surp:      0
Hugepagesize:     4096 kB

Sécurité générale sous Linux

(Résumé d'une partie du bouquin Sécurité sous Linux de Aron Hsiao, ed. Campus Press)

Configuration de LILO

Lilo (Linux LOader) est le programme qui lance l'image de Linux, et qui se place dans le MBR.

password= "A9dl00!"

le mot de passe est en clair dans le fichier de config

chmod 600 /etc/lilo.conf

Les niveaux d'exécution

Debian GNU/Linux utilise des runlevels (runlevels) légèrement différents de ceux-ci, qui sont documentés dans /etc/inittab

Ce fichier est issu de /etc/skel/.bash_logout lors de la création du compte utilisateur.

Protections réseau

(D'après http://www.dedibox-news.com/doku.php?id=distrib:debian:securiser_sa_debian)

Se protéger contre les Smurf Attack :

echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

Eviter le source routing :

echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route

Se protéger des attaques de type Syn Flood :

echo "1" > /proc/sys/net/ipv4/tcp_syncookies
echo "1024" > /proc/sys/net/ipv4/tcp_max_syn_backlog
echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter

Désactivez l’autorisation des redirections ICMP:

echo "0" > /proc/sys/net/ipv4/conf/all/accept_redirects
echo "0" > /proc/sys/net/ipv4/conf/all/secure_redirects

Eviter le log des paquets ICMP erroné:

echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses

Active le logging des paquets aux adresses sources falficiées ou non routables :

echo "1" > /proc/sys/net/ipv4/conf/all/log_martians

Utiliser un proxy http

Pour utiliser un proxy HTTP sous Linux on peut utiliser la variable d'environnement http_proxy qui sera utilisable par toutes les applications qui en tiennent compte :

export http_proxy="http://login:password@IP_proxy:port"

(“login:password” est facultatif)

On peut rendre la manipulation pérenne en l'indiquant dans le fichier .bashrc de votre home.

Pour certaine applications cela ne fonctionne pas ; par exemple j'obtiens ces erreurs sous debian 6.0.6 avec aptitude :

aptitude update
Err http://ftp.debian.org squeeze-updates Release.gpg
  Impossible d'initialiser la connexion à 3128: 80 (0.0.12.56). - connect (22: Argument invalide)
Err http://ftp.debian.org/debian/ squeeze-updates/contrib Translation-en
  Impossible d'initialiser la connexion à 312880 (0.0.12.56). - connect (22: Argument invalide)
[..]

Dans ce cas on peut préciser un proxy directement dans l'application ; dans le cas d'apt / aptitude il faut créer un fichier dans /etc/apt/apt.conf.d/ avec le paramètre suivant :

vi /etc/apt/apt.conf.d/99proxy
Acquire::http::Proxy "http://IP_proxy:port";

NB : désactiver la variable d'environnement au besoin :

unset http_proxy

Le poste ne s’éteint pas

Souvent cela arrive d'arrêter la machine avec la commande halt par exemple, et qu'elle reste “bloquée” à : System halted sans couper l'alimentation. Ceci a pour cause la mauvaise utilisation / compréhension des commandes pour arrêter la machine.

Avec la commande shutdown on peut également :

Donc pour conclure si on veut éteindre électriquement la machine il faut utiliser shutdown -h now ou l'un de ses alias.

Le fichier /etc/nologin

Lorsque le fichier /etc/nologin existe, aucun utilisateur autre que root ne peut plus se connecter au système. Le contenu du fichier sera alors affiché en guise de message d'information, par exemple “Maintenance en cours !”

Changer le kernel OVH

Quand j'ai installé mon Kimsufi il y a quelques année j'ai installé Debian 7 dessus, avec le kernel OVH (“optimisé” pour la machine). Bon, je me rend compte maintenance que je n'ai pas de temps à perdre pour m'amuser à changer de kernel manuellement , je veux donc installer celui des dépôts apt (qui seront surveillés et mis à jour plus régulièrement que si c'était moi !). Voici comment procéder :

aptitude install linux-image-amd64
mkdir /root/bck_kernel_OVH
mv /etc/grub.d/06_OVHkernel /root/bck_kernel_OVH/
update-grub
init 6
 
# (reboot...)
 
# vérification du noyau
uname -a
Linux ksXXXXXXXX.kimsufi.com 3.2.0-4-amd64 #1cront SMP Debian 3.2.73-2+deb7u3 x86_64 GNU/Linux

Si tout se passe bien après quelques temps, on pourra virer les binaires du noyaux OVH pour faire de la place sur la partition /boot :

cd /boot
rm System.map-3.10.9-xxxx-grs-ipv6-64 bzImage-3.10.9-xxxx-grs-ipv6-64

lsblk

Pour afficher des informations sur les partitions (pas forcément montées)

lsblk -o name,mountpoint,label,size,uuid
NAME   MOUNTPOINT LABEL   SIZE UUID
sda                     278,9G 
├─sda1 /boot                1G 809a7481-b9c1-4c66-b281-e0bb181f8122
├─sda2 /                 39,1G 07a81e54-5d64-455f-abc1-2bee4efca61d
├─sda3 /usr/local        68,4G 24114522-c9ef-4d58-b095-c22954c2cc35
├─sda4                      1K 
├─sda5 [SWAP]            50,8G 7072ac54-57f6-4a3d-8cb6-a48860f42976
├─sda6 /var              11,7G ff92be9a-2855-4750-b8e9-f4b7519dbdbb
└─sda7 /tmp               9,8G 9cdb2958-9c5c-4887-8918-e5bf963fe275
sdc                      27,3T 
├─sdc1 /d5                5,5T ea56582d-bf21-44a7-98d5-a6c5552a899c
└─sdc2 /c2               21,9T c574b2b1-7866-40c0-8cad-947995f2d8f5
sdb                      27,3T 
├─sdb1 /d1                5,5T 5a5e8fb8-731e-4a1a-8ad4-b93f2d5ce537
├─sdb2 /d2                5,5T 49fec063-efc0-483c-92c4-1cdd84033660
├─sdb3 /d3                5,5T 08c1c937-20ca-4243-b332-e5f092c14975
├─sdb4 /d4                5,5T 790ccead-b4b2-43d6-8c3c-80396fa8d6d4
└─sdb5 /c1                5,5T 68d3b8ec-20e5-4b0d-984a-2de5b0132acb

Flush DNS

Pour vider le cache DNS, (équivalent sous Windows d'un ipconfig /flushdns), si on utilise le logiciel de cache nscd :

service nscd reload
 
# ou, pour simplement supprimer le cache d'une entrée précise :
nscd -i hosts

Plus d'infos sur nscd.

Si on utilise sssd :

# invalide toutes les entrées en cache :
sss_cache -E

Outils de performance

Présentation sous forme graphique des outils pour analyser, benchmarker et tuner les performances sous Linux !

source : http://www.brendangregg.com/linuxperf.html

Divers

iconv -f utf8 -t iso8859-15 fichier_utf8.txt

Liens

Debian

Site généraux fr :

Sites généraux en :

Divers autres sites, articles, blogs :