Vous êtes sur la page 1sur 11

COMMANDES DE BASE

date afficher la date et lheure.


ls -a -l --all -f -h -t faire un listing des fichiers et rpertoire actuel.
tab x2 auto compltion.
clear ou ctrl+ l effacer la page.
ctrl +a retour en dbut de ligne.
history historique des commandes dj tapes.
ctrl +r rechercher une commande tape avec quelques lettres.
ctrl +d fermer la console.
pwd afficher le fichier actuel.
witch connaitre lemplacement dune commande. witch pwd
cd changer de dossier. cd /home/saturn/I mages
cd .. cd ../.. revenir au dossier parent.
cd / retour la racine.
cd retour au rpertoire personnel.
du -h -a -s Disk Usage: affiche la taille occupe par les rpertoires et fichiers. (-a
pour les fichiers).
cat -n affiche tout le contenu dun fichier.
less afficher le contenu dun fichier page par page.
more idem que laisse mais plus vieux et moins puissant. Utiliser less
head -n afficher le dbut du fichier.
tail -n -f afficher la fin dun fichier.( -f : suivre en temps rel)
touch crer un fichier.
mkdir -p -v crer un rpertoire. (Make Directory)
mkdir -p animaux/chiens/chat mkdir animaux chien
rm -i -f -v -r supprimer un fichier. (remove) rm animaux
supprimer plusieurs fichiers. rm animaux chiens chat
demander confirmation. rm -i
forcer la suppression. rm -f
mode verbose. rm -v
supprimer un dossier et son contenu. rm -r
rmdir supprimer un rpertoire. (Remove Directory)
cp -r -v copier un fichier.

cp chiens.txt berger.txt = copie le fichier chiens et le renomme en
berger
cp chiens.txt /home/saturn/xerxes = copie le fichier chiens dans le
rpertoire de xerxes.
cp -r animaux = copie le DOSSIER
mv dplacer un fichier. mv chiens /home/xerxes/Documents
renommer un fichier. mv chiens chiensdegarde
dplacer et renommer.
mv chiens/home/xerxes/Documents/chiensdegarde
ln -s

crer des liens symboliques. permet de crer des racourcis.
ls crer des liens physiques. permet davoir 2 noms de fichier avec le
mme contenu.


COMMANDES LINUX.



UTILISATEURS ET DROITS. A FAIRE EN ROOT
sudo excuter une commande en root.
sudo su devenir root et le rester. Attention cela est dangereux !!!
Le symbole # la fin du prompt signifie que vous tes en root.
Faites exit pour quitter le mode root ou ctrl +d
sudo adduser ajouter un utilisateur. sudo adduser patrick
sudo deluser suprimer un utilisateur. sudo deluser patrick (ne supprime pas le
rpertoire personnel)
supprimer un utilisateur et son dossier home. sudo deluser --remove
home patrick
Ne supprimer pas le dernier compte utilisateur car il ne restera que root
et root ne peut pas se loguer sur une session, vous serez bloquez.
sudo passwd changer le mot de passe. sudo passwd patrick
addgroup ajouter un groupe. addgroup compta
delgroup supprimer un groupe. delgroup compta
usermod -l -g -G modifier un utilisateur.
rennomer lutilisateur mais pas son son dossier home: usermod -l
patrick adrien
changer de groupe: usermod -g compta patrick
appartenance plusieurs groupe: usermod -G compta, direction,
DRH,...
groupadd, groupdel, useradd,
deladd
idem que addgroup, delgroup, adduser, deluser sauf quelles
fonctionnent partout avec moins de fonctionnalits. Celles ci dessus sont
pour Debian et ses drivs: Ubuntu....
chown changer le propritaire dun fichier. Attends 2 paramtres minimum: le
nom du nouveau propritaire et le nom du fichier modifier.
chown patrick rapport.txt :patrick est le nouveau propritaire du
fichier rapport.txt. Faites un ls -l rapport.txt pour vrifier.
chgrp et chown (-R) changer le groupe propritaire dun fichier (ChangeGroup). mme
utilisation que chown.
chgrp compta rapport.txt
chown patrick:compta rapport.txt utilisateur patrick, groupe compta.
affecter les droits un dossier et tous ses sous dossier et fichiers:
chown -R patrick:compta /home/patrick/repcommun
chmod














Modifier les droits daccs:

d: directory, llment est un dossier
l: link, llment est un lien, raccourci

r: read, indique que lutilisateur peut lire llment.
w: Write, indique que lutilisateur peut modifier et supprimer llment.
x: eXecutable, indique que lutilisateur peut excuter llment.

EX: retour dun ls -l sur un fichier: rw-r--r-- xerxes xerces date heure
nom du fichier

- ou d ou l: indique sil sagit dun dossier, dun raccourci ou non.
rw- : peut lire et modifier
r-- : tous les utilisateurs faisant partie du groupe peuvent seulement lire




chmod















































r-- : tous les autres utilisateurs ne faisant pas parti du groupe xerces
peuvent seulement lire le fichier.

Droits avec chiffres, lettres et calcul:

r = 4
w = 2
x = 1

--- = 0 = 0+0+0
r-- = 4 = 4+0+0
-w- = 2 = 0+2+0
--x = 1 = 0+0+1
rw- = 6 = 4+2+0
-wx = 3 = 0+2+1
r -x = 5 =4+0+1


EX: chmod 640 rapport.txt

640: indique les droits du propritaire, du groupe et des autres.
6: droit de lecture et dcriture pour le propritaire.
4: droit de lecture pour le groupe.
0: aucun droit pour les autres.


Droits avec des lettres:

u=user g=group o=other

+ signifie ajouter le droit.
- signifie supprimer le droit.
= signifie affecter le droit.

EX:
ajouter le droit criture au groupe:
chmod g+w rapport.txt

enlever le droit de lectures aux autres :
chmod o-r rapport.txt

ajouter le droit de lecture & excution au propritaire :
chmod u+rx rapport.txt


ajouter le droit dcriture au groupe, et lenlevez aux autres :
chmod g+w, o-w rapport.txt

Enlevez le droit dcriture au groupe et aux autres :
chmod go-r rapport.txt






chmod

ajouter le droit dexcution tout le monde :
chmod +x rapport.txt

affecter tous les droits au propritaire, la lecture au groupe, rien aux
autres :
chmod u=rwx, g=r, o=- rapport.txt


-R : affecter aux dossiers, sous dossiers et fichiers:

EX:

affecter lensemble du dossier home de xerxes le pouvoir de lire,
crire et executer les fichiers de son rpertoire :
chmod -R 700 /home/xerxes ou chmod u=rwx, g=-, o=-
EDITION DE TEXTE
vi
emacs
nano lancez nano: nano
crer et diter un fichier texte: nano rapport.txt

ctrl+ : couper une ligne de texte.
ctrl+u: coller une ligne de texte coupe prcdemment.
ctrl+o: enregistrer, crire le fichier.
ctrl+x: quitter nano.

nano -m : autorise la souris !!!
nano -i : identation automatique.
nano -A : active le retour intligennt au dbut de la ligne.
nano -miA rapport.txt : pour toutes les options.
nano .nanorc /home/xerxes diter le fichier de config de nano dans le rpertoire utilisateur. Ajouter
les options suivantes dedans:

setmouse
set autoindent
set smarthome
sudo nano /etc/nanorc diter nanorc pour tous les utilisateurs. Dans le fichier, supprimer le #
des lignes suivantes:

# setmouse
# set autoindent
# set smarthome

Dcommenter les lignes dinclude suivante pour les colorsetup si ce
nest dj fait:

## Nanorc files
## C/C++
## HTML



INSTALLATION ET CONFIGURATION DE PAQUETS AVEC APT
- Les programmes sont fournis sous forme de paquets qui ont gnralement besoin de dpendances pour
fonctionner.
- Les paquets sont situs sur des serveurs quon appelle des dpts. Leurs adresses se situe dans le fichier
/etc/apt/sources.list quil est possible dditer.
- apt-get nexiste que sous Debian et ses drivs comme Ubuntu. Il existe aussi rpm sous Red Hat qui ne
gre pas les dpendances, yum rpm grant les dpendances pour fedora, urpmi idem que yum pour
Mandriva.

apt-get update mettre jour le cache dapt.
apt-get upgrade mettre jour tous les paquets.
apt-cache search
monpaquet
rechercher un paquet sans connaitre le nom exact.
apt-get install monpaquet tlcharger et installer un paquet.
apt-cache show nompaquet afficher une description du paquet.
apt-get remove nompaquet dsinstaller un paquet sans les dpendances, prfrez autoremove.
apt-get autoremove nom dsinstaller un paquet et ses dpendances.
apt-get moo reprsente une vache dans la console, gros dlire de programmeurs !!!
apt-get autoclean effectue un nettoyage des paquets non utiliss.
READ THE FUCK MANUAL (RTFM) Lis ce putain de manuel !!!
I l est considr comme trs grossier de poser une question sur une commande dont la rponse se trouve
dans le manuel man dans les forums. Cest une petite insulte amicale entre linuxiens !!
man nomdelacommande affiche le manuel dune commande
man man affiche le manuel de man; donc du manuel !!

apt-get install manpages-fr-
extra
installe la langue franaises pour le manuel.
apropos permet de trouver des informations sur le sujet sans connaitre la commande.
apropos sound propose gauche les commandes adquat suivi dune description.
essayer alsamixer et man alsamixer pour obtenir le man !!
nomdelacommande -h obtenir de laide sur une commande
nomdelacommande --help idem que -h
whatis nomdelacommande sorte de man allg.
info nomdelacommande alternative man.
info coreutils Gros rsum des commandes consoles de linux.
On retrouve aussi le man sur le web !!!
RECHERCHER DES FICHIERS
locate nomdufichier Outils de recherche rapide. EX: locate notes.txt
sudo updatedb reconstruire la base de donnes des fichiers du disque dur.

find recherche approfondie. Nutilise pas une database mais parcours le disque
physiquement.
find -name logo.png recherche par nom exact.
find chemin -name
logo.png
EX: find /var/log/ -name syslog :recherche tous les fichiers commenant par
syslog.
find / -name *logo.png* / recherche sur tous le disque.
*logo.png* recherche des fichiers commenant ou terminant par syslog.




find ~ -size +10M rechercher des fichiers par la taille.
~ signifie home.
M des mga, K des Ko, G des Go....
find -name *.odt -atime -
7
find -atime -7
rechercher partir de la dernire date daccs
-atime spcifie le nombre de jours
find /var/log -name syslog
-type d
rechercher uniquement des rpertoires.
-type f rechercher uniquement des fichiers.
-print afficher les rsultats trouvs.

find ~ -name *.jpg -delete supprimer les fichiers trouvs.
~ signifie /home.
*.jpg signifie tous les fichiers jpg.
TRIER DES FICHIERS
sort noms.txt trier un fichier par ordre alphabtique. Ne fais pas attention la casse.
sort -o noms_tris noms.txt trier le fichier dans le fichier noms_tris.txt
sort -r noms.txt trier en ordre inverse.
sort -R noms.txt trier par ordre alatoire.
sort -n nombres.txt trier par nombres.
REDIRECTIONS
Redirection dans un fichier
sort noms.txt > notes.txt redirige le rsultat de la commande sort dans le fichier notes.txt au lieu de
lafficher dans le terminal.
sort noms.txt >> notes.txt idem que >sauf que le rsultat se retrouve la fin du fichier si celui ci dj
t commenc.
Chainer des commandes il faut utiliser le pipe ( | ) pour sparer les commandes.
du | sort -n excute Disk Usage et trie le rsultat par nombre.
SURVEILLANCE DU SYSTEME
w informations sur la machine.
lheure, la dure de fonctionnement, la charge et la liste des connects.
user: nom de lutilisateur.
TTY: le nom de la console dans laquelle se trouve lutilisateur.
from: @IP depuis laquelle le user se connecte.
login@: lheure de connexion.
I DLE: depuis combien de temps.
WHAT: quelle commande est il en train dexcuter.
uptime dure de fonctionnement de lordinateur
tload indice de lactivit de la machine.
0,08: Depuis 1 minute.
0,34: depuis 5min.
0,31: Depuis 15 min.
who liste des connects.

ps liste des processus statiquement.
PI D: numro didentification du processus.
TTY: Nom de la console depuis laquelle le processus est lanc.
TI ME: Dure dexcution du processus.
CMD: Programme qui a gnr le processus.
ps -ef lister tous les processus lancs par les utilisateurs y compris root.


ps -ejH lister les processus sous forme darborescences. Permet de voir les processus
enfants et parents.
ps -u Utilisateur lister les processus utiliss par un utilisateur
Ex: ps -u hadrien

top lister les processus dynamiquement.
b: met en gras certains lments.
f: ajoute ou supprime des colonnes.
F change la colonne de tri des processus.
u: filtre en fonction de lutilisateur dsir.
k: tue un processus.
s: change lintervalle de temps de rafraichissement.
q: quitter top.
h: affiche laide.

kill NPID
kill 1232 4563 3987
kill -9 32876
tuer un processus grce son PID. Utiliser ps -u utilisateur !
tuer plusieurs processus gentiment.
tuer sans laisser le temps au processus de sarreter proprement.
ps -u hadrien | grep firefox
killall firefox-bin
killall firefox
EX pour le programme firefox en cours qui a plusieurs processus en cours sur
la session hadrien. On va trier ses processus et les tuer en un seul coup.
ARRETER ET REDEMARRER UNE MACHINE LINUX
sudo halt arrter lordinateur.
sudo reboot redmarrer lordinateur.
sudo logout fermer la session.

ARCHIVER ET COMPRESSER / DECOMPRESSER
Regrouper au pralable les fichiers compress dans un mme dossier pour cette commande.
tar -cvf nomdufichier.tar
nomdudossier/
Ex: tar -cvf 4vrits.tar 4vrits/
-v: mode verbose.
-c: crer larchive tar.
-f: assembler larchive dans un fichier.
tar -cvf archive.tar fichier1
fichier 2 fichier3
crer une archive tar sans regrouper les fichiers dans un dossier.

tar -tf archive.tar -tf affiche le contenu de larchive sans lextraire.
tar -xvf archive.tar.gz extraire, dcompressez une archive dans le rpertoire courant.

Compresser une archive tar en gzip et bzip2. (Plus performant mais plus lent)
gzip archive.tar compresser en .tar.gzip
gunzip archive.tar dcompresser larchive gzip

bzip2 archive.tar compresser en .tar.bzip2
bunzip2 archives.tar.bzip2 dcompresser larchive bzip2

Archiver, compresser en gzip et bzip2 et dcompresser
tar -zcvf archives.tar.gz
dossier
-zcvf archive en tar et compresse en gzip
tar -ztf archive.tar.gz affiche le contenu.
tar -zxvf archives.tar.gz extraire, dcompressez larchive gzip



tar -jcvf archive.tar.bzip2
dossier
-jcvf archive en tar et compresse en bzip2
tar -jtf archive.tar affiche le contenu.
tar -jxvf archive.tar dossier extraire, dcompressez larchive bzip2.

Afficher directement un fichier compress.Outils capable de lire un fichier compress gzipp
zcat quivalent cat
zmore quivalent more
zless quivalent less


Unrar et unzip.
sudo apt-get install unrar installer unrar
sudo apt-get install unzip installer unzip
unrar e archive.rar dcompresser une archive rar. Utiliser -l pour lister.
unzip archive.zip dcompresser une archive .zip
TRANSFORMER SA MACHINE EN SERVEUR ET SE CONNECTER A DES SERVEURS
sudo apt-get install
openssh-server
installation du module server ssh.
sudo /etc/init.d/ssh start dmarrer le service server ssh.
sudo /etc/init.d/ssh stop arrter le service server ssh.

ssh login@IP Se connecter dune autre machine linux son serveur ssh.
Ex:
ssh hadrien@80.10.354.1765 en WAN.
ssh hadrien@192.168.1.132 en LAN.

SSH utilise le port 22, attention au pare feu si vous avez des erreurs !!!

prcise le port utilis par ssh si le serveur tourne sur un autre port :
ssh hadrien@80.10.354.1765 -p 12451
logout se dconnecter de la machine. fin de la communication ssh.
Utiliser le programme PuTTY pour vous connecter graphiquement en ssh partir dune machine
Windows.
TELECHARGEMENTS DE FICHIER
wget
http://cdimage.org/debian.i
so
tlcharger partir dune adresse http. ctrl+c pour arrter.
wget -c http://......... reprendre un tlchargement arrt.
wget --background -c
http://..
lancer un tlchargement en tache de fond.
Tlchargement de fichiers de manire scurise. (Secure CoPy)
scp fichier_dorigine
dossier_de_destination
scp login@I P:nom-fichier peut tre utilis pour le fichier dorigine et le
fichier de destination.
possibilit de remplacer l@IP par le nom de Domaine.
scp image.png
hadrien@85.167.10.1435 :
/home/elise/images
copie du fichier image.png de mon ordinateur vers l@IP 85.167....... dans le
fichier home/elise/images de cet ordinateur.
scp mateo21@85.123.10.201
: image.png image2.png
copie du fichier image.png dun autre ordinateur : mateo21@85.123.10.201sur
mon ordinateur sous le nom image2.png




scp -P 1626
mateo21@85.123.10.201 :
image.png .

-P spcifie le numro de port du serveur SSH (-P 1626). Le reste de la
commande copie le fichier image.png sans le changer de nom dans le rpertoire
actuel. Le point (.) la fin de la commande le spcifie.
Tlchargement de fichier partir dun serveur FTP
Connexion au serveur par nom de Domaine ou adresse I P prive ou public.
ftp ftp.debian.org connexion FTP public. Login= anonymous, Password= Ce que vous voulez !!!
ftp.192.168.1.253 connexion FTP serveur priv local par @IP
ftp.serveurpriv.com connexion FTP serveur priv WAN par nom de Domaine
ftp.85.134.56.8743 connexion FTP serveur priv WAN par @IP
Se dplacer au sein dun serveur FTP. Gestion des fichiers et rpertoires.
ls afficher le contenu du rpertoire actuel.
pwd affiche le chemin actuel.
cd changer de rpertoire.
delete, mdelete supprimer un fichier
mkdir crer un dossier
rmdir supprimer un dossier
rename renommer un dossier.
Transfert de fichiers via FTP.
put nom_du_fichier envoie, upload un fichier vers le serveur FTP.
get nom_du_fichier tlcharge, download depuis le serveur FTP.
!pwd affiche le chemin actuel de votre ordinateur !
!cd changer le dossier actuel de votre ordinateur !
chmod voir le dossier chmod pour les autorisations.
!ls lister les fichiers du rpertoire actuel de votre ordinateur.
man ftp pour plus de commandes !!! RTFM !!!!
Dconnexion du serveur.
close, bye, quit, disconnect dconnexion.
Connexion un serveur FTP scuris. SFTP: FTP scuris.
sftp login@IP ou

sftp mateo21@lisa.site.com
EX: sftp anonymous@debian.org cela ne fonctionnera pas !!!
En temps normal on vous demandera votre mot de passe ou une cl publique
sera utilise si elle est prsente.
-Faites attention ! certaines commandes changent, par exemple supprimer un fichier ne sera plus
delete mais rm !
- Faire un man sftp pour plus dinfos. RTFM :)

















COMMANDES RESEAU
host @IP obtenir le nom dhte correspondant ou son synonyme.
host google.fr obtenir l@IP correspondant un nom de Domaine.

ping -c Necho @IP
ping -c Necho NomDomaine
EX:
ping -c 4 192.168.1.123 : envoi 5 requtes sur l@IP.
ping -c 4 google.fr : envoie 4 requtes sur lhote google.fr
sudo nano /etc/hosts Grer les noms dhtes personnaliss en ditant le fichier host.
Ex:
127.0.0.1 localhost
192.168.1.34 PC XerXes
80.248.219.123 siteduzero.com
whois Obtenir des informations sur un nom de domaine comme le nom, prnom,
adresses, contact.
EX: whois google.fr

Grer et analyser le traffic rseau.
ifconfig Lister les interfaces rseau. (cartes rseau)
eth0: connexion Ethernet.
lo: boucle locale, cest dire vous meme.
wlan0: connexion Wifi.
ifconfig eth0 up
ifconfig lo up
ifconfig wlan0 down
eth0 up: active la carte rseau.
wlan0 down: dsactive la carte Wifi.
sudo nano
/etc/network/interfaces
permet dditer le fichier interfaces afin de paramtrer une carte rseau en
adresse statique. Respecter la syntaxe suivante et adapte la:

## carte rseau Appart
auto eth0
iface eth0 inet static
address 192.168.1.12
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

# The loopback network interface
auto lo
iface lo inet loopback
netstat -i tableau de statistiques dutilisation des interfaces rseau.
netstat -u -t -a -n -utan

man netstat pour plus
dinfos
RTFM !!!
lister toutes les connexions ouvertes.
-u: afficher les connexions UDP.
-t: afficher les connexions TCP
-a: afficher toutes les connexions quel que soit ltat.
-n: afficher les numros de ports.
netstat -lt lister les connexions en tat dcoute.(LisTen)
netstat -s statistiques rsumes.





Le firewall Iptables. Sutilise en root.
iptables -L afficher les rgles du pare-feu.
chain INPUT: traffic entrant.
chain FORWARD: redirection de traffic.
chain OUTPUT: traffic sortant.
iptables -F rinitialiser les rgles iptables.
iptables -L --line-numbers afficher les numros des rgles.
Ajouter et supprimer des rgles.
Principales commandes:

-A chain: ajoute une rgle en fin de liste, INPUT? OUTPUT.
-D chain rulenum: supprime n pour la Chain indique.
-l chain rulenum: insre une rgle en milieu de liste la position nrulenum dans la chain.
-R chain rulenum: remplace la rgle n rulenum dans la chain indique.
-L : liste les rgles.
-F chain: vide toutes les rgles de la chain indique.
-P chain regle: modifie la rgle par dfaut pour la chain.

iptables -A (chain) -P (protocole) --dport (port) -j (dcision)

vous pouvez utilisez le numro de port ou la syntaxe comme www (80) ou imap2
iptables -A I NPUT -p tcp --dport ssh -j ACCEPT
ajout dune rgle entrante (INPUT) via le protocole TCP (-p tcp) sur le port de SSH (-dport ssh ou -dport 22)
et accept (-j ACCEPT)
iptables -A I NPUT -p 80 --dport ssh -j ACCEPT
autoriser le trafic web (80)
iptables -A I NPUT -p www --dport ssh -j ACCEPT
autoriser le traffic web (www)
iptables -A I NPUT -p imap2 --dport ssh -j ACCEPT
autoriser le traffic mail (imap2)
iptables -A I NPUT -p icmp -j ACCEPT
accepter les pings.
iptables -A I NPUT -i lo -j ACCEPT
autoriser tout le traffic sur linterface de loopback locale (-i lo)
iptables -A I NPUT -m state --state ETABLI SHED, RELATED -j ACCEPT
autoriser toutes les connexions dj ltat ETABLISHED ou RELATED donc toutes les connexions qui ont
t demand par votre PC.

iptables -P I NPUT DROP
refuser toutes les autres connexions par dfaut.