1. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page
Prendre en main les commandes sous GNU/LINUX
Information Système
Commande Description
arch affiche l'architecture de la machine
cal 1986 affiche le calendrier de 1986
cat /proc/cpuinfo affiche les informations CPU
cat /proc/interrupts affiche les interruptions
cat /proc/meminfo affiche la mémoire utilisée
cat /proc/swaps affiche le(s) fichier(s) swap
cat /proc/version affiche la version du kernel
cat /proc/net/dev affiche les périphériques réseau et leurs
statistiques
cat /proc/mounts affiche le(s) système(s) de fichiers monté(s)
clock -w sauvegarde la date et la change dans le BIOS
date affiche la date système
date 041217002012.00 fixe la date et l'heure -
moisjourheuresminutesannée.secondes
dmidecode -q affiche les composants hardware - (SMBIOS /
DMI)
hdparm -i /dev/hda affiche les caractéristiques du disque dur
hdparm -tT /dev/sda lance un test de lecture sur le disque dur
lspci -tv affiche les périphériques PCI
lsusb -tv affiche les périphériques usb
uname -m affiche l'architecture de la machine
uname -r affiche la version du kernel
Arrêt, Redémarrage et Déconnexion du système
Commande Description
init 0 arrêter le système
logout libérer la session
reboot redémarrer
shutdown -h now redémarrer maintenant
shutdown -h 16:30 & planifier l'arrêt du système à 16h30
shutdown -c annuler la planification d'un arrêt du système
shutdown -r now redémarrer maintenant
Fichiers et Répertoires
Commande Description
cd /home entrer dans le répertoire '/home'
cd .. descendre d'un niveau dans l'arborescence
cd ../.. descendre de deux niveaux dans l'arborescence
2. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page
cd aller dans le répertoire home
cd ~user1 entrer de le répertoire home de l'utilisateur user1
cd - aller dans le répertoire précédent
cp file1 file2 copier le file1 en file2
cp dir/* . copier tous les fichiers d'un répertoire / dans le
répertoire de travail en cours
cp -a /tmp/dir1 . copier un répertoire '/tmp/dir1' dans le répertoire
de travail en cours
cp -a dir1 dir2 copier le répertoire dir1 en un autre dir2
cp file file1 extrait le type mime du fichier file comme texte
iconv -l liste les encodages connus
iconv -f fromEncoding -t toEncoding
inputFile > outputFile
crée un nouveau fichier par ce qui donné par le
fichier d'entrée en supposant qu'il est encodé en
fromEncoding et le converti à toEncoding
find . -maxdepth 1 -name *.jpg -print -exec
convert
traitement qui redimensionne des fichiers dans le
répertoire courant et les envoie dans un
répertoire thumbnails (requière convert de
Imagemagick)
ln -s file1 lnk1 crée un lien symbolique à un fichier ou
répertoire
ln file1 lnk1 crée un lien physique à un fichier ou répertoire
ls visualise les fichiers d'un répertoire
ls -F visualise les fichiers d'un répertoire (plus '/')
ls -l affiche les détails des fichiers et des répertoires
ls -a affiche tout même les fichiers cachés
ls *[0-9]* affiche les fichiers et les répertoires qui
contiennent des nombres
lstree affiche les fichiers et les répertoires dans une
arborescence qui commence par la racine
courante
mkdir dir1 crée un répertoire appelé 'dir1'
mkdir dir1 dir2 crée deux répertoires simultanément
mkdir -p /tmp/dir1/dir2 crée un répertoire en arborescence
mv dir1 new_dir renomme / déplace un fichier ou un répertoire
pwd affiche le chemin du répertoire courant
rm -f file1 supprime le fichier nommé 'file1'
rm -rf dir1 supprime le répertoire nommé 'dir1' et son
contenu récursivement
rm -rf dir1 dir2 supprime deux répertoires et leurs contenus
récursivement
rmdir dir1 supprime le répertoire appelé 'dir1'
touch -t 0712250000 file1 modifie la date d'un fichier ou d'un répertoire
(AAMMJJhhmm)
tree affiche les fichiers et les répertoires dans une
arborescence qui commence par la racine
courante
3. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page
Recherche de fichier
Commande Description
find / -name file1 cherche un fichier ou un répertoire nommé file1
à l'intérieur du système depuis '/'
find / -user user1 cherche des fichiers ou des répertoires
appartenant à 'user1'
find /home/user1 -name *.bin cherche des fichiers ou des répertoires avec
l'extension '.bin' à l'intérieur du répertoire
'/home/user1'
find /usr/bin -type f -atime +100 cherche des fichiers dans '/usr/bin' qui ne sont
pas utilisés depuis plus de 100 jours
find /usr/bin -type f -mtime -10 cherche des fichiers créés ou changés depuis 10
jours
find / -name *.rpm -exec chmod 755 '{}' ; cherche des fichiers avec l'extension '.rpm' et
modifie leurs permissions
find / -xdev -name *.rpm cherche des fichiers avec l'extension '.rpm' en
ignorant les partitions amovibles comme les cd-
rom, clé, etc...
locate *.ps trouve des fichiers avec l'extension '.ps' - en
premier lancer la commande 'updatedb'
whereis halt affiche l'emplacement des fichiers binaires,
source ou man
which halt affiche le chemin complet des binaires /
exécutables
Montage de système de fichiers
Commande Description
fuser -km /mnt/hda2 force le démontage quand le périphérique est
occupé
mount /dev/hda2 /mnt/hda2 monte un disque nommé hda2 - vérifie
l'existence du répertoire '/mnt/hda2'
mount /dev/fd0 /mnt/floppy monte un lecteur de disquettes
mount /dev/cdrom /mnt/cdrom monte un cdrom / dvdrom
mount /dev/hdc /mnt/cdrecorder monte un cdrw / dvdrom
mount /dev/hdb /mnt/cdrecorder monte un cdrw / dvdrom
mount -o loop file.iso /mnt/cdrom monte une image d'un fichier iso
mount -t vfat /dev/hda5 /mnt/hda5 monte un système de fichiers Windows FAT32
mount /dev/sda1 /mnt/usbdisk monte une clé usb ou un lecteur mémoire flash
mount /dev/sda1 /mnt/usbdisk monte une clé usb ou un lecteur mémoire flash
mount -t smbfs -o
username=user,password=pass
//WinClient/share /mnt/share
monte un partage réseau Windows
umount /dev/hda2 démonte un disque appelé hda2 - d'abord sortie
du point de montage '/mnt/hda2'
umount -n /mnt/hda2 lance le démontage sans l'écriture du fichier
/etc/mtab - Utile quand le fichier est en lecture
4. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page
seule ou que le disque dur est plein
Espace Disque
Commande Description
df -h affiche la liste des partitions montées et leur
espace libre
dpkg-query -W -f='${Installed-
Size;10}t${Package}n' | sort -k1,1n
affiche l'espace utilisé par le paquets deb
installés, triés par taille (debian, ubuntu, et
autres)
du -sh dir1 estime l'espace disque utilisé par le répertoire
'dir1'
du -sk * | sort -rn affiche la taille des fichiers et des répertoires
triés par taille
ls -lSr |more affiche la taille des fichiers et des répertoires
ordonnés par taille
rpm -q -a --qf '%10{SIZE}t%{NAME}n' |
sort -k1,1n
affiche l'espace utilisé par les paquets rpm
installés triés par taille (fedor, redhat, et
identiques)
Utilisateurs et Groupes
Commande Description
chage -E 2020-12-31 user1 fixe une date limite du mot de passe de
l'utilisateur 'user1'
groupadd [group] crée un nouveau groupe
groupdel [group] supprime un groupe
groupmod -n moon sun renomme le groupe moon en groupe sun
grpck teste la syntaxe correcte et le format du fichier
'/etc/group' et l'existence des groupes
newgrp - [group] connexion à un nouveau groupe pour changer le
groupe par défaut des fichiers récemment créés
passwd change le mot de passe
passwd user1 change le mot de passe d'un utilisateur 'user1'
(seulement par root)
pwck teste la syntaxe correcte et le format du fichier
'/etc/passwd' et l'existence des utilisateurs
useradd -c rée un nouvel utilisateur "user1" appartenant au
groupe "admin"
useradd user1 crée un nouvel utilisateur
userdel -r user1 supprime un utilisateur ('-r' élimine son
répertoire home)
usermod -c change les attributs d'un utilisateur
Permissions sur les Fichiers
5. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page
Command Description
chgrp group1 file1 change le groupe du fichier 'file1'
chmod ugo+rwx directory1 fixe sur le répertoire 'directory1' les permissions
de lecture (r), écriture (w) et d'accès (x) aux
utilisateurs propriétaires (u) groupe (g) et autres
(o)
chmod go-rwx directory1 enlève sur le répertoire 'directory1' les
permissions de lecture (r), écriture (w) et d'accès
(x) aux utilisateurs groupe (g) et autres (o)
chmod u+s /bin/file1 fixe l'octet SUID sur un fichier binaire -
l'utilisateur qui lance ce fichier prend les mêmes
privilèges que le propriétaire
chmod u-s /bin/file1 ôte l'octet SUID sur un fichier binaire
chmod g+s /home/public fixe l'octet SGID sur un répertoire - similaire à
un SUID mais pour un répertoire
chmod g-s /home/public désactive l'octet SGID sur un répertoire
chmod o+t /home/public fixe l'octet STIKY sur un répertoire - permet la
suppression de fichiers seulement aux
propriétaires légitimes
chmod o-t /home/public désactive l'octet STIKY sur un répertoire
chmod o-t /home/public désactive l'octet STIKY sur un répertoire
chown user1 file1 change le propriétaire d'un ficher
chown user1:group1 file1 change l'utilisateur et le groupe de la propriété
d'un fichier
find / -perm -u+s voir tous les fichiers sur le système avec le
SUID configuré
ls -lh affiche les permissions des fichiers
ls /tmp | pr -T5 -W$COLUMNS divise le terminal en 5 colonnes
chown -R user1 directory1 change l'utilisateur propriétaire d'un répertoire et
de tous les fichiers et répertoires qui y sont
contenus
Attributs Spéciaux sur les Fichies
Commande Description
chattr +a file1 permet d'ouvrir un fichier en écriture seulement
en mode ajout
chattr +c file1 permet que ce fichier soit compressé /
décompressé automatiquement par le noyau
chattr +d file1 assure que le programme ignore les fichiers
Dump pendant la sauvegarde
chattr +i file1 assure que le fichier est immuable, lequel ne
peut être supprimé, altéré, renommé ou lié
chattr +s file1 permet au fichier d'être supprimé en toute
sécurité
chattr +S file1 assure que si le fichier est modifié les
changements sont écrits en mode asynchrone
avec sync
6. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page
chattr +u file1 vous permet de récupérer les contenus d'un
fichier même s'il a été supprimé
lsattr affiche les attributs spéciaux
Archives et fichiers compressés
Commande Description
bunzip2 file1.bz2 décompresse un fichier nommé 'file1.bz2'
bzip2 file1 compresse un fichier nommé 'file1'
gunzip file1.gz décompresse un fichier nommé 'file1.gz'
gzip file1 compresse un fichier nommé 'file1'
gzip -9 file1 compresse avec un maximum de compression
rar a file1.rar test_file crée une archive rar nommée 'file1.rar du fichier
test_file
rar a file1.rar file1 file2 dir1 compresse 'file1', 'file2' et 'dir1' simultanément
rar x file1.rar décompresse une archive rar
tar -cvf archive.tar file1 crée un tarball non compressé
tar -cvf archive.tar file1 file2 dir1 crée une archive contenant 'file1', 'file2' et 'dir1'
tar -tf archive.tar affiche le contenu d'une archive
tar -xvf archive.tar extrait un tarball
tar -xvf archive.tar -C /tmp extrait un tarball dans /tmp
tar -cvfj archive.tar.bz2 dir1 crée un tarball compressé dans bzip2
tar -xvfj archive.tar.bz2 décompresse une archive tar dans bzip2
tar -cvfz archive.tar.gz dir1 crée un tarball compressé dans gzip
tar -xvfz archive.tar.gz décompresse une archive compressée tar dans
gzip
unrar x file1.rar décompresse une archive rar
unzip file1.zip décompresse une archive zip
zip file1.zip file1 crée une archive compressée en zip
zip -r file1.zip file1 file2 dir1 compresse en zip plusieurs fichiers et répertoires
simultanément
Paquets RPM ( Redhat, Fedora et autres)
Commande Description
rpm -ivh [package.rpm] installe un paquet rpm
rpm -ivh --nodeeps [package.rpm] installe un paquet rpm en ignorant les requêtes
de dépendance
rpm -U [package.rpm] met à jour un paquet rpm sans changer les
fichiers de configuration
rpm -F [package.rpm] met à jour un paquet rpm seulement s'il est déjà
installé
rpm -e [package] supprime un paquet rpm
rpm -qa affiche tous les paquets rpm installés sur le
système
rpm -qa | grep httpd affiche tous les paquets avec le nom contenant
7. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page
"httpd"
rpm -qi [package] obtient les informations d'un paquet spécifique
installé
rpm -qg affiche les paquets rpm d'un groupe de
programme
rpm -ql [package] affiche la liste des fichiers produits par un
paquet installé
rpm -qc [package] affiche la liste des fichiers de configuration
produits par un paquet rpm installé
rpm -q [package] --whatrequires affiche la liste des dépendances requises pour un
paquet rpm
rpm -q [package] --whatprovides affiche les possibilités fournies par un paquet
rpm
rpm -q [package] --scripts affiche les scripts lancés pendant l'installation et
la suppression
rpm -q [package] --changelog affiche l'historique des révisions d'un paquet
rpm
rpm -qf /etc/httpd/conf/httpd.conf vérifie à quel paquet rpm appartient un fichier
donné
rpm -qp [package.rpm] -l affiche la liste produite par un paquet rpm non
installé
rpm --import /media/cdrom/RPM-GPG-
KEY
importe la signature digitale clé-publique
rpm --checksig [package.rpm] vérifie l'intégrité d'un paquet rpm
rpm -qa gpg-pubkey vérifie l'intégrité de tous les paquets rpm
installés
rpm -V [package] teste la taille du fichier, les permissions, le type,
le propriétaire, le groupe, la somme de contrôle
MD5 et la dernière modification
rpm -Va teste tous les paquets rpm installés sur le
système - à utiliser avec précaution
rpm -Vp [package.rpm] vérifie un paquet rpm non encore installé
rpm -ivh
/usr/src/redhat/RPMS/`arch`/[package.rpm]
installe un paquet construit à partir de la source
du rpm
rpm2cpio [package.rpm] | cpio --extract --
make-directories *bin*
extrait le fichier exécutable d'un paquet rpm
rpmbuild --rebuild [package.src.rpm] construit un paquet rpm depuis la source rpm
Utilitaire de paquets YUM (Fedora, RedHat et autres)
Commande Description
yum -y install [package] télécharge et installe un paquet rpm
yum localinstall [package.rpm] cela installera un RPM, et tentera de résoudre
toutes les dépendance pour vous en utilisant
votre dépôt
8. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page
yum -y update met à jour tous les paquets rpm installés sur le
système
yum update [package] met à jour un paquet rpm
yum remove [package] enlève un paquet rpm
yum list liste tous les paquets installés sur le système
yum search [package] trouve le paquet sur le dépôt rpm
yum clean [package] nettoie le cache rpm et supprimant les paquets
téléchargés
yum clean headers supprime toutes les entêtes des fichiers que le
système utilise pour résoudre les dépendances
yum clean all supprime le cache des paquets et les entêtes des
fichiers
Paquets DEB (Debian, Ubuntu et autres)
Commande Description
dpkg --contents [package.deb] affiche la liste des fichiers fournis par un paquet
non encore installé
dpkg -i [package.deb] installe ou met à jour un paquet deb
dpkg -l affiche tous les paquets deb installés sur le
système
dpkg -l | grep httpd affiche tous les paquets deb contenant le mot
"httpd"
dpkg -L [package] affiche la liste des fichiers fournis par un paquet
installé sur le système
dpkg -r [package] supprime un paquet deb du système
dpkg -S /bin/ping vérifie à quel paquet appartient un fichier donné
dpkg -s [package] obtient l'information d'un paquet spécifique
installé sur le système
Utilitaire Paquets APT (Debian, Ubuntu et autres)
Commande Description
apt-cache search [package] retourne la liste de paquets qui correspond à la
chaîne de caractères "package"
apt-cdrom add ajoute un CD-ROM à la liste de dépôts
apt-cdrom install [package] installe ou met à jour un paquet deb depuis un
cd-rom
apt-get autoremove enlève tous les packages plus nécessaires
apt-get check vérifie que la résolution des dépendances soit
correcte
apt-get clean nettoie le cache des paquets téléchargés
apt-get install [package] installe ou met à jour un paquet deb
apt-get remove [package] supprime un paquet deb du système
apt-get update met à jour la liste des paquets
apt-get upgrade met à jour tous les paquets installés
9. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page
Utilitaire Paquets Pacman (Arch, Frugalware et autres)
Commande Description
pacman -R name supprime le paquet 'name' et tous les fichiers qui
vont avec
pacman -S name installe le paquet 'name' avec ses dépendances
Voir le contenu d'un fichier
Commande Description
cat file1 voit le contenu d'un fichier depuis la première
ligne
head -2 file1 voit les deux premières lignes d'un fichier
less file1 similaire à la commande 'more' mais permet les
mouvements avancer et reculer dans le fichier
more file1 voit le contenu d'un fichier page par page
nano file1 affiche le contenu de file1
tac file1 voit le contenu d'un fichier en commençant par
la dernière ligne
tail -2 file1 voit les deux dernières lignes d'un fichier
tail -f /var/log/messages vue en temps réel de ce qui est ajouté au fichier
vim file1 affiche le contenu de file1
Manipulation de Texte
Commande Description
cat example.txt | awk 'NR%2==1' enlève toutes les lignes identiques de
example.txt
echo a b c | awk '{print $1}' voit la première colonne d'une ligne
echo a b c | awk '{print $1,$3}' voit la première et la troisième colonne d'une
ligne
cat -n file1 affiche le fichier file1 avec un numéro sur
chaque ligne
comm -1 file1 file2 compare les contenus de deux fichiers par
suppression des lignes uniques du 'file1'
comm -2 file1 file2 compare les contenus de deux fichiers par
suppression des lignes uniques du 'file2'
comm -3 file1 file2 compare les contenus de deux fichiers par
suppression des lignes uniques des deux fichiers
comm -12 file1 file2 compare les deux fichiers et affiche les lignes
unique aux deux
diff file1 file2 trouve les différences entre deux fichiers
grep Aug /var/log/messages cherche le mot "Aug" dans le fichier
'/var/log/messages'
grep ^Aug /var/log/messages cherche les mots qui commencent par "Aug"
dans le fichier '/var/log/messages'
grep tion$ /var/log/messages cherche les lignes se terminant par 'tion' dans
10. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page 10
/var/log/messages
grep Aug -R /var/log/* cherche la chaîne de caractères "Aug" dans le
répertoire '/var/log' et en dessous
paste file1 file2 fusionne les contenus des deux fichiers en
colonnes
paste -d '+' file1 file2 fusionne les contenus des deux fichiers en deux
colonnes avec le délimiteur '+' au centre
sdiff file1 file2 trouve les différences entre deux fichiers et
ajoute interactivement de façon semblable à
"diff"
sed 's/string1/string2/g' example.txt remplace "string1" par "string2" dans
example.txt
sed '/^$/d' example.txt enlève toutes les lignes vides dans example.txt
sed '/ *#/d; /^$/d' example.txt enlève les commentaires et les lignes vides dans
example.txt
sed -e '1d' exampe.txt élimine la première ligne du fichier example.txt
sed -n '/string1/p' vue seulement des lignes qui contiennent le mot
"string1"
sed -e 's/ *$//' example.txt supprime les caractères vides à la fin de chaque
ligne
sed -e 's/string1//g' example.txt supprime seulement le mot "string1" du texte et
laisse le reste intact
sed -n '1,5p' example.txt imprime de la première à la cinquième ligne du
fichier example.txt
sed -n '5p;5q' example.txt imprime la ligne numéro 5 du fichier
example.txt
sed -e 's/00*/0/g' example.txt remplace les séries de 0 par un seul zéro
sort file1 file2 classe les contenus des deux fichiers
sort file1 file2 | uniq classe les contenus des deux fichiers en omettant
les lignes répétées
sort file1 file2 | uniq -u classe les contenus des deux fichiers par la vue
seulement de ligne unique
sort file1 file2 | uniq -d classe les contenus des deux fichiers par la vue
seulement de ligne dupliquée
echo 'word' | tr '[:lower:]' '[:upper:]' convertit la casse minuscule en casse majuscule
Fixer les caractères et Format de conversion de fichier
Commande Description
dos2unix filedos.txt fileunix.txt convertit un fichier texte au format MSDOS au
format UNIX
recode ..HTML < page.txt > page.html convertit un fichier texte en html
recode -l | more affiche tous les formats disponibles de
conversion
unix2dos fileunix.txt filedos.txt convertit un fichier texte au format UNIX au
format MSDOS
Analyse de système de fichiers
11. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page 11
Commande Description
badblocks -v /dev/hda1 teste les mauvais blocs sur le disque hda1
dosfsck /dev/hda1 répare / teste l'intégrité d'un système de fichiers
dos sur le disque hda1
e2fsck /dev/hda1 répare / teste l'intégrité d'un système de fichiers
ext2 sur le disque hda1
e2fsck -j /dev/hda1 répare / teste l'intégrité d'un système de fichiers
ext3 sur le disque hda1
fsck /dev/hda1 répare / teste l'intégrité d'un système de fichiers
linux sur le disque hda1
fsck.ext2 /dev/hda1 répare / teste l'intégrité d'un système de fichiers
ext2 sur le disque hda1
fsck.ext3 /dev/hda1 répare / teste l'intégrité d'un système de fichiers
ext3 sur le disque hda1
fsck.msdos /dev/hda1 répare / teste l'intégrité d'un système de fichiers
dos sur le disque hda1
fsck.vfat /dev/hda1 répare / teste l'intégrité d'un système de fichiers
fat sur le disque hda1
Formater un système de fichiers
Commande Description
fdformat -n /dev/fd0 formate une disquette
mke2fs /dev/hda1 crée un système de fichiers de type linux ext2
sur la partition hda1
mke2fs -j /dev/hda1 rée un système de fichiers de type linux ext3
(journal) sur la partition hda1
mkfs /dev/hda1 crée un système de fichiers de type linux sur la
partition hda1
mkfs -t vfat 32 -F /dev/hda1 crée un système de fichiers FAT32
mkswap /dev/hda3 crée un système de fichiers swap
système de fichiers SWAP
Commande Description
mkswap /dev/hda3 crée un système de fichiers swap
swapoff /dev/hda3 désactivation d'une partition swap
swapon /dev/hda2 /dev/hdb3 active deux partitions swap
swapon /dev/hda3 activation d'une nouvelle partition swap
Sauvegarde
Commande Description
( cd /tmp/local/ && tar c . ) | ssh -C
user@ip_addr 'cd /home/share/ && tar x -p'
copie le contenu d'un répertoire sur un répertoire
distant via ssh
dd bs=1M if=/dev/hda | gzip | ssh
user@ip_addr 'dd of=hda.gz'
fabrique une sauvegarde d'un disque dur local
sur un hôte distant via ssh
dd if=/dev/fd0 of=/dev/hda bs=512 count=1 restaure le MBR d'une copie de sauvegardée sur
12. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page 12
une disquette
dd if=/dev/hda of=/dev/fd0 bs=512 count=1 crée une copie du MBR sur une disquette
dd if=/dev/sda of=/tmp/file1 sauvegarde le contenu d'un disque dur dans un
fichier
dump -0aj -f /tmp/home0.bak /home fabrique une sauvegarde complète du répertoire
'/home'
dump -1aj -f /tmp/home0.bak /home fabrique une sauvegarde incrémentielle
(différentielle) du répertoire '/home'
find /home/user1 -name '*.txt' | xargs cp -av -
-target-directory=/home/backup/ --parents
trouve et copie tous les fichiers avec l'extension
'.txt' d'un répertoire à un autre
find /var/log -name '*.log' | tar cv --files-
from=- | bzip2 > log.tar.bz2
trouve tous les fichiers avec l'extension '.log' et
fabrique une archive en bzip
restore -if /tmp/home0.bak restaure une sauvegarde interactivement
rsync -az -e ssh --delete ip_addr:/home/public
/home/local
synchronise un répertoire local avec un
répertoire distant via ssh et compression
rsync -rogpav --delete /home /tmp synchronisation entre répertoires
rsync -rogpav -e ssh --delete /home
ip_address:/tmp
synchronisation via un tunnel SSH
sync -az -e ssh --delete /home/local
ip_addr:/home/public
synchronise un répertoire distant avec un
répertoire local via ssh et compression
tar cf - . | (cd /tmp/backup ; tar xf - ) copie locale en préservant les permissions et les
liens d'un répertoire vers un autre
( tar c /home ) | ssh -C user@ip_addr 'cd
/home/backup-home && tar x -p'
copie un répertoire local sur un répertoire distant
via ssh
tar -Puf backup.tar /home/user fabrique une sauvegarde incrémentielle du
répertoire '/home/user'
CDROM
Commande Description
cdparanoia -B ripe les pistes audio d'un CD en fichiers wav
cdparanoia -- ripe les trois premières pistes audio d'un CD en
fichiers wav
cdrecord -v gracetime=2 dev=/dev/cdrom -
eject blank=fast -force
efface un cdrom ré-inscriptible
cdrecord -v dev=/dev/cdrom cd.iso grave un cdrom à partir d'une image iso
gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom
-
grave un cdrom à partir d'une image iso
compressée
cdrecord --scanbus scanne le bus pour identifier le canal scsi
dd if=/dev/hdc | md5sum fabrique une somme de contrôle md5sum d'un
périphérique, comme un CD
mkisofs /dev/cdrom > cd.iso crée une image iso d'un cdrom sur un disque
mkisofs /dev/cdrom | gzip > cd_iso.gz crée une image iso compressée d'un cdrom sur
un disque
mkisofs -J -allow-leading-dots -R -V crée une image iso d'un répertoire
mount -o loop cd.iso /mnt/iso monte une image iso
Réseau (LAN / WiFi)
13. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page 13
Commande Description
dhclient eth0 active l'interface réseau 'eth0' en mode dhcp
echo active le routage ip
ethtool eth0 consulte le hostname pour résoudre le nom en
adresse ip et vice versa
hostname affiche le hostname du système
ifconfig eth0 affiche la configuration Ethernet de la carte
réseau eth0
ifconfig eth0 192.168.1.1 netmask
255.255.255.0
configure l'adresse IP et le masque de eth0
ifconfig eth0 promisc configure 'eth0' en mode confus pour rassembler
des paquets (sniffing)
ifdown eth0 désactive l'interface 'eth0'
ifup eth0 active l'interface 'eth0'
ip link show affiche le statut du lien de toutes les interfaces
réseau
iwconfig eth1 affiche les réseaux sans fil
iwlist scan scanne le wifi pour afficher les connections sans
fil disponibles
mii-tool eth0 affiche les statuts des liens 'eth0'
netstat -rn montre la table de routage de façon semblable à
"route -n"
netstat -tup affiche toutes les connections actives et leur PID
netstat -tupl affiche tous les services réseau écoutés sur le
système et leur PID
nslookup www.example.com consulte le hostname pour résoudre le nom en
adresse ip et vice versa
route add -net 0/0 gw IP_Gateway configure la passerelle par défaut
route add -net 192.168.0.0 netmask
255.255.0.0 gw 192.168.1.1
configure la route statique pour l'étendue réseau
'192.168.0.0/16'
route del 0/0 gw IP_gateway enlève la route statique
route -n affiche la table de routage
tcpdump tcp port 80 affiche tous les trafics http
whois www.example.com consulte la base de donnée whois
Réseau Microsoft Windows (samba)
Commande Description
mount -t smbfs -o
username=user,password=pass
//WinClient/share /mnt/share
monte un partage réseau Windows
nbtscan ip_addr résolution de nom netbios
nmblookup -A ip_addr résolution de nom netbios
smbclient -L ip_addr/hostname affiche les partages distants d'un hôte windows
smbget -Rr smb://ip_addr/share comme wget peut télécharger des fichiers depuis
un hôte windows via smb
14. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page 14
IPTABLES (firewall)
Commande Description
iptables -t filter -A FORWARD -p tcp --dport
pop3 -j ACCEPT
autorise les connexions POP3 aux chaînes
avancées
iptables -t filter -A INPUT -j LOG --log-
prefix
connexion sur la chaîne d'entrée
iptables -t filter -A INPUT -p tcp --dport
telnet -j ACCEPT
autorise les connexions telnet en entrée
iptables -t filter -A OUTPUT -p tcp --dport
http -j DROP
bloque les connexions http en sortie
iptables -t filter -F efface toutes les règles de la table de filtrage
iptables -t filter -L affiche toutes les chaînes de la table de filtrage
iptables -t filter -X supprime toutes les chaînes crées par un
utilisateur
iptables -t nat -A POSTROUTING -o eth0 -j
MASQUERADE
configure un PAT (Port Address Translation) sur
eth0 en masquant les paquets sortants
iptables -t nat -A PREROUTING -d
192.168.0.1 -p tcp -m tcp --dport 22 -j DNAT -
-to-destination 10.0.0.2:22
redirige les paquets adressés d'un hôte à un autre
hôte
iptables -t nat -F efface toutes les règles de la table nat
iptables -t nat -L affiche toutes les chaînes de la table nat
Surveillance et debugage
Commande Description
free -m affiche les statuts de la RAM en mégaoctets
kill -1 process_id force un processus à recharger sa configuration
kill -9 process_id force la fermeture d'un processus et le termine
last reboot affiche l'historique du redémarrage
lsmod affiche les modules du kernel chargés
lsof /home/user1 affiche la liste des fichiers ouverts sur un chemin
donné
lsof -p process_id affiche la liste des fichiers ouverts par le
processus
ps -eafw affiche les tâches linux
ps -e -o pid,args --forest affiche les tâches linux dans un mode
hiérarchique
pstree montre les processus du système sous forme
d'arborescence
smartctl -A /dev/hda surveille avec précision un disque dur à travers
SMART
15. Document libre Consultez sonzahi.blogspot.com
Visitez http://www.sonzahi.blogspot.com Page 15
smartctl -i /dev/hda teste si SMART est actif sur un disque dur
strace -c ls >/dev/null affiche les appels système venant et reçus par un
processus
strace -f -e open ls >/dev/null affiche la bibliothèque des appels
tail /var/log/dmesg affiche les évènements inhérents aux processus
de démarrage du kernel
tail /var/log/messages affiche les évènements système
top affiche les tâches linux qui utilisent le plus le
CPU
watch -n1 'cat /proc/interrupts' affiche les interruptions en temps réel
Autres commandes utiles
Commande Description
alias hh='history' fixe un alias pour la commande hh = history
apropos ...keyword affiche la liste des commandes qui contient le
mot-clé d'un programme, utile quand vous savez
ce que la programme doit faire, mais que vous
n'en connaissez pas le nom de la commande
chsh commande de changement de shell
chsh --list-shells jolie commande pour savoir si vous avez une
connexion distante dans une autre boite
echo 'wget -c www.example.com/files.iso' | at
09:00
programme un téléchargement à une heure
donnée
gpg -c file1 crypte un fichier avec GNU Privacy Guard
gpg file1.gpg décrypte un fichier avec GNU Privacy Guard
ldd /usr/bin/ssh affiche les librairies partagées requises par le
programme ssh
man ping affiche les pages d'aide en ligne par exemple la
commande ping - utiliser l'option '-k' pour
trouver les commandes en relation
mkbootdisk --device /dev/fd0 `uname -r` crée une disquette bootable
wget -c www.example.com/file.iso télécharge un fichier avec la possibilité d'arrêter
le téléchargement et le reprendre plus tard
wget -r www.example.com télécharge entièrement le site web
whatis ...keyword affiche la description de ce que le programme
fait
who -a affiche qui est connecté, et imprime : l'heure du
dernier redémarrage, les processus morts, les
processus de connexion système, les Processus
actifs générés par init, le runlevel courant, le
dernier changement de l'horloge système
Je remercie du fond du cœur M. Pascal Uriel ELINGUI, pour son grand esprit de partage.