LES COMMANDES LINUX



LES COMMANDES  LINUX




#date : afficher la date et l’heur

#cal : afficher la calendrier

#cal 2013 3 : afficher le mois mars 2013

#bc : calculatrice /ctrl + z ou ctrl + c + (écrivez  quit)  pour quitter






#clear : effacer l'écran du terminal

#adduser : ajouter un utilisateur  (si vous etes root et vous voulez acceder à un compte d’un utilisateur mettez #su – (user)  su = switched user, pour revenir en root : #su -)

# = root  // $ = simple user

#userdel user : supprimer un utilisateur

#passwd  (user ou root) : changer le mot de passe




#ls : afficher  le contenu d’un répertoire 

#ls –a : afficher le contenu caché d’un répertoire 

Les répertoires en bleu : c’est un dossier
Les répertoires en blanc : c’est un fichier
Les répertoires qui commence par point : des dossiers ou des fichiers qui sont cachés
Les répertoires en rouge : les répertoires compressés
Les répertoire en vert : les répertoires éxécutables

 #ls –l : afficher les droits d’accès au répertoire, la date, la capacité et l’utilisateur
(#ls –l  file ? afficher les fichiers  qui commence par file, (par exemple file1, file2, si un il ya un fichier qui commence par file10, il va pas l’afficher, il faut alors mettre la commande : #ls –l file ?? et pour afficher les fichier qui commence par a à z on met : #ls –l file[a-z],  il existe aussi #ls –l file[1-9])

Ne pas afficher les fichiers qui commencent par 1 à 9 : #ls –l file[ !1-9])
Afficher les répertoires .mp4 : #ls –l  *.mp4

#pwd : l’emplacement ou je suis

#cd (nom de répertoire) : accéder à un répertoire ou revenir au répertoire racine

#cd .. : accéder au répertoire  précèdent

#mkdir (nom de dossier) : création d’un dossier

#cat (fichier) : vérifier le contenu d’un fichier  (voir les utilisateurs (root/user/service user) : #cat /etc/passwd)

#cp : copier un répertoire

#cat >> (nom de fichier)  ou #vi  (nom de fichier)  ou #kate  (nom de fichier) : écrire dans un fichier  

#mv : renommer le répertoire (le même emplacement)  ou le déplacer  (vers un autre emplacement)

#rm : supprimer un fichier

#rm –r : supprimer un dossier  (rm –rf  (f pour forcer la suppression, par exemple si il contient  des sous répertoires ou des fichiers)

#touch (nom de fichier) : création d’un fichier
#man (la commande) ou (#info (la commande)): donner des informations sur la commande et son utilisation (exemple : #man ls  #info ls)

#history : affiche tout les commandes quand a exécuter  (pour supprimer l’historique :#history –c)

# !! : affiche la commande précédente  (#h ! : dernière commande qui commance par h)

 #reboot : redémarrage du système

#shutdown : fermeture du système  (-f pour forcer la fermeture)  (-c : pour arrêter la fermeture)  (#shutdown now : fermeture immédiate)


Exemple
Exemple : on va créer 3 dossiers (iori, ash, chris), dans chaque  dossier on va créer deux fichiers dans iori (iori1, iori2), ash (ash1, ash2)  et chris (chris1, chris2)

On va écrire dans le fichier iori : bonjour iori

Création des 3 dossiers :






#mkdir  iori
#mkdir ash
#mkdir chris

Ou : #mkdir iori ash chris

Ps : si on veut créer deux dossiers (kyo, shingo) sous  le dossier iori (sans accéder a ce dernier avec la commande cd), on peut mettre la commande :
#mkdir iori/kyo iori/shingo

Création des fichiers :

#cd iori
#touch iori1.txt iori2.txt

#cd ash
#touch ash1.txt  ash2.txt

#cd chris
#touch chris1.txt  chris2.txt

Ps : si on veut accéder au dossier sans utiliser (cd) plusieurs fois, on peut mettre par exemple la commande : #cd  1erdossier/2emedossier/ ……

Ecrire dans le fichier :

#cd  iori
#cat >>iori.txt
Bonjour iori  (vous pouvez cliquer sur entrer et écrire un autre ligne), puis cliquez sur (ctrl + c)
#cat iori.txt  (vérifier le contenu du fichier iori)

Ps : si vous utilisez #vi iori.txt, quand vous terminez mettez (ctrl + c) puis cliquer (echap) et mettez à la fin :q !

La meilleure façon c’est d’utilisez #kate car il donne une interface graphique qui ressemble à  bloc note, pour l’installer : #apt-get install kate

Renommer le fichier iori1.txt

#mv iori1.txt  kula.txt

Copier le fichier iori2 dans le répertoire ash

#cp /root/Desktop/iori/iori2  /root/Desktop/ash/ash3
 (cp source destination) – ash3 : on a donné un nom  au fichier quand a copier 

Déplacer le fichier ash3 dans le répertoire chrise

#mv /root/Desktop/ash/ash3  /root/Desktop/chris

Ps : a chaque fois mettez #ls pour vérifier

Les Droits d’accès

Autoriser ou interdir un utilisateur d’acceder à une resource

rwxrwxrwx  = 777

U : user  - g : groupeo : autre

r = read      (4)
w = write      (2)
x = execute   (1)

Exemple :

drwxr—r-- : #d pour directory (répertoire) 

L’utilisateur (root) a les droits de lire/écrire et exécuter
Le groupe a le droit que de lire
Les autres ont le droit que de lire

Ps : -rwxr—r-- # le 1er tiret càd un fichier

Exemple :

Un dossier (chizuru) qui a  ces droits : drwxr—r—
On peut modifier ces droits par la commande chmod (fichier) ou chmod –R (répertoire)

#chmod –R 770 chizuru  ou  

#chmod  u+rwx
#chmod  g+rwx
#chmod  o-rwx

Ps : + pour ajouter les droits et – pour les enlevez

Compresser un fichier


#gzip  (nom du fichier)  ou #bzip2 (nom du fichier)  ou  #tar  -xzvf nom_fichier

Décompresser un fichier

#gunzip (nom du fichier.extention)  ou #bunzip2  (nom du fichier.extention)  


Login_id : renvoi : UID : GID : commentaire : répertoire : processus.

----------------------------------------------------------------------------------------------------------------------------------

user1: x: 1001:20:111-111:/home/user1:/usr/bin/sh                    
user2: x: 1002:20:222-222:/home/user2:/usr/bin/sh

/etc/shadow  : contient les mots de passes des utilisateurs




Min days : nbr min  de jour pour changer le mot de passe
Max days : nbr max de jour pour changer le mot de passe
Warn days : « attention » faut changer le mot de passe



Forcer la modification de mot de passe à la prochaine connexion:     # passwd -f user1

Verrouiller ou désactiver un compte:   # passwd –l user2

Activer le vieillissement de mot de passe:   # passwd -n 7 -x 28 user1      ( min et max de jours avant changement )


Afficher l'état du vieillissement de mot de passe d’un utilisateur :         # passwd -S user


Exemples de fichiers utilisant ces droits supplémentaires :


 U : user  - g : groupe – o : autre

On peut  définir les droits d'accès supplémentaires  avec la commande chmod :


SUID est indiqué dans la zone utilisateur  # chmod 4777 file1     ou      # chmod  u+s file1

SGID est indiqué dans la zone groupe   # chmod 2777 file1     ou      # chmod  g+s file1

SVTX est indiqué dans la zone Autres : # chmod 1777 file1     ou      # chmod  o+t file1

SUID: Alloue temporairement à un utilisateur les droits du propriétaire du fichier, durant son exécution.
-rwxr-xr-x deviendra alors  -rwsr-xr-x
 SGID : il donne à un utilisateur les droits du groupe auquel appartient le propriétaire de l’exécutable et non plus les droits du propriétaire.
Sur un répertoire, le SGID signifie que les fichiers créés seront associés au groupe du répertoire et non pas au groupe du créateur.
  • Sticky bit
Pour un répertoire, permet d’interdire la suppression des fichiers qu’il contient à tout utilisateur autre que le propriétaire. Néanmoins, il est toujours possible pour un utilisateur possédant les droits d’écriture sur ce fichier de le modifier.
Pour un fichier, le bit collant (sticky bit) indique alors que ce fichier doit encore rester en mémoire vive après son exécution.
EN GENERALE

Les permissions SUID et SGID permettent d'obtenir les droits du proprietaire et/ou du groupe d'un fichier quand celui-ci est execute par un autre utilisateur. Leur utilisation est particulierement sensible quand elles permettent l'execution en tant qu'utilisateur 'root'.







r = read      (4)
w = write      (2)
x = execute   (1)
Example simple
chmod 740 fichier   (7 = rxw pour propriétaire + 4= r pour le groupe + 0 aucun droit pour autre) 
 
chmod –R 740  repertoire 
 




ou bien 
 
chmod u+rw fichier (r et w pour le proprietaire) 
chmod –R u+rw repertoire 
u : user // g : group // a : all
Les répertoires commencent par d au début et les liens par l, les fichiers par –
Exemple :
Dans l'exemple suivant, l'autorisation setuid est définie sur le fichier iori.
# chmod 4555 iori
# ls -l iori
-r-sr-xr-x   
Dans l'exemple suivant, l'autorisation setgid est définie sur le fichier ash
# chmod 2551 ash
# ls -l ash
-r-xr-s--x   1 
Dans l'exemple suivant, l'autorisation Sticky bit est définie dans le répertoire kof.(Sticky)
# chmod 1777 kof
# ls -ld public_kof
drwxrwxrwt   
pour le supprimer chmod -t kof



Masque : Il fixe les droits d'accès à la création des fichiers et répertoires.

Syntaxe de umask  est umask  x Où x est un nombre exprimé sous forme octale qui 
déterminera les permissions par complétion (AND) de 0666 pour les fichiers et de 
0777 pour les répertoires qui seront créés ultérieurement par les appels systèmes 
creat et mkdir


La commande umask détermine les droits d'accès aux nouveaux fichiers et répertoires, on peut la placer dans le fichier « .profile ».

Le « mask » par défaut est positionné à «022»    pour le renforcer : 027
 Un user créera des répertoires en mode « 755 » et   les fichiers seront créés en mode « 644»
pour umask=022 

777 – 022 = 755 (repertoires)  et 666 – 022 = 644 (fichiers)
    
 000 010 010                                                                                               
 d rwx r-x  r-x           rep1   

000 010 010                                                                                     
- rw-  r--  r--   fic1
 

Exemple

umask 0022
 $ mkdir repertoire
 $ touch fichier
 $ ls –l  (pour voir les droits, vs pouvez changer le umask par 0027 par exemple) 

Chmod 022 permet d'accorder l'autorisation d'écriture au groupe et aux autres. La commande umask 022 refuse l'accès en écriture au groupe et aux autres.

La commande FIND

  Les possibilités de find :

find  / -name  fichier  -print
Recherche par nom de fichier
find  -user  nom -print
Recherche par nom de propriétaire-fichier
find  /home -mtime n –print
Recherche des fichiers modifiés il y a n jrs
find  / -newer  ficref  -print
Recherche des fichiers modifiés récemment
find  /usr/bin  -type d  -print
Recherche des fichiers suivant leur type
find  /home  -perm 764 -print
Recherche selon les droits d’accès


Bonne Chance 

mohameddouhaji7@gmail.com