Commandes UNIX - Linux les plus utiles

publicité
Commandes
UNIX - Linux
les plus utiles
Version 0.2
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
Novembre 2006
Commandes UNIX - Linux les plus utiles
Table des matières
Répertoires et fichiers...........................................................................................3
ls.................................................................................................................3
cp................................................................................................................4
mv...............................................................................................................5
rm................................................................................................................5
cd................................................................................................................6
mkdir............................................................................................................6
rmdir............................................................................................................6
ln.................................................................................................................6
find..............................................................................................................7
grep..............................................................................................................9
cut...............................................................................................................9
sed...............................................................................................................9
xargs.............................................................................................................9
tee...............................................................................................................9
awk..............................................................................................................9
chmod...........................................................................................................9
chown...........................................................................................................9
chgrp...........................................................................................................10
variables d'environnement..................................................................................10
redirections - pipes..........................................................................................10
Processus..........................................................................................................10
ps...............................................................................................................10
pstree..........................................................................................................12
pidof...........................................................................................................14
kill..............................................................................................................14
uptime.........................................................................................................14
w................................................................................................................14
who ............................................................................................................15
nice et renice.................................................................................................15
nohup..........................................................................................................15
fg ..............................................................................................................15
bg...............................................................................................................15
jobs.............................................................................................................15
at ..............................................................................................................16
crontab........................................................................................................16
gkrellm.........................................................................................................17
ksysguard......................................................................................................18
top..............................................................................................................18
Services...........................................................................................................19
service.........................................................................................................19
chkconfig......................................................................................................20
ntsysv..........................................................................................................20
system-config-services......................................................................................21
Mémoire...........................................................................................................21
free.............................................................................................................21
vmstat.........................................................................................................21
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 2 de 27
Commandes UNIX - Linux les plus utiles
Réseau.............................................................................................................21
ifconfig........................................................................................................22
route...........................................................................................................22
ping.............................................................................................................22
arp..............................................................................................................22
ethtool.........................................................................................................22
/usr/bin/python /usr/bin/system-control-network.....................................................23
system-config-network ou neat............................................................................24
system-logviewer.............................................................................................25
Divers..............................................................................................................26
uname..........................................................................................................26
Répertoires et fichiers
ls
Liste sur la sortie standard le contenu d’un répertoire.
[cours@mars ~]$ ls
bin data1
[cours@mars ~]$
Quelques options :
-l
Utilise un format d'affichage long.
[cours@mars ~]$ ls -l
total 8
drwxrwxr-x 2 cours cours 4096 Apr 16 10:05 bin
-rw-rw-r-- 1 cours cours
24 Apr 16 10:06 data1
[cours@mars ~]$
Une ligne est affichée par fichier/répertoire. Le premier caractère de chaque ligne indique le type
de fichier (- pour un fichier normal, d pour un répertoire, l pour un lien, c pour un fichier spécial
« caractère », b pour un fichier spécial « bloc »). Les trois caractères suivants indiquent les
permissions pour le propriétaire, les trois suivants les permissions pour le groupe propriétaire et
les trois derniers, les permissions pour les autres utilisateurs. Chaque groupe de trois caractères se
décompose comme suit : le premier indique la permission de lecture, représentée par la lettre r si
elle est attribuée et par un tiret si elle ne l’est pas; le deuxième indique la permission d’écriture,
représentée par la lettre w si elle est attribuée et par un tiret si elle ne l’est pas; le troisième
indique la permission d’exécuter les fichiers ou de faire du répertoire indiqué le répertoire
courant; cette permission est représenté par la lettre x si elle est attribuée et par un tiret si elle
ne l’est pas.
Après les permissions, est affiché pour un répertoire, le nombre de sous-répertoires. Ensuite, sont
affichés l’utilisateur et le groupe propriétaire puis la taille du fichier et la date de la dernière
modification suivie du nom du fichier.
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 3 de 27
Commandes UNIX - Linux les plus utiles
-d
Liste l’entrée d’un répertoire au lieu de son contenu.
-i
Cf. -l mais liste le numéro d’inode.
-t
Trie par date/heure de modification.
-x
Liste les entrées en ligne et non en colonne.
-R
Liste les sous-répertoires récursivement.
-a
Liste les fichiers cachés (qui commencent par un .)
[cours@mars ~]$ ls -a
.
.bashrc
..
bin
.bash_history .canna
.bash_logout
data1
.bash_profile .emacs
.evolution
.gconf
.gconfd
.gnome2
.gnome2_private
.gtkrc
.kde
.lesshst
projet1
.rh-fontconfig
temp5305
.xauthkGmJpi
.xemacs
.zshrc
cp
Copie de fichiers et de répertoires
[cours@mars
bin data1
[cours@mars
[cours@mars
bin data1
[cours@mars
~]$ ls
~]$ cp data1 data2
~]$ ls
data2
~]$
Options :
-f ou --force
Si la destination ne peut être ouverte, la supprime et la remplace.
-p
Préserve le mode, les propriétaires et les dates.
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 4 de 27
Commandes UNIX - Linux les plus utiles
-R ou -r ou –-recursive
Copie les répertoires récursivement.
-v
Verbose
-u
N’effectue pas la copie pas si la destination (autre qu’un répertoire) a une date de modification
identique ou plus récente.
mv
Renomme la source ou déplace la source vers un répertoire.
[cours@mars ~]$ ls -l
total 8
drwxrwxr-x 2 cours cours 4096 Apr 18 20:58 bin
-rw-rw-r-- 1 cours cours
24 Apr 16 10:06 data1
-rw-rw-r-- 1 cours cours
0 Apr 18 14:06 temp5305
[cours@mars ~]$ mv data1 data2
[cours@mars ~]$ ls
bin data2 temp5305
[cours@mars ~]$ mv data2 bin
[cours@mars ~]$ ls
bin temp5305
[cours@mars ~]$ ls bin
data2
[cours@mars ~]$
rm
Supprime des fichiers ou des répertoires.
-f
Force
-r ou -R
Récursif
[cours@mars ~]$ ls
total 12
drwxrwxr-x 2 cours
-rw-rw-r-- 1 cours
drwxrwxr-x 2 cours
-rw-rw-r-- 1 cours
-l
cours 4096 Apr 18 20:58
cours
24 Apr 16 10:06
cours 4096 Apr 19 18:28
cours
0 Apr 18 14:06
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
bin
data1
projet1
temp5305
Page 5 de 27
Commandes UNIX - Linux les plus utiles
[cours@mars ~]$ rm
[cours@mars ~]$ ls
total 8
drwxrwxr-x 2 cours
-rw-rw-r-- 1 cours
-rw-rw-r-- 1 cours
[cours@mars ~]$
-rf projet1/
-l
cours 4096 Apr 18 20:58 bin
cours
24 Apr 16 10:06 data1
cours
0 Apr 18 14:06 temp5305
cd
Change le répertoire courant.
Chemin relatif -> par rapport à un répertoire existant
Chemin absolu -> par rapport au répertoire racine (/)
[cours@mars
[cours@mars
[cours@mars
[cours@mars
[cours@mars
1.
2.
3.
4.
~]$ cd bin
bin]$ cd
~]$ cd /etc
etc]$ cd httpd
httpd]$
Le répertoire courant devient /home/cours/bin (utilisation d’un chemin relatif)
Le répertoire courant redevient /home/cours
Le répertoire courant devient /etc (utilisation d’un chemin absolu)
Le répertoire courant de /etc/httpd (utilisation d’un chemin relatif)
Remarque : La variable $HOME contient le répertoire personnel de l’utilisateur.
mkdir
Crée un répertoire
rmdir
Supprime un répertoire non vide
ln
Crée des liens entre des fichiers. Les liens peuvent être soit physiques, soit symboliques. Un lien
physique revient à ajouter un nouveau nouveau nom à un fichier. Ils ne s’appliquent qu’aux
fichiers (pas aux répertoires) et ne peuvent exister que dans le même système de fichiers. Un lien
symbolique est une référence vers le fichier ou le répertoire vers lequel il pointe. L’affichage d’un
lien symbolique permet de permet de voir l’objet pointé.
Exemples :
[cours@mars ~]$ ls
total 8
drwxrwxr-x 2 cours
-rw-rw-r-- 1 cours
-rw-rw-r-- 1 cours
-l
cours 4096 Apr 18 20:58 bin
cours
24 Apr 16 10:06 data1
cours
0 Apr 18 14:06 temp5305
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 6 de 27
Commandes UNIX - Linux les plus utiles
[cours@mars ~]$ ln
[cours@mars ~]$ ls
total 12
drwxrwxr-x 2 cours
-rw-rw-r-- 2 cours
-rw-rw-r-- 2 cours
-rw-rw-r-- 1 cours
[cours@mars ~]$ ln
[cours@mars ~]$ ls
total 12
drwxrwxr-x 2 cours
-rw-rw-r-- 2 cours
-rw-rw-r-- 2 cours
lrwxrwxrwx 1 cours
-rw-rw-r-- 1 cours
[cours@mars ~]$ rm
[cours@mars ~]$ ls
total 12
drwxrwxr-x 2 cours
-rw-rw-r-- 2 cours
-rw-rw-r-- 2 cours
-rw-rw-r-- 1 cours
[cours@mars ~]$
data1 data2
-l
cours 4096 Apr
cours
24 Apr
cours
24 Apr
cours
0 Apr
-s data1 data3
-l
18
16
16
18
20:58
10:06
10:06
14:06
bin
data1
data2
temp5305
cours 4096 Apr 18 20:58 bin
cours
24 Apr 16 10:06 data1
cours
24 Apr 16 10:06 data2
cours
5 Apr 22 08:47 data3 -> data1
cours
0 Apr 18 14:06 temp5305
data3
-l
cours 4096 Apr 18 20:58
cours
24 Apr 16 10:06
cours
24 Apr 16 10:06
cours
0 Apr 18 14:06
bin
data1
data2
temp5305
find
Recherche des fichiers dans une arborescence de répertoires.
SYNOPSIS
find [-H] [-L] [-P] [path...] [expression]
Une expression peut être constituées d’options, de tests ou d’actions. Une option affecte le
comportement général plutôt que le traitement d’un fichier particulier. Un test retourne une
valeur vrai ou faux. Sous Linux -print est l’action par défaut.
[cours@mars ~]$ find $HOME -name "data*"
/home/cours/data2
/home/cours/data1
[cours@mars ~]$
Recherche dans l’arborescence $HOME les fichiers dont le nom commence par data et affiche sur
la sortie standard le chemin complet des fichiers trouvés.
-mtime
Recherche des fichiers par rapport à leur data de dernière modification.
[cours@mars ~]$ find $HOME -mtime -5
/home/cours
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 7 de 27
Commandes UNIX - Linux les plus utiles
/home/cours/.lesshst
/home/cours/.xauthfMgY3Q
/home/cours/.bash_history
/home/cours/temp5305
/home/cours/bin
Recherche dans l'arborescence $HOME les fichiers qui ont été modifiés il y a maximum 5 jours.
[cours@mars ~]$ find $HOME -mtime +2
Recherche dans l’arborescence $HOME les fichiers qui ont été modifiés il y a au moins 2 jours.
[cours@mars ~]$ find $HOME -mtime 2
Recherche dans l’arborescence $HOME les fichiers qui ont été modifiés il y a 2 jours.
-size n[cwbkMG]
Recherche les fichiers qui utilisent n unités d’espace. Les suffixes suivant peuvent être utilisés :
‘b’
pour des bloqus de 512 octets (Ceci est le défaut si aucun suffixe n’est utilisé).
‘c’
pour octet
‘w’
pour des mots de 2 octets
‘k’
pour kilo octets
‘M’
pour mega octets
‘G’
pour giga octets
-exec command ;
Exécute la commande. Tous les arguments suivant jusqu’au ; sont considérés comme des
arguments de la commande. La chaîne {} est remplacé par le nom de fichier qui est traité.
[cours@mars ~]$ ls -l
total 12
drwxrwxr-x 2 cours cours 4096 Apr 18 20:58 bin
-rw-rw-r-- 2 cours cours
24 Apr 16 10:06 data1
-rw-rw-r-- 2 cours cours
24 Apr 16 10:06 data2
-rw-rw-r-- 1 cours cours
0 Apr 18 14:06 temp5305
[cours@mars ~]$ find . -size 0c -exec rm {} \;
[cours@mars ~]$ ls -l
total 12
drwxrwxr-x 2 cours cours 4096 Apr 18 20:58 bin
-rw-rw-r-- 2 cours cours
24 Apr 16 10:06 data1
-rw-rw-r-- 2 cours cours
24 Apr 16 10:06 data2
[cours@mars ~]$
Supprime à partir du répertoire courant les fichiers ayant une taille de 0 octet.
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 8 de 27
Commandes UNIX - Linux les plus utiles
-print
Affiche sur la sortie standard le nom complet du fichier.
grep
Affiche les lignes correspondantes à un pattern.
SYNOPSIS
grep [options] PATTERN [FILE...]
cut
sed
sed (Stream EDitor) est un éditeur de texte non interactif (donc en ligne de commande). Il
applique un certain nombre de commandes à un fichier et affiche le résultat sur la sortie standard.
[esc@desmanlx ~]$ cat fichier
Eric Durant
[esc@desmanlx ~]$ sed -e 's/Durant/DURANT/g' fichier
Eric DURANT
[esc@desmanlx ~]$ sed -e 's/Durant/DURANT/g' -e 's/Eric
Durant/Monsieur Durant/' fichier
Eric DURANT
[esc@desmanlx ~]$
Les opérateurs \( et \) sauvent leur contenu. Les opérateurs \1 \2 ... \9 permettent de les
récupérer.
[esc@desmanlx ~]$ cat fichier
Eric Durant
[esc@desmanlx ~]$ sed -e 's/^\([A-Z][A-Za-z]*\)
z]*\)/\2 \1/' fichier
Durant Eric
[esc@desmanlx ~]$
\([A-Z][A-Za-
Remplacera les Nom Prénom en début de chaque ligne du fichier par Prénom Nom.
[esc@desmanlx ~]$ echo 'bonjour Eric Eric est parti parti ' | sed
's/\([a-zA-Z][a-zA-Z]*\) \1/\1/g'
Supprimera les mots en double.
Si de nombreuses commandes doivent être exécutées, elles peuvent être placées dans un fichier.
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 9 de 27
Commandes UNIX - Linux les plus utiles
# Fichier "exemple.sed"
# Il ne peut y avoir de commentaires que dans un bloc au début du
# fichier.
s/É/É/g
s/À/À/g
s/Ç/Ç/g
Pour utiliser ce fichier de commandes, il faut utiliser l'option -f
$ sed -f exemple.sed fichier
Le fichier de commandes peut être rendu exécutable
#!/usr/bin/sed -f
# Table de transcodage de ISO-8859-1 vers HTML
# Fichier "exemple2.sed"
s/É/É/g
s/À/À/g
s/Ç/Ç/g
$ chmod u+x exemple2.sed
$ ./exemple2.sed fichier
xargs
tee
awk
chmod
chown
chgrp
variables d'environnement
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 10 de 27
Commandes UNIX - Linux les plus utiles
redirections - pipes
Processus
Un processus est un programme qui s’exécute (tâche), il est créé par l’appel système fork(). Le
processus qui créé un nouveau processus est le processus parent et le processus créé est le
processus fils.
Un processus vit :
●
●
●
●
naissance -> fork()
vie -> exécution
mort -> kill ou fin
zombie
ps
[cours@mars ~]$ ps
PID TTY
TIME CMD
5305 pts/3
00:00:00 bash
5337 pts/3
00:00:00 ps
[cours@mars ~]$
PID : ID du processus
TTY : ID du terminal auquel le processus est associé
TIME : Le temps CPU en minute/seconde
CMD (ou COMMAND) : Le nom de la commande.
Remarque :
La variable $$ contient le PID du shell, et peut par exemple être utilisée pour créé des noms de
fichiers unique -> $ touch temp$$
[cours@mars ~]$ ps -ef
UID
PID PPID C
root
1
0 0
root
2
1 0
root
3
1 0
root
4
1 0
root
5
1 0
root
6
1 0
root
8
6 0
root
9
6 0
root
96
6 0
root
149
6 0
root
150
6 0
dbus
1785
1 0
root
1893
1 0
root
1907
1 0
root
1916
1 0
root
1925
1 0
root
1930
1 0
root
1942
1 0
root
1974
1 0
root
2227
1 0
STIME
09:40
09:40
09:40
09:40
09:40
09:40
09:40
09:40
09:40
09:40
09:40
09:41
09:41
09:41
09:41
09:41
09:41
09:41
09:41
09:42
TTY
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
tty1
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
TIME
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:01
00:00:00
00:00:00
CMD
init [5]
[ksoftirqd/0]
[watchdog/0]
[events/0]
[khelper]
[kthread]
[kblockd/0]
[kacpid]
[khubd]
[pdflush]
[pdflush]
dbus-daemon --system
/usr/sbin/automount --timeout=6
/usr/sbin/smartd
/usr/sbin/acpid
./hpiod
python ./hpssd.py
cupsd
/usr/sbin/sshd
/sbin/mingetty tty1
27/11/2006
Page 11 de 27
Commandes UNIX - Linux les plus utiles
root
root
root
root
root
root
esc
esc
esc
esc
68
68
esc
esc
esc
esc
esc
esc
esc
esc
esc
esc
esc
esc
esc
root
cours
cours
2230
2233
2236
2239
2246
2701
2747
2769
2774
2821
2888
2898
2909
2910
2921
3524
3527
4211
4224
4231
4246
5263
5283
5288
5296
5301
5305
5348
1
1
1
1
1
2603
2513
2747
2769
1
2164
2164
2513
2909
2910
2513
2513
2554
2554
2594
1
2513
5263
5283
5288
2597
5301
5305
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
0
0
0
09:42
09:42
09:42
09:42
09:42
09:43
09:43
09:43
09:43
09:43
09:44
09:44
09:45
09:45
09:45
10:14
10:14
10:23
10:24
10:24
10:24
11:05
11:05
11:05
11:05
11:05
11:05
11:07
tty2
tty3
tty4
tty5
tty6
pts/4
?
?
?
?
?
?
?
?
?
?
?
?
?
pts/2
?
?
?
?
?
pts/3
pts/3
pts/3
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:56
00:00:00
00:00:00
00:00:00
00:00:00
00:00:00
00:00:22
00:00:05
00:00:00
00:00:00
00:00:01
00:00:01
00:00:00
00:00:00
00:00:00
00:00:05
00:00:00
00:00:00
00:00:00
00:00:00
/sbin/mingetty tty2
/sbin/mingetty tty3
/sbin/mingetty tty4
/sbin/mingetty tty5
/sbin/mingetty tty6
-bash
/bin/sh /usr/lib/firefox-1.5.0.
/bin/sh /usr/lib/firefox-1.5.0.
/usr/lib/firefox-1.5.0.1/firefo
knotify [kdeinit]
/usr/libexec/hald-addon-keyboar
/usr/libexec/hald-addon-keyboar
ksystraycmd openoffice.org-2.0
/bin/sh /usr/lib/openoffice.org
/usr/lib/openoffice.org2.0/prog
konqueror --profile filemanagem
kio_file [kdeinit] file /tmp/ks
kate
kate
kate
kio_uiserver
/bin/sh /usr/lib/thunderbird-1.
/bin/sh /usr/lib/thunderbird-1.
/usr/lib/thunderbird-1.5/thunde
[netstat] <defunct>
su - cours
-bash
ps -ef
[cours@mars ~]$
Les processus dont la commande est entre crochets sont des processus en mode noyau. Les
processus qui se terminent par la lettre d sont en général des daemon (services). Les processus /
sbin/mingetty sont les processus contrôlant les terminaux.
[cours@mars ~]$ ps ux
USER
PID %CPU %MEM
cours
5305 0.0 0.2
cours
5624 0.0 0.0
[cours@mars ~]$
VSZ
5236
4184
RSS TTY
2304 pts/3
968 pts/3
STAT START
S
11:05
R+
11:56
TIME COMMAND
0:00 -bash
0:00 ps ux
%CPU : Utilisation CPU du processus.
%MEM : Utilisation de la mémoire physique par la partie résidente du processus.
START : heure à laquelle la commande a démarré.
TIME : Temps CPU utilisé (système + utilisateur).
RSS : Resident Set Size, la partie non swappée qu’un tâche a utilisé (en kilo bytes).
VSZ : Taille de la mémoire virtuelle du processus en kilo bytes.
STAT : multi-character process state
PROCESS STATE CODES
Voici les valeurs possibles de STAT qui décrivent l’état d’un processus.
D
R
S
T
W
X
Sommeil non-interrruptible (en général du à des ES)
Running ou runnable
Sommeil interruptible (en attende de la fin d’un évènement)
Stopped.
Paging (plus valide depuis le noyau 2.6.xx)
Dead (NE devrait jamais être vu !)
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 12 de 27
Commandes UNIX - Linux les plus utiles
Z
Processus Defunct ("zombie"), terminé mais pas encore « récolté » par son parent.
Pour les formats BSD des cractères additionnels peuvent être affiché:
< Haute priorité (pas « nice » pour les autres utilisateurs)
N Basse priorité (« nice » pour les autres utilisateurs)
L A des pages bloquées en mémoire (pour les processus temps réel et les ES spéciales)
l Est multi-thread
+ Est dans le groupe des processus en avant-plan.
pstree
Affiche les processus du système sous forme arborescente.
[cours@mars ~]$ pstree
init─┬─NetworkManager───2*[{NetworkManager}]
├─NetworkManagerD
├─acpid
├─atd
├─automount
├─avahi-daemon───avahi-daemon
├─bonobo-activati
├─crond
├─cups-config-dae
├─cupsd
├─2*[dbus-daemon]
├─dbus-launch
├─dcopserver
├─dhcdbd───dhclient
├─events/0
├─evolution-data-───2*[{evolution-data-}]
├─evolution-excha───{evolution-excha}
├─gconfd-2
├─gpg-agent
├─gpm
├─hald───hald-runner─┬─hald-addon-acpi
│
├─4*[hald-addon-keyb]
│
└─hald-addon-stor
├─hpiod───{hpiod}
├─kaccess
├─kded
├─kdeinit─┬─artsd
│
├─evolution-alarm───{evolution-alarm}
│
├─firefox───run-mozilla.sh───firefox-bin───2*[{firefox-bin}]
│
├─kio_file
│
├─klauncher
│
├─2*[konqueror]
│
├─konsole─┬─bash───su───bash───pstree
│
│
└─su───bash
│
├─konsole───bash───kate
│
├─ksystraycmd───soffice───swriter.bin───4*[{swriter.bin}]
│
├─kwin
│
└─thunderbird───run-mozilla.sh───thunderbird-bin─┬─netstat
│
└─2*[{thunderb+
├─kdesktop───2*[kate]
├─khelper
├─khpsbpkt
├─kicker
├─kio_uiserver
├─3*[kjournald]
├─klogd
├─kmix
├─knodemgrd_0
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 13 de 27
Commandes UNIX - Linux les plus utiles
├─knotify
├─krandrtray
├─ksmserver
├─ksoftirqd/0
├─kswapd0
├─kthread─┬─aio/0
│
├─kacpid
│
├─kauditd
│
├─kblockd/0
│
├─khubd
│
├─kmirrord
│
├─kpsmoused
│
├─kseriod
│
├─2*[pdflush]
│
├─scsi_eh_0
│
└─usb-storage
├─6*[mingetty]
├─ntpd
├─pccardd
├─portmap
├─prefdm───gdm-binary───gdm-binary─┬─Xorg
│
└─startkde─┬─kwrapper
│
└─ssh-agent
├─python
├─rpc.idmapd
├─rpc.statd
├─smartd
├─sshd
├─syslogd
├─udevd
├─watchdog/0
├─xfs
└─xinetd
[cours@mars ~]$
-a
Affiche les arguments de la ligne de commande
-H
Met en évidence le processus spécifié et ses ancêtres.
[esc@mars ~]$ pstree -H 2594
-p
Affiche le PID
[esc@mars ~]$ pstree -p
init(1)─┬─NetworkManager(2105)─┬─{NetworkManager}(2173)
│
└─{NetworkManager}(2241)
├─NetworkManagerD(2114)
├─acpid(1814)
pidof
[root@mars ~]# pidof bash
2597 2594
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 14 de 27
Commandes UNIX - Linux les plus utiles
kill
Envoie un signal à un processus. Si le processus ne peut intercepter le signal, il se terminera. La
commande kill -9 envoie le signal SIGKILL qui ne peut être intercepté et provoque la fin certaine
du processus.
Le signal envoyé par défaut est le signal 15.
$ kill -signal PID
$ kill 2614
$ kill -9 2613
uptime
Affiche depuis combien de temps le système est démarré.
[root@lucius root]# uptime
20:25:22 up 45 min, 6 users,
load average: 0.29, 0.33, 0.28
w
Affiche qui est connecté et ce qu’ils font.
[root@mars ~]# w
11:47:05 up 2:57, 1 user,
USER
TTY
FROM
esc
:0
-
load average: 0.70, 0.56, 0.45
LOGIN@
IDLE
JCPU
PCPU WHAT
09:41
?xdm?
6:12
0.15s /bin/sh /usr/b
root@lucius root]# w
19:57:59 up 17 min, 4 users, load average: 0.26, 0.32, 0.26
USER
TTY
FROM
LOGIN@
IDLE
JCPU
PCPU
root
pts/0
10.202.0.16
7:42pm 0.00s 0.07s 0.02s
jboehmer pts/1
l202p31.isl.be
7:52pm 5:23
0.02s 0.02s
mfransol pts/2
l202p23.isl.be
7:52pm 5:17
0.02s 0.02s
pwatteyn pts/3
l202p41.isl.be
7:53pm 11.00s 0.06s 0.01s
WHAT
w
-bash
-bash
sshd: pwatteyne
[root@lucius root]#
who
Affiche qui est connecté au système.
[root@lucius root]# who
root
pts/0
Apr
jboehmer pts/1
Apr
mfransol pts/2
Apr
pwatteyn pts/3
Apr
[root@lucius root]#
18
18
18
18
19:42
19:52
19:52
19:53
(10.202.0.16)
(l202p31.isl.be)
(l202p23.isl.be)
(l202p41.isl.be)
nice et renice
nice : exécute un programme avec une priorité modifiée.
renice : modifie la priorité d’un processus en cours d’exécution.
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 15 de 27
Commandes UNIX - Linux les plus utiles
$ renice +1 987 -u daemon root -p 32
Change la priorité des processus dont l’ID est 987 et 32, et de tous les procesus dont le
propriétaire est daemon et root.
nohup
Exécute un programme qui ne sera pas tué lors de la déconnexion.
$ nohup cmd
fg
Redémarre un job en avant plan et en fait le job courant.
bg
Redémarre un job suspendu comme si il avait été démarré avec &.
jobs
Liste les jobs actifs.
Exemple d’utilisation de fg, bg et jobs.
[cours@mars ~]$ sleep 100 &
[1] 5905
[cours@mars ~]$ jobs
[1]+ Running
[cours@mars ~]$ fg 1
sleep 100
ctrl-Z
[1]+ Stopped
[cours@mars ~]$ bg 1
[1]+ sleep 100 &
[cours@mars ~]$ jobs
[1]+ Running
[cours@mars ~]$
sleep 100 &
sleep 100
sleep 100 &
at
La commande at planifie l’exécution d’une commande à une heure spécifiée. Les fichiers
/etc/at.allow et /etc/at.deny sont utilisés pour déterminer qui peut utiliser la commande at. Si
aucun des deux fichiers n’existent, seul root peut utiliser at.
[root@mars ~]# at -t 0604181420
at> find /tmp -print > /root/tmpfiles
at> <EOT>
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 16 de 27
Commandes UNIX - Linux les plus utiles
job 1 at 2006-04-18 14:20
[root@mars ~]#
[root@mars ~]# at -l
3
2006-04-18 14:25 a root
[root@mars ~]#
[root@mars ~]# atq
3
2006-04-18 14:25 a root
[root@mars ~]#
[root@mars
total 12
-rwx-----drwx-----[root@mars
~]# ls -l /var/spool/at
1 root
root
1934 Apr 18 14:21 a00003012347e9
2 daemon daemon 4096 Apr 18 14:20 spool
~]#
crontab
La commande crontab planifie des tâches répétitives de l’utilisateur qui la saisit. Les fichiers
/etc/cron.allow et /etc/cron.deny déterminent qui peut utiliser la commande cron.
$ crontab -l
Affiche le fichier de planification
$ crontab -e
Édite le fichier de planification
[cours@mars ~]$ crontab -e
no crontab for cours - using an empty one
crontab: installing new crontab
[cours@mars ~]$ crontab -l
0,30
8-20
*
*
0
/home/cours/bin/checkactivity
[cours@mars ~]$
Crée un fichier de planification (l’édition se fait avec en arrière plan l’éditeur vi !) et ensuite liste
le contenu du fichier. Dans l’exemple, le script /home/cours/bin/checkactivity sera exécuté à
l’heure et à la demi-heure, entre 8 heure et 20 heure peut importe le mois et le jour du mois,
mais uniquement le dimanche.
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 17 de 27
Commandes UNIX - Linux les plus utiles
gkrellm
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 18 de 27
Commandes UNIX - Linux les plus utiles
ksysguard
top
Affiche les taches (processus) Linux.
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 19 de 27
Commandes UNIX - Linux les plus utiles
Services
Les services peuvent être démarré / arrêtés / redémarrés en utilisant la commande service.
Les services peuvent être activés ou désactivés en utilisant les commandes chkconfig ou ntsysv ou
system-config-services.
service
[root@mars ~]# service httpd start
Starting
httpd:
httpd:
apr_sockaddr_info_get()
failed
for
mars.smartinfo.be
httpd: Could not reliably determine the server's fully qualified
domain name, using 127.0.0.1 for ServerName
[ OK ]
[root@mars ~]#
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 20 de 27
Commandes UNIX - Linux les plus utiles
chkconfig
chkconfig s'utilise en passant le nom du service puis le mot clef on ou off.
ntsysv
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 21 de 27
Commandes UNIX - Linux les plus utiles
system-config-services
Mémoire
free
vmstat
Réseau
http://enterprise.linux.com/article.pl?sid=05/12/14/1645213&tid=129&tid=18&tid=100
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 22 de 27
Commandes UNIX - Linux les plus utiles
ifconfig
$ /sbin/ifconfig eth0 192.168.10.12 netmask 255.255.255.0 broadcast
192.168.10.255
route
[root@mars ~]# route
Kernel IP routing table
Destination
Gateway
Use Iface
192.168.0.0
*
0 eth1
169.254.0.0
*
0 eth1
default
192.168.0.1
0 eth1
[root@mars ~]#
Genmask
Flags Metric Ref
255.255.255.0
U
0
0
255.255.0.0
U
0
0
UG
0
0
0.0.0.0
ping
[esc@mars ~]$ ping -c 4 192.168.0.1
PING 192.168.0.1 (192.168.0.1) 56(84)
64 bytes from 192.168.0.1: icmp_seq=1
64 bytes from 192.168.0.1: icmp_seq=2
64 bytes from 192.168.0.1: icmp_seq=3
64 bytes from 192.168.0.1: icmp_seq=4
bytes of data.
ttl=64 time=3.47
ttl=64 time=3.13
ttl=64 time=3.51
ttl=64 time=3.11
ms
ms
ms
ms
--- 192.168.0.1 ping statistics --4 packets transmitted, 4 received, 0% packet loss, time 2999ms
rtt min/avg/max/mdev = 3.117/3.307/3.512/0.196 ms
[esc@mars ~]$
arp
[root@mars ~]# arp
Address
Iface
192.168.0.1
eth1
[root@mars ~]#
HWtype
HWaddress
ether
Flags Mask
00:12:BF:06:1A:E2
C
ethtool
Affiche ou change les paramètres de cartes ethernet.
[root@mars ~]# ethtool eth0
Settings for eth0:
Supported ports: [ TP MII FIBRE ]
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 23 de 27
Commandes UNIX - Linux les plus utiles
Supported link modes:
10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: Yes
Speed: 10Mb/s
Duplex: Half
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbags
Wake-on: ub
SecureOn password: 00:00:00:00:00:00
Current message level: 0x000040c5 (16581)
Link detected: no
[root@mars ~]#
/usr/bin/python /usr/bin/system-control-network
La commande /usr/bin/system-control-network (en fait un script écrit en python) permet
d’activer et de désactiver les interfaces réseaux.
[cours@mars ~]$ /usr/bin/python /usr/bin/system-control-network
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 24 de 27
Commandes UNIX - Linux les plus utiles
system-config-network ou neat
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 25 de 27
Commandes UNIX - Linux les plus utiles
system-logviewer
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 26 de 27
Commandes UNIX - Linux les plus utiles
Divers
uname
[esc@mars ~]$ uname
Linux
[esc@mars ~]$ uname -r
2.6.16-1.2080_FC5
[esc@mars ~]$
Préparé par Eric Schmitz
Institut Saint Laurent - Enseignement de Promotion Sociale
Baccalauréat en Informatique
Système d’exploitation
27/11/2006
Page 27 de 27
Téléchargement