• Aucun résultat trouvé

Présentation de Linux

N/A
N/A
Protected

Academic year: 2022

Partager "Présentation de Linux"

Copied!
49
0
0

Texte intégral

(1)

Présentation de Linux

Présentation d’un gestionnaire de tâches

Travaux pratiques encadrés tout au long de la

session

(2)

Nœuds de calcul

Stockage haute performance

Stockage capacitif

Réseau

(3)

8 octobre 2013 Olivier Collin

(4)

1971 : Thompson - 1ere version

1973 Ritchie - 2e version (C)

1975 1ere diff commerciale

1978 BSD (Université)

1979 v7

1982 SunOS

1983 Système V

1992 Solaris

2 types d’UNIX

• Système V (industrie informatique)

• BSD (éducation, université)

1967 Projet Multics (GE, Bell, MIT)

Thompson et Ritchie dans les années 70

(5)

multi-tâche

multi-utilisateur

disponibilité

langage de commande

réseau

nombreux utilitaires

système de fichiers

système gère les appels au noyau

disponible sur une large gamme de machines

extensible

(6)
(7)

UNIX comporte :

Plusieurs shells (interface de commandes)

Choix de l’interface graphique

Nombreuses commandes pratiques et combinables

Un système de fichier hiérarchique

Compilateur C et autres langages

(8)

Shell X windows

Mode texte (VT100) Mode graphique

Unix

(9)

commande: nom du programme

options : modulent le comportement du programme

arguments : souvent le nom des fichiers sur lesquels on travaille

commande (options) argument1 argument2 ... argumentN

Attention:

• différence majuscules/minuscules Toto <> toto <> TOTO

• espace comme séparateur

(10)

Messages d’erreurs

command not found n’existe pas (ou pas dans le chemin) cannot execute

permission denied problème de droits d ’accès usage: problème avec les options

arguments too long problème avec les arguments (ex ls ) bus error

segmentation fault plantage du programme

Etc.

(11)

3 types d’entrées/sorties

entrée standard STDIN clavier sortie standard STDOUT écran erreur standard STDERR écran

Processus

STDIN STDOUT

STDERR

STDOUT STDERR

STDIN

(12)

Redirection

Avec les opérateurs > et <

ls > listing Redirige la sortie de la commande ls dans le fichier listing

sort < listing Redirige l’entrée de la commande sort

Rq: on verra plus tard ls | sort

(13)

compte UNIX:

nom d’utilisateur : login mot de passe : password

après authentification, lancement d ’ un shell (sh, csh, ksh, etc.) qui est un interpréteur de commandes

existence d’un compte spécial : root

• réservé à l’administrateur système

• possède tous les droits

(14)

Sur PC : telnet de windows Sur Mac: NCSA telnet, macIP Sur UNIX: telnet

Lance une session en mode texte sur une machine UNIX.

Clients telnet

(15)

Représentation sous forme d’arbre

• racine = début de l’arbre

• feuilles = fichiers ou répertoires vides

racine

rep2 rep1

fichier1 fichier2

(16)

1. Noble, W. S. A quick guide to organizing computational biology projects. PLoS Comput. Biol. 5, e1000424 (2009).

(17)

/

/var

dev /etc /sbin /home /usr

Uucp Cron

lp Init.d

/tmp

Rc0.d Rc2.d

adm lp mail spool

default Rc.d Rc1.d Rc3.d

(18)

rep1 rep2

rep3 rep4

/ cd rep1

cd ..

cd ..

cd .

iznogoud [13]%ls -a

./ ../ commande* majGCG.pl* utilisateurs

(19)

Nom absolu: nom du fichier à partir de la racine

Nom relatif : nom du fichier à partir du répertoire courant

rep2 /rep1/rep3/fichier1

./rep3/fichier1

../rep1/rep3/fichier1 Absolu

Relatif

racine (/)

rep1

rep3 fichier2

fichier1

O P

O P

Pour référencer le fichier fichier1

(20)

rep2 racine (/)

rep1

rep3 fichier2

fichier1

O

P

Pour aller dans le répertoire rep3

cd /rep1/rep3

P

O cd rep3

cd ../rep1/rep3 Absolu

Relatif

(21)

Définition: chaîne de caractères non structurée (du point de vue du système)

nom de fichier: 256 caractères

éviter les caractères suivants:

* ? < > ! / \ qui sont des caractères réservés du shell

fichiers spéciaux : commencent par un .

invisibles avec la commande ls sans options

(22)

-rwxr--r-- 1 ocollin 1223 Jun 18 1997 majGCG.pl

Droits d’accès

Possesseur

Taille

Date modification

Nom du fichier

Nombre de liens

Résultats de la commande ls -l

(23)

commande pwd: donne le répertoire courant Exemple :

commande ls : donne le contenu d’un répertoire

ses options permettent d’obtenir plus de renseignements eventail des options :

/usr/bin/ls [ -aAbcCdfFgilLmnopqrRstux1 ] iznogoud [24]%pwd

/util2/si/olivier/Mailcheck

(24)

Option Signification

-a affiche tous les fichiers, même les fichiers cachés

-F ajoute des signes permettant de différencier les exécutables (*), les répertoires (/), les liens symboliques (@)

-l format long avec les permissions, le propriétaire, la taille, la date, etc.

-R liste les sous-répertoires s'ils existent -s affiche la taille des fichiers en blocs

-t affiche en fonction de la date de dernière modification

Quelques options:

Exemple d’utilisation: ls -lR

(25)

cp : copie(duplication) de fichiers

cp toto toto.sav

copie le fichier toto dans le fichier toto.sav

il faut posséder les droits de lectures sur le fichier source et les droits d’écritures dans le répertoire destination

cp toto tutu titi sauvegarde

copie les fichiers toto tutu titi dans le répertoire sauvegarde

(26)

ln : met en place des liens entre des fichiers ln fichier1 fichier2

crée un lien appelé fichier2 vers le fichier1 Comparable aux raccourcis Windows et aux alias MacOS

rep1

fich1 fich2

ln fich2 lien

rep1

fich1 fich2 lien

(27)

mv : renomme un fichier

rm : efface un fichier

mv fichier1 fichier2 iznogoud [64]%ls fichier1

iznogoud [65]%mv fichier1 fichier2 iznogoud [66]%ls

fichier2

rm fichier

iznogoud [67]%rm fichier2

rm: remove fichier2 (yes/no)? y iznogoud [68]%ls

iznogoud [69]%

Option -r permet la récursivité On peut avec mv renommer ou déplacer un fichier

(28)

mkdir : création d’un répertoire

rmdir : effacement d’un répertoire

iznogoud [71]%mkdir rep1 iznogoud [72]%ls

rep1/

iznogoud [73]%rmdir rep1 iznogoud [74]%ls

iznogoud [75]%

(29)

d rwxrwxrwx

permissions des autres permissions du groupe

type de fichier

permissions du possesseur

répertoire fichier etc.

r : lecture w: écriture x: exécution - : pas de droit

(30)

On modifie les droits d’accès avec la commande chmod

-rw-r--- 1 ocollin 0 Jun 23 13:57 fich1 olrik [6]%chmod a+r fich1

-rw-r--r-- 1 ocollin 0 Jun 23 13:57 fich1

chmod [ugoa ]{ + | - | = } fichier u : utilisateur (user)

g : groupe (group) o : autres (others) a : tous (all)

+ : ajouter les droits - : retirer les droits

= : conserver les droits

Exemple:

Les options permettent de modifier le comportement de la commande

(31)

On modifie l’identité du propriétaire avec la commande chown

# ls -l licence.dat

-rw--- 1 ocollin s_info 99 Sep 23 1998 licence.dat

# chown leroux licence.dat

# ls -l licence.dat

-rw--- 1 leroux s_info 99 Sep 23 1998 licence.dat

(32)

cat, more : affichent le contenu d’un fichier à l’écran

head, tail: affichent le début et la fin d’un fichier cat : affiche tout le fichier

permet affichage caractères non imprimables more : affichage page par page

possibilité de recherche

head -30 .cshrc Affiche les 30 1eres lignes de .cshrc tail -f syslog Permet de suivre l’accroissement du

fichier syslog

(33)

La commande find permet de localiser un fichier dans l’arborescence Syntaxe simplifiée:

find repertoire_depart -name nom_fichier -print

(34)

Appel avec la commande man sujet Organisation du manuel en sections

Section Contenu

1 commandes générales 2 appels systèmes

3 Bibliothèques 4 Périphériques

5 format des fichiers 6 jeux et démos

7 Troff

8 utilitaires de maintenance

(35)

Type Section NAME

Description sommaire SYNOPSIS

Utilisation et options DESCRIPTION

Description détaillée OPTIONS

FILES

Fichiers associés SEE ALSO

Commandes associées BUGS

(36)

User Commands man(1)

NAME

man - find and display reference manual pages

SYNOPSIS

man [ - ] [ -adFlrt ] [ -M path ] [ -T macro-package ] [-s section ] name ...

man [ -M path ] -k keyword ...

man [ -M path ] -f file ...

DESCRIPTION

The man command displays information from the reference manuals. It displays complete manual pages th

:

OPTIONS

The following options are supported:

-a Show all manual pages matching name within the

(37)

man -k ou apropos

man -f ou whatis

whereis

Fichiers man disponibles pour une commande donnée

Description succinte d’une commande donnée

Liste des fichiers relatifs à une commande

(38)

Emacs : famille d’éditeurs

• GNU Emacs : tourne sous X, VT100

• microEmacs : tourne sous VT100

GNU Emacs : très puissant Editeur de texte

Modules pour de nombreux langages (C, Perl, HTML) Lecteur News

Lecteur Mail etc.

(39)

BSD :

1- lpr -Pimprimante nom_fichier 2- lpq

3- lprm

Système V

1- lp -dimprimante nom_fichier 2- stat

3- cancel

1- Impression 2- File d ’attente 3- Suppression

(40)

• utilisation interactive

• personnalisation de l’environnement

• élaboration de programmes (scripts) Utilisation

Familles de shells

Although most users think of the shell as an interactive command interpreter, it is really a programming language in which each statement runs a command. Because it must satisfy both the interactive and programming aspects of command execution, it is a strange language, shaped as much by history as by design.

Brian Kernighan & Rob Pike

Bourne shell C shell

Korn shell Toronto C shell Bourne Again shell

Z shell

(41)

Noyau Unix et drivers

Commandes intégrées

Shell

ls vi

Utilisateur

(42)

Shell Binaires Commentaires Fichiers

Bourne shell /bin/sh Le plus simple .profile

Bourne Again shell /bin/bash Remplacant GNU du Bourne shell .bash_profile .bashrc

Korn shell /bin/ksh Le successeur du Bourne shell .profile

C shell /bin/csh Un shell avec une syntaxe basée sur le langage C .cshrc .login

Toronto C shell /bin/tcsh Le C shell amélioré .tcshrc .cshrc

.logout

Z shell /bin/zsh .

(43)

redirection des entrées/sorties utilisation des métacaractères

existence de variables pour personnaliser son environnement

existence d'un historique des commandes possibilité de création d'alias

existence de structures de contrôle pour l'écriture de programmes contrôle des processus

B.Joy - Associé aux UNIX BSD

(44)

fichiers spéciaux

.cshrc : lu à chaque lancement d’un C- shell

: contient les instructions de configuration du shell .login : lu à chaque session

.logout: lu à chaque fin de session

: contient des instructions de nettoyage

(45)

Contrôlent le C-shell, c.a.d. la manière dont il se comportera dans l’utilisation de ses fonctions:

Exemples: filec, noclobber, history, etc.

Initialisation: set var = valeur Annulation: unset var

Affichage: set

(46)

Permettent de définir l’environnement dans lequel vont tourner les programmes

Par convention toujours écrites en majuscules

Variable Signification

HOME Le répertoire de base de l'utilisateur

PATH Le chemin de recherche des commandes TERM Le type du terminal

USER Le nom de l'utilisateur EDITOR L'éditeur par défaut EXINIT

LOGNAME Le nom de l'utilisateur

MAIL Le fichier qui contient le courrier électronique PRINTER L'imprimante par défaut

PWD Le répertoire courant

SHELL Le chemin absolu du shell

TERMCAP Le fichier de gestion du terminal

(47)

Initialisation avec la commande setenv Affichage avec la commande printenv

iznogoud [42]%echo $TERM xterm

iznogoud [43]%setenv TERM vt100 iznogoud [44]%echo $TERM

vt100

iznogoud [45]%printenv TERM vt100

(48)

Syntaxe Utilisation Commande > fichier envoie la sortie de la commande vers fichier

Commande >! Fichier envoie la sortie de la commande vers fichier et outrepasse l'option noclobber

Commande >> fichier ajoute la sortie de la commande à fichier

Commande >>! Fichier ajoute la sortie de la commande à fichier en outrepassant l'option noclobber

Commande < fichier la commande reçoit en entrée le contenu de fichier Commande >& fichier envoie la sortie standard et l'erreur standard dans fichier

Commande >&! Fichier envoie la sortie standard et l'erreur standard dans fichier et outrepasse l'option noclobber

Commande >>& fichier ajoute la sortie standard et l'erreur standard dans fichier

Commande >>&! Fichier ajoute la sortie standard et l'erreur standard dans fichier et outrepasse l'option noclobber

(commande > fichier1) >&

fichier2

envoie la sortie de commande dans fichier1 et l'erreur dans fichier2

(49)

Permet d’élaborer des outils complexes à partir d’outils simples commande1 | commande2

Le résultat de la commande1 est envoyé à la commande 2 Quelques exemples:

• ls -l | lpr

• cat .cshrc | more

• cat fichier | head -75 | tail -50

• who | sort

Références

Documents relatifs

(1 pt) Quelle sont les points de similarité entre les individus de la même classe et les points de dissimilarité entre les individus de classes

Lancement de la commande avec redirection du contenu du fichier vers l'entrée standard du processus lancé. commande

✔ Pour chaque exercice, la compétence sera évaluée suivant quatre items: Acquis (si tu sais faire), Presque acquis (si tu sais presque faire mais qu'il reste des petites erreurs),

✔ Pour chaque exercice, la compétence sera évaluée suivant quatre items: Acquis (si tu sais faire), Presque acquis (si tu sais presque faire mais qu'il reste des petites

Prix des chargeurs à définir entre les

[r]

[r]

(frais de