Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante...

23
Administration Linux Introduction Nathaël Pajani & David Odin CPE Lyon cbea - 2017 Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 1 / 97 ADMINISTRATION LINUX —PLAN Historique et Définitions Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 2 / 97 VERS LORIGINE DES TEMPS Adoption grandissante des systèmes GNU/Linux Une origine qui remonte aux années 1970 Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 5 / 97 Notes Notes Notes

Transcript of Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante...

Page 1: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

Administration LinuxIntroduction

Nathaël Pajani & David Odin

CPE Lyon

cbea - 2017

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 1 / 97

ADMINISTRATION LINUX — PLAN

Historique et Définitions

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 2 / 97

VERS L’ORIGINE DES TEMPS

Adoption grandissante des systèmes GNU/LinuxUne origine qui remonte aux années 1970

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 5 / 97

Notes

Notes

Notes

Page 2: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

PETIT APERÇU

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 6 / 97

GNU

GNU :https://commons.wikimedia.org/wiki/GNU

GNU’s Not Unix - Clone d’UNIX - LibreGNU - Richard Stallman - Septembre 1983Un projet plein de logicielsUn noyau : HurdVous avez dit libre ? - FSF - octobre 1985

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 8 / 97

LINUX

Linux :

Linus Torvalds - Un "simple" Noyau - Septembre 1991Devient autonome en 3 mois. Licence GPL début 1992.13 Mars 1994 : version 1.0 : x86 - 176 250 lignes2005 : Utilisation de GIT pour remplacer BitKeeper22 Juillet 2011 : version 3.0"Hier" : version 3.13 : 29 architectures - 18 115 021 lignes12 Avril 2015 : version 4.0Aujourdhui : version 4.4 : 31 architectures - 27 965 437 lignes

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 10 / 97

Notes

Notes

Notes

Page 3: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

GNU/LINUX

GNU/Linux :POSIX "compliant"Systèmes stables, modulaires, pour des applications multiples.

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 12 / 97

LICENCES LIBRES

Les licences FSFCopyleftFSF : 4 libertés : Exécution, Étude, Modification, Redistribution.La licence GPLv2 :Commercialisation - Mise à disposition des sources -Recompilation - Transmission des droitsLa licence GPLv3, évolution de la GPLv2 - TivoïsationLGPL, AGPL et FDL

Parmi d’autres :Licences Creative CommonsLicences BSDLicences de projets (Mozilla, Apache, . . . )

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 14 / 97

QU’EST CE QU’UNE DISTRIBUTION

Une distribution c’est :Un ensemble cohérent - StableLa colle qui tient le toutDédié à un usage . . . ou pasQuelques exemples : Debian GNU/Linux - Red Hat - SUSE -Gentoo - . . .https://en.wikipedia.org/wiki/List_of_Linux_distributions

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 16 / 97

Notes

Notes

Notes

Page 4: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

ADMINISTRATION LINUX — PLAN

Architecture

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 17 / 97

ÉLÉMENTS COMPOSANT UN SYSTÈME GNU/LINUX

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 20 / 97

LE CŒUR DU SYSTÈME

Le Noyau Linux est un noyau monolithique modulaireUn package de services fondamentaux.

OrdonnanceurGestion de la mémoireIPC (Inter process communication)VFS (Virtual File System)Contrôle d’accès aux ressourcesGestion des timers, locks et interruptions.

Des services additionnels à la carte.RéseauSystèmes de fichiersDrivers (USB, Son, . . . )

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 21 / 97

Notes

Notes

Notes

Page 5: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

SYSCALLS ET LIBC

Les appels système : interface entre deux mondesEspace utilisateur et espace noyauLes appels système : 346 dans le noyau 3.8-rc5Appel par la LibCNe pas confondre : L’utilisateur ’root’ est en espace utilisateur !

La LibC : La base du système et de l’espace utilisateurLe cœur du systèmeLiée au noyauLiée au compilateurDifférentes versions

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 22 / 97

TOUT EST FICHIER

Les droits des fichiers : une des bases des systèmes UNIXUn dossier : un type particulier de fichier qui décrit son contenuLes inodes : représentation des fichiers pour le noyauLes périphériques : des fichiers spéciaux appelés nœuds (devicenodes)Des fichiers virtuels : /proc et /sys7 types de fichiers :

c b l s d - p

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 23 / 97

LES SYSTÈMES DE FICHIERS

Grande variété : FAT, EXT*, REISERFS, UBIFS, NFS, XFS, . . . ,ZFSJournalisésSpécifiques (JFFS2, UBIFS, CRAMFS, . . . )Non persistants : tmpfs, procfs, sysfsAccès par les points de montageVFS

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 24 / 97

Notes

Notes

Notes

Page 6: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

ARBORESCENCE

L’origine de tout, après la graine, la racine : ’ / ’FHS : Filesystem Hierarchy Standard

/bin, /sbin, /usr/bin, /usr/sbin : exécutables (binaires ou scripts)/lib, /usr/lib : bibliothèques/etc : configuration/dev : fichiers d’accès aux périphériques/proc, /sys : interfaces virtuelles avec le noyau/home/*, /root : répertoires utilisateurs et administrateur/mnt, /media : Points de montage/usr/share : fichiers indépendants de la plateforme (non binaires)/var : fichiers "variables" : bases de données, files de messages,logs, . . ./tmp : fichiers temporaires

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 25 / 97

DÉMARRAGE DU SYSTÈME

Étapes successives :Firmware - BIOSBootLoaderNoyau LinuxInitramfs ?"init" - le père de tous les processus - PID = 1Scripts de démarrage et "runlevels"

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 26 / 97

SHELL

Interface entre le système et l’utilisateurFait partie de la norme POSIXTexte ou GraphiqueObligatoire ?Ne pas confondre le shell avec le terminal :

Terminal : un ensemble de périphériques qui permet decommuniquer avec un ordinateur.Shell : interpréteur de commandes.

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 27 / 97

Notes

Notes

Notes

Page 7: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

ADMINISTRATION LINUX — PLAN

Le shell bash

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 28 / 97

BASH

Bourne Again SHell.Entièrement compatible avec sh (le bourne shell).Implémentation GNU d’un shell POSIX.Nombreuses extensions.Astuces d’édition :

<Tab> permet de compléter plein de choses,<Ctrl-r> rappelle une ancienne commande,etc.

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 31 / 97

CHANGER DE RÉPERTOIRE COURANT

cd (Change Directory)cd nom_du_rep

cd (revient au répertoire personnel)cd - (revient au répertoire précédent)

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 33 / 97

Notes

Notes

Notes

Page 8: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

COMMANDES LIÉES AUX RÉPERTOIRES

pwd (Print Working Directory) permet d’afficher le répertoirecourant.ls (LiSte) permet de lister les fichiers du répertoire courant.

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 34 / 97

? ET *

Uniquement pour sélectionner des fichiers du répertoire courant? permet de remplacer n’importe quel caractère (un seul)

* permet de remplacer n’importe suite de caractères(éventuellement vide)exemples :

fr* tout fichier commençant par fr*r* tout fichier comportant au moins un r* tout fichierd*e tout fichier commençant par un d et se terminant par un e?d* tout fichier dont la deuxième lettre est un d

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 36 / 97

[] ET [!]

Sélection plus fine qu’avec ?

Permet de choisir quels caractères sont possibles ou pas.exemples :

[abc]* les fichiers commençant par a, b, ou c.[!abc]* les fichiers ne commençant pas par a, b, ou c.[A-Z]* les fichiers commençant par une majuscule.fonctions.[ch] les fichiers fonctions.c et fonctions.h

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 37 / 97

Notes

Notes

Notes

Page 9: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

EXPANSION DES ACCOLADES

Pas uniquement réservé aux fichiers,Permet de sélectionner des morceaux de mots plutôt que descaractères isolés.exemples :

fichier.{cpp,h} les fichiers fichier.cpp et fichier.hb{ar{re,rage},ruit}s les mots barres, barrages etbruitsc{hat,hien,ourge} les mots chat, chien et courge

Toutes les combinaisons sont explorées, que les fichierscorrespondants existent out pas.

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 38 / 97

ALIAS

Permet de créer un autre nom pour une commandeou pour une commande complexeou de rédéfinir une commande existante !alias ls=’ls --color=auto’

alias l=’ls -lA’

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 40 / 97

VARIABLES D’ENVIRONNEMENT

contiennent du texteaffectation : VAR=valeur

Attention ! Pas d’espace !!!

utilisation : $VAR, par exemple : echo $VAR

locales à un processus, sauf exportées.export VAR

extension bash : export VAR=valeur

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 41 / 97

Notes

Notes

Notes

Page 10: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

QUELQUES VARIABLES PARTICULIÈRES

$USER le nom de l’utilisateur.$HOME le répertoire personnel de l’utilisateur.$SHELL le nom du shell en cours d’utilisation (/bin/bash)$PWD le nom du répertoire courant$OLDPWD le nom du répertoire précédent (cd -)$PATH la liste des chemins contenants des programmes$? le résultat du dernier programme appelé.

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 42 / 97

PROMPT

Nommé « Invite de commande » en françaisVariable particulière affichée quand le shell attend une commandePS1

certaines séquences ont un sens particulier :\d sera remplacé par la date\t sera remplacé par l’heure courante\h sera remplacé par le nom de la machine\u sera remplacé par le nom de l’utilisateur\w sera remplacé par le répertoire courant

Exemple : PS1=’\d-\t:\h|\w $ ’

mon. febr. 04-10:25:09:tpi12.cpe.fr|~ $

Peut contenir des séquences de changement de couleur

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 43 / 97

˜/.bashrc

permet de sauvegarder sa configurationrelu à chaque ouverture de terminalbon endroit pour mettre ses alias, un $PATH personnalisé, unprompt, etc.

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 44 / 97

Notes

Notes

Notes

Page 11: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

COMMANDES

Plusieurs niveaux de complexité :

commande simple : lscommande avec paramètres : ls -l

deux commandes à la suite : ls -l;echo "coucou"

deux commandes en parallèle : ls -l&echo "coucou"

deux commandes, la deuxième n’étant exécutée que si lapremière réussit : ls fichier&&echo "fichier existe"

deux commandes, la deuxième n’étant exécutée que si lapremière échoue :ls fichier||echo "fichier n’existe pas"

Variable valide juste le temps d’une commande :VAR=value commande

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 46 / 97

REDIRECTIONS

Rediriger les affichages d’une commande dans un fichier :ls 1> fichier ou ls > fichier

Rediriger les affichages d’une commande à la fin d’un fichier :ls 1>> fichier ou ls >> fichier

Rediriger les erreurs d’une commande dans un fichier :ls 2> /dev/null

Rediriger les erreurs d’une commande à la fin d’un fichier :gcc main.c 2>> erreurs

Rediriger l’entrée (le clavier) d’une commande depuis un fichier :wc < entree

Rediriger les affichages de la commande1 vers l’entrée de lacommande2 : commande1 | commande2

du -a | sort -n

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 47 / 97

PROTECTION, SUBSTITUTION

Les " permettent de protéger leur contenu contre lesremplacements de globbing ou d’espace, mais pas de variable :export VAR=value;ls "* $VAR" essaie vraiment d’accéder àun fichier nommé "* value"

Les ’ font pareil, mais empêchent également le remplacement devariable : ls ’$VAR’ essaie d’accéder à un fichier nommé "$VAR"

‘‘ exécute ce qu’il y a entre les ‘ et le remplace par le résultat(l’affichage) de la commande : rm ‘ls *c‘

$() même chose$(()) permet de réaliser des calculs simple : echo $((3 + 4))

affichera 7

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 48 / 97

Notes

Notes

Notes

Page 12: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

JOBS

Notion parallèle à celle de processusbash gère une liste de jobs mis en attentecommande & crée un jobArrêter un processus avec Ctrl-Z aussifg place le job courant (arrêté ou mis en arrière plan) en avantplanbg place le job courant (arrêté) en arrière planNotes :

Ctrl-C permet d’interrompre définitivement un processus / jobCtrl-D permet de terminer une entrée au claviernohup commande permet de créer un processus qui ne disparaitrapas.

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 50 / 97

TESTS

TOUTES les commandes renvoient un état./bin/true renvoie toujours vrai./bin/false renvoie toujours faux.La commande /usr/bin/[ permet de tester des états sur unfichier :

[ -e fichier ] renvoie vrai si fichier existe[ -d fichier ] renvoie vrai si fichier est un répertoire[ fichier1 -nt fichier2 ] renvoie vrai si fichier1 est plusrécent que fichier2[ chaine1 == chaine2 ] renvoie vrai si les deux chaînes sontégales

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 52 / 97

IF

S’utilise avec un testif commande1 ; then commande2 ; fi n’exécute commande2que si commande1 a renvoyé vrai.if commande1 ; then commande2 ; else commande3 ; fi

if [ -e coucou ]thenecho "le fichier coucou existe."

fi

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 53 / 97

Notes

Notes

Notes

Page 13: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

CASE

Proche d’un switch du CCommence par case $variable in

Se termine par le mot-clef esacChaque « cas » commence par un mot suivi d’une parenthèseChaque « cas » se termine par un double point-virgule : ;;default: est remplacé par *)

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 54 / 97

CASE : EXEMPLE D’UTILISATION

case "$1" inyes)

echo "Ok, you said yes";;

no)echo "Why you said no?";;

*)echo "yes or no are the only valid answer!";;

esac

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 55 / 97

WHILE

Même genre de construction que le if

while condition ; do commande ; done

La partie entre do et done est exécutée tant que la condition estvraie.

i=0while [ $i -lt 10 ]doecho $ii=$((i + 1))

done

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 56 / 97

Notes

Notes

Notes

Page 14: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

FOR

Plus proche d’unforeachN’utilise pas de condition, mais une liste.for i in 1 2 3; do echo $i; done

for i in $(seq 1 100); do echo $i; done

for i in *doecho "fichier $i"

done

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 57 / 97

ADMINISTRATION LINUX — PLAN

Commandes de base

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 58 / 97

LE MANUEL D’UNIX

LA commande la plus importante d’Unix

man commande

man man

man ls

man bash (commande)man 2 fork (appel système)man 3 scanf (fonction C)man 7 operator (concept)

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 61 / 97

Notes

Notes

Notes

Page 15: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

MAN’S ACOLYTES

which donne le chemin complet d’une commande

$ which ls/bin/ls

apropos affiche toutes les pages man liées à un mot, avec unpetit résumé

$ apropos iceweaseliceweasel (1) - a Web browser for X11 derived from the Mozilla browser

file affiche des informations à propos d’un fichier

$ file bla.pngbla.png: PNG image data, 130 x 138, 8-bit/color RGB, non-interlaced$ file bla.cbla.c: ASCII text

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 62 / 97

CRÉATION / DESTRUCTION

touch crée un fichier vide ou le met à l’heure

touch bla.c

rm supprime un fichier

rm fichierrm -R repertoire

ln crée un deuxième nom pour un fichier ou un répertoire

ln ancien_nom nouveau_nomln -s ancien_nom nouveau_nom

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 64 / 97

RÉPERTOIRE

mkdir crée un répertoire ou une hiérarchie

mkdir un_repertoiremkdir -p une/suite/de/repertoire

rmdir supprime un répertoire vide

rmdir un_repertoire

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 65 / 97

Notes

Notes

Notes

Page 16: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

LISTE

ls liste des fichiersQuelques options :

-l affiche plus de détails-a affiche les fichiers cachés (qui commencent par un point)

find trouve tous les fichiers correspondants à un critère.Exemples d’utilisations :

find -name "machin.txt"find -mtime -1find . -mtime +10 -size +50000c -exec rm {} \;find . -name "*~"-print | xargs rm -f

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 66 / 97

COPIE ET DÉPLACEMENT

cp copie un ou plusieurs fichiers

cp fichier1 fichier2cp fichier1 fichier2 repertoirecp -r repertoire1 repertoire2

mv deplace un ou plusieurs fichiers

mv fichier1 fichier2mv fichier1 fichier2 repertoire

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 67 / 97

UTILISATION DES DISQUES

du indique la taille disque utilisée par le répertoire courant

dudu -hdu -a | sort -n

df indique le taux d’utilisation des disques$ dfSys . de f i c h i e r s 1K−blocs U t i l i s e Dispon ib le U t i% Monte surr o o t f s 48060296 45318084 2253940 96% /udev 10240 0 10240 0% / devtmpfs 404924 512 404412 1% / run/ dev / sda1 48060296 45318084 2253940 96% /tmpfs 5120 0 5120 0% / run / locktmpfs 1591140 228 1590912 1% / run / shm/ dev / sda3 428814472 404863392 2168552 100% / home

quota indique l’utilisation disque de l’utilisateur courant, avec seslimites.

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 68 / 97

Notes

Notes

Notes

Page 17: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

DROITS ET PROPRIÉTÉ

chmod permet de changer les droits d’accès d’un fichier/répertoire

chmod +x script.shchmod 664 fichierchmod -R o-rw *

chown permet de changer le propriétaire d’un fichier/répertoire(réservé à root)

chown david:david fichier

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 69 / 97

PS

ps affiche les processus en cours d’exécutionExemples d’utilisation :

ps aux

ps fax

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 71 / 97

TOP

top affiche les processus en cours d’exécution en live.

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 72 / 97

Notes

Notes

Notes

Page 18: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

KILL

Envoie un signal à un processus.Quelques signaux :

kill -INT 312 interruption (envoie le signal INT au procéssus312)kill -USR1 2093

killall -TERM exercice1

kill -l (liste les signaux utilisables, voir man 7 signal et man kill)

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 73 / 97

AFFICHAGE DE TOUT UN FICHIER

cat Affiche le contenu d’un ou plusieurs fichiersless Affiche le contenu d’un fichier, en permettant de le parcourir,faire des recherches, etc.tac Affiche le contenu d’un ou plusieurs fichiers, à l’enverssort Trie les lignes d’un fichier.

-n tri numérique-r tri à l’envers

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 75 / 97

UNE PARTIE DU FICHIER

tail Affiche la fin d’un fichiertail -n 20 fichier affiche les 20 dernières lignes de fichiertail -f fichier affiche fichier indéfiniment

head Affiche le début d’un fichierhead -n 20 fichier affiche les 20 premières lignes de fichier

grep Affichier uniquement les lignes comportant un motif donné.grep coucou fichier affiche toutes les lignes de fichier quicomportent coucougrep -i "^bon"fichier affiche toutes les lignes de fichier quicommencent par Bon ou bongrep -v coucou fichier affiche toutes les lignes de fichier quine comportent pas coucou

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 76 / 97

Notes

Notes

Notes

Page 19: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

TRANSFORMATIONS

cut récupère des colonnes ou des champs d’un fichiercut -d: -f 5 /etc/passwd

tr change certains caractères par d’autres dans un fichiertr "[A-Z]""[a-z]"< /etc/passwd

diff affiche les différences entre deux fichiers.diff -u fichier.c fichier.c~

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 77 / 97

SED – PRÉSENTATION

Stream EDitorÉditeur de fichier non interactifMême famille que ed, ex, viExemples

sed ’s/coucou/hello/g’ fichier remplacementsed 10q fichier émulation de headsed ’/coucou/d’ fichier supprime les lignes contenantcoucoused ’1,10d’ fichier supprime les lignes 1 à 10

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 79 / 97

AWK – PRESENTATION

Alfred Aho, Peter Weinberger et Brian KernighanComplément de sed

Filtre de texte, ligne par ligneSélection de lignes très pousséeVéritable langage de programmation

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 81 / 97

Notes

Notes

Notes

Page 20: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

AWK – STRUCTURE GÉNÉRALE

Suite de paires test{commandes}

Les commandes seront exécutées pour toutes les lignes pourlesquelles test est vrai.Utilisable en ligne de commande :awk ’/coucou/{print $2, $1}’ fichier

Via un fichier :awk -f commandes fichier

Par un script (#!/usr/bin/awk -f) :./script.awk < fichier

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 82 / 97

AWK – LES TESTS

1 (ou rien) vrai pour toutes les lignesa==1 vrai si la variable a vaut 1/bonjour/ vrai pour les lignes qui contiennent bonjoura~/bonjour/ vrai si la variable a contient bonjour/foo/,/bar/ vrai entre la ligne qui contient foo et celle quicontient barBEGIN vrai une fois avant la première ligneEND vrai une fois après la dernière ligne

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 83 / 97

AWK – VARIABLES

Non typées : chaine, entier, flottantCréées à la voléea=1, t[1]=a, ta[$0]++

$0 contient la ligne courante$1, $2, $4 contiennent les colonnes 1, 2 et 4 de la lignecourante

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 84 / 97

Notes

Notes

Notes

Page 21: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

AWK – VARIABLES PRÉDÉFINIES

FS : séparateur de colonneNF : nombre de colonnesNR : nombre de lignes luesOFS : séparateurs de colonnes lors de l’affichageORS : séparateurs de lignes lors de l’affichage

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 85 / 97

AWK – EXEMPLES

awk ’END{print NR}’ < fichier affiche le nombre de lignesde fichierawk ’/coucou/ {print "$2"}’ < fichieraffiche le deuxièmechamp des lignes qui comportent "coucou"awk ’NR < 11’ < fichier n’affiche que les 10 premières lignesawk ’!a[$0]++’ < fichiern’affiche que les lignes uniques d’unfichier.

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 86 / 97

ADMINISTRATION LINUX — PLAN

Travail collaboratif

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 87 / 97

Notes

Notes

Notes

Page 22: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

LE TRAVAIL COLLABORATIF

Presque inhérent au développement logiciel.Implique de pouvoir partager des informations (notemment ducode) facilement.Besoin de suivi des modificationsNecessite de pouvoir identifier les modifications -> diff

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 90 / 97

SVN : PRÉSENTATION

Subvertion (SVN) - licence ApacheRemplaçant de CVS, en reprenant les mêmes principesProjet débuté en février 2000Dépôt centralisé et uniqueComble les lacunes de CVS : renommage des fichiers, gestiondes propriétés des fichiers/dossiers, numéros de révision globaux,...Web : avec suivi des bugs et wiki : Trac ou Redmine.

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 92 / 97

SVN : UTILISATION - SERVEUR

Création d’un dépôt : sur le serveur.

svnadmin create /path/to/projet/mon_projet

Éditer le fichier/path/to/projet/mon_projet/conf/svnserve.conf

Éventuellement créer le fichier de mots de passe.

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 93 / 97

Notes

Notes

Notes

Page 23: Administration Linux - Introduction - nathael.org · Administration Linux ... Adoption grandissante des systèmes GNU/Linux Une origine qui remonte ... Rediriger les affichages de

SVN : UTILISATION - CLIENT

svn cmd options

checkout (co) Récupère en local une version ainsi que sesméta-données depuis le dépôt.add et delete Ajoute ou supprime un fichier ou une arborescenceen local.status, info, log, diff Infos sur la copie local ou son historiqueprop* (prop[del, edit, get, list]) : Modification des propriétésmove Déclare le déplacement d’une ressource.commit (ci) Enregistre les modifications locales dans le dépôtcréant ainsi une nouvelle version.update (up) Met à jour la copie locale existante depuis la dernièreversion disponible sur le dépôt.... (tags, branch and merge, ...)

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 94 / 97

GIT : PRÉSENTATION

GIT - the stupid content tracker - Licence GPLv2Créé par Linus Torvalds et quelques autres développeurs dunoyau Linux en 2005.Rapide, et décentralisé (distribué)À l’opposé de CVS (take CVS as an example of what not to do; ifin doubt, make the exact opposite decision)Web : dépôt seul : cgit ou gitweb - avec outils : Pagure, Github,GitLab, ...

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 96 / 97

GIT : UTILISATION

git cmd options

init Crée un nouveau dépôt (voir –bare pour un dépôt "distant")clone Clone un dépôt distantadd Prépare l’ajout de nouveaux objets (fichiers ou morceaux defichiers)status, log, diff Infos sur la copie local ou son historiquecommit Intègre les nouveaux objets au dépôt local.fetch et pull Récupère les modifications d’un dépôt distant.push Pousse des modifications sur un dépôt distant.... (tags, branch and merge, ...)

Nathaël Pajani & David Odin (CPE Lyon) Administration Linux cbea - 2017 97 / 97

Notes

Notes

Notes