La ligne de commande
# pwd affiche l’emplacement de la commande de la console(print working directory)
# ls permet de lister le contenu d’un répertoire
# ls -l liste sous forme de longue les informations détaillées du repertoire
# ll est alias par defaut de la commande ls -l
# ls -a affiche les fichiers cachés
# watch ls raffraichi en permanence l’affichage du contenu d un dossier
#watch -n 3 ls raffraichi en permanence l’affichage du contenu d un dossier toutes les 3 secondes
# cd pour changer de répertoire(change directory)
# cd .. va dans le répertoire parent
# cd ~ va dans votre répertoire home
# cd ~nico va dans le répertoire home de nico
# cd – va dans le répertoire que l on vient de quitter.
# cd sans argument va directement dans votre répertoire home
# mkdir pour créer un dossier dans le répertoire courant
# mkdir -p pour créer une suite de dossiers qui n existe pas (ex : mkdir -p un/long/chemin)
# cp fichier1 copifichier copie le fichier en copifichier
# cp -R dossier copiedossier copie l’integralité de dossier en copiedossier
#rm fichier1 supprime définitevemnt le fichier1
# rm -i fichier1 demande confirmation avant suppression du fichier1
# rm -R dossier1 supprime definitevement le dossier1 et tout son contenu
Locate et find pour rechercher des fichiers
# locate fichier1
recherche le fichier dans une base de données de fichiers actualisé chaque nuit (très rapide)
# find fichier1
recherche le fichier dans le contenu du disque dur (plus long que locate)
Créer un lien symbolique ( un raccourci)
# ln -s /chemin/entier/dufichier.txt nomduraccourci
le lien symbolique est comme un fichier , on peu le supprimer avec # rm sans supprimer la cible
Les autorisations :
r : read (lire)
w : write(écrire)
x : exécuter
-rwx-rwx-rwx ou drwx-rwx-rwx (le d devant les autorisations quand c’est un dossier, le – pour un fichier, l pour un lien symbolique)
premier groupe(u) : propriétaire du fichier
second groupe (g) : les membres du groupe du fichier
troisième groupe (o) : les autres
chmod (changer le mode d’accés) pour changer les permissions
chmod g+rw codes.txt (autorise les membre du groupe a lire et ecrire le fichier codes.txt)
u (utilisateur) g(groupe) o(les autres) a (pour tout le monde)
+ ou – pour ajouter ou retirer une autorisation
r(lire) w(ecrire) x(executer)
option -R pour la récursivité sur un dossier ex :
chmod -R go-rwx prive (supprime toutes le permissions sur le dossier prive)
# du dossier ou # du fichier
affiche l’espace disque occupé par le dossier ou le fichier en argument
-h pour lisible
-c taille totale de tous les arguments
-s supprime l’affichage des sous répertoires
#df ou #df -h (plus lisible)
pour afficher l’espace utilisé et disponible sur tous les systèmes de fichier (partitions)
# wc – arg nomdufichier ( compte dans un fichier) ex :
#wc -w cv.txt compte le nombre de mots dans le fichier cv.txt)
-w compte les mots
-l compte les lignes
-c compte les octets
-m compte les caractères
La date
pour afficher la date, on utilise la commande date ex :
# date affiche : ven. 03 sept. 2021 23:35:55 CEST
on peu préciser exactement ce que l’on veut afficher avec les options + ex:
# date +%d/%m/%Y affiche 03/09/2021
les options :
%d jour du moins
%m mois de l’année
%Y année
%H heure
%M minute
%S seconde
il peu être intéressant d’ajouter cette commande a une autre, par exemple pour créer une archive et rajouter la date ou l’heure de création dans le nom du fichier ex :
# tar cvzf sauv-docs-$(date +%d-%m-%Y_%Hh%M).tar.gz Documents
La commande ncal affiche un calendrier de type :
# ncal
Septembre 2021
lu 6 13 20 27
ma 7 14 21 28
me 1 8 15 22 29
je 2 9 16 23 30
ve 3 10 17 24
sa 4 11 18 25
di 5 12 19 26
on peut aussi afficher :
# ncal septembre 2015 (ou # ncal 9 2015) affiche le mois de septembre 2015
# ncal 2018 affiche tous les mois de l’année 2018
La commande at pour programmer une tache (executer une seule fois a un instant t) dans le temps
# at now + 15 minutes
at> rsync -av Documents sauvegardes
(ctrl+d) pour teminer les commandes
pour afficher les jobs en cours : # atq
pour annuler un job en cours:
# atrm 14 (annule le job 14)
autre exemples :
# at 21h30
# at 21h30 14.08.21
# at 9h30pm 14/08/21
Les alias : les alias se comportent comme un raccourci d’une commande.
chaques utilisateurs a ses alias. Ils sont définis dans le fichier /home/user/.bashrc (fichier caché) ou ~/.bashrc
exemple d’alias :sur un serveur, on veut un raccourci de la commande :
# sudo systemctl reload apache2 en ssrap
dans le fichier ~/.bashrc on ajoute la ligne :
alias ssrap=’sudo systemctl reload apache2′
Les alias ne prennent effet qu’après une réouverture d’un shell
on peu se preparer un fichier avec avec une liste d’alias, on le place dans :
~/.alias
puis dans le fichier ~/.bashrc on rajoute la ligne :
source ~/.alias
pratique pour importer ses alias sur d’autres machines .
Le reseau sous debian
la configuration des cartes reseau sous debian se fait sur le fichier /etc/,etwork/interfaces
on peu editer le fichier
source /etc/network/interfaces.d/*
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
allo-hotplug eth0
iface eth0 inet dhcp
gateway 192.168.188.1
Ici 2 cartes sont affichées , la carte locale lo (127.0.0.1) et la carte réseau eth0 qui est en dhcp
Dans la deuxième ligne « auto etho » signifie qu’il faut démarrer la carte au démarrage de la machine
dans la 4em ligne on précise si on veut du dhcp ou static ( si static on devra rajouter une ligne qui précise l’adresse ip voulue » address 192.168.1.100« )
gateway est la passerelle du réseaux.
on sauve le fichier après modifications
pour redemarrer le réseau :
sudo systemctl restart networking
Quelques commandes réseau :
afficher la liste des cartes réseau :
# ip a
Afficher les adresse ip de la machine :
# ip -br a
ajouter une adresse IP a une carte réseau ( ici eth0 est la carte réseau) :
# ip a add 192.168.1.125/24 dev eth0
afficher la table de routage :
# ip r show
envoyer un ping sur adresse IP
# ping -c1 192.168.1.1
activer le routage statique ( faire la passerelle entre les 2 réseaux différents) Sur une machine avec 2 cartes réseaux :
on vérifie l’état du routage ( ip_forward) :
#cat /proc/sys/net/ipv4/ip_forward
# 0
ici il est à l’état 0 donc désactivé, il faut le passe a 1 pour l’activer (si problèmes penser a désactiver le firewall : # sudo systemctl stop firewalld pour centos ou # sudo ufw disable pour ubuntu)
on l’active en ajoutant 1 au fichier :
# echo 1 > /proc/sys/net/ipv4/ip_forward
ensuite il suffit d’ajouter en tant que passerelle (la machine avec les 2 cartes, ici 192.168.100.2 ip sur le second reseau) dans les machines du second réseau :
# ip route add default via 192.168.100.2
on peu verifier avec la commande :
# ip route show
Quelques commandes sur les disques durs
# df
affiche les montages du systeme
dd est un utilitaire de copie de disque ( en local ou meme en reseau)
Copie du disque cluster/cluster
# dd if=/dev/sdb1 of=/dev/sdc status=progress
Copie du disque dans une image
# dd if=/dev/sdb1 of=backup-sdb1.img status=progress
nettoyer un disque ( effacer les données sans possibilité de récupération, 7 passages conseillés)
dd if=/dev/random of=/dev/sdc