Académique Documents
Professionnel Documents
Culture Documents
FAS06 Linux Shell Guide
FAS06 Linux Shell Guide
Mini-guide de la ligne de commande Linux Comment utiliser un ordinateur sans souris ni fentres e
Fili`re FAS - Romuald THION e
6 Commandes rseaux e
Attention Linux est sensible ` la casse (majuscule/minuscules) : pwd, est une commande existante, PWD ou Pwd a nexistent pas, idem pour les noms de chiers/dossiers. Sous Linux, les rpertoires ` parcourir pour atteindre un chier (le chemin) sont spars par un slash e a e e (</>) alors que cest un antislash (<\>) sous Windows) ex : /etc/passwd pour le chier passwd dans situ dans le dossier /etc e La touche <tab> compl`te les noms de chier/commande. e man est la commande qui permet dacher le manuel, appuyer sur la touche <q> pour sortir de laide, les commandes sont formates en fonte syst`me, les arguments obligatoires en italique, les options en e e gras, les caract`res sont dsigns par leurs symboles encadrs de chevrons. Exemple : une virgule <,>. e e e e
1/5
Fili`re FAS e
1
1.1
Gnralits e e e
Quest ce que la ligne de commande ?
Cest une interface utilisateur en mode texte, o` lon tape des commandes dans un shell. Le shell (appel u e aussi interprteur de commandes ) utilis dans lenvironnement de travail est Bash, pour Bourne Again e e e Shell , cest le shell par dfaut de la la plus part des distributions Linux (mais il existe de nombreux shells dirents, chacun ayant ses spcicits : A-Shell, C-Shell, Korn-Shell, Z-Shell, Tenex C-Shell...). Les syst`mes e e e e dexploitations disposent tous dune interface ligne de commande, certains ne disposent pas denvironnement graphique (ex : Dos 6.22).
1.2
A quoi a sert ? c
Le but du shell est de proposer une interface permettant ` lutilisateur dagir sur lordinateur : le shell a est le programme qui interpr`te des commandes et les faits excuter par le syst`me dexploitation. e e e On peut donc tout faire avec le shell : crer des chiers, crer des utilisateurs, se logger ` distance, e e a changer les droits dun chier, lancer des programmes, les arrter, . . .Tout ce qui est faisable en interface e graphique est faisable ` la ligne de commande. Ce sont les surtout les utilisateurs rguliers et les puristes a e (administrateurs syst`mes, vieux de la vieille, geeks, programmeurs, . . .) qui utilisent le plus le shell pour e son ecacit (pas de graphique ni de dplacement de la souris : plus rapide). Le shell est tr`s puissant car e e e il propose de tr`s nombreux outils qui peuvent tre combins entre eux et car on peut crer des scripts qui e e e e permettent dautomatiser des squences dactions. e Au centre IF, le shell servira principalement ` dbloquer la machine an cas de probl`me, ` se logger depuis a e e a lextrieur et ` excuter des programmes qui nexistent quen version ligne de commande et pas en graphique e a e et surtout ` programmer et excuter vos programmes. a e
1.3
Comment y accder ? e
e Outils de syst`me /Terminal : ouvre un terminal Lancer une application : bash (cocher Lancer dans un terminal ) Clic droit sur le bureau : Ouvrir un terminal/console <Control>+<Alt>+<F1> ` <F6> (<Control>+<Alt>+<F7> pour revenir au graphique) : pour se a logger en texte, le shell par dfaut est lanc une fois logg e e e En se loggant ` distance sur un poste (avec ssh par exemple sous Linux, avec Putty sous Windows) a
Les commandes de base : qui suis-je, o` vais-je, dans quel tat u e jerre
Le prompt du shell donne (par dfaut) le nom de lutilisateur et celui de la machine. Exemple : e [rthion@pc107t-01]$ On peut utiliser : whoami : qui suis-je ? who -m : un peu plus prcis e w : qui dautre est la ? pwd : dans quel rpertoire je suis ?( print work directory) e ps : liste mes processus ps axu : liste tous les processus qui sexcutent sur la machine e env : liste mes variables denvironnement date : donne la date et lheure du syst`me e su nom : devenir quelquun dautre ( mot de passe requis) exit : quitte linstance du shell
3
3.1
La syntaxe du shell
Syntaxe gnrale des commandes e e
nom_de_la_commande [-option(s) | --options longues] arguments
2/5
Fili`re FAS e
les arguments entre crochets [ ] sont facultatifs, ce sont des options les arguments spars par un | indique une alternative. e e les identiants commenant par $ reprsentent les variables denvironnement connues (ex : $USER), c e les identiants contenant des espaces doivent tre encadrs par ou . e e les arguments entre quotes ( altGr 7 sur les claviers franais) ins`re le rsultat dune commande. c e e exemple : echo date.
3.2
3.3
Redirection
Une redirection permet soit de diriger un ux de sortie (sortie standard : cest lcran) vers un chier e (<>>, <>>>), (pratiquement cela sert ` enregistrer dans un chier ce qui va sacher ` lcran apr`s avoir a a e e tap une commande), soit de prendre comme ux dentre un chier <<> (le programme lit dans le chier e e au lieu dattendre des frappes du clavier). <|> : lancement de deux programmes communiquant via tube : on envoie la sortie du premier sur lentre du second e <<> : redirection dentre e <>>, <>>> : redirection de sortie < > : rpertoire personnel e < ?> : un caract`re, nimporte lequel e <*> : 0 ou n caract`res, quels quils soient e <[xyz]> : un caract`re, parmi x,y et z e <[ !xyz]> : un caract`re, sauf x,y et z e
4
4.1
A chaque instant, le shell se trouve dans un dossier du syst`mej, do` sont excutes les programmes. On e u e e parle de rpertoire courant. e pwd permet de savoir dans quel rpertoire le shell se trouve actuellement. e cd ou cd permet de retourner dans son rpertoire personnel. e cd rpertoire changer de rpertoire courant. largument rpertoire peut soit tre un chemin absolu avec e e e e un slash au dbut du chemin. Cest ` dire qui ne dpend pas du rpertoire courant (ex : /usr/share). e a e e Ou ce peut tre un chemin relatif, cest ` dire qui dpend du rpertoire courant (ex : Documents). e a e e
4.2
4.3
Fili`re FAS e
mv chier nouveau nom chier renomme chier sous le nom nouveau-chier dans le mme rpertoire. e e mv chier rpertoire dplace chier dans le rpertoire rpertoire. e e e e mv -i permet au syst`me de demander une conrmation si le chier de destination existe dj`. e ea mv rpertoire nouveau nom rpertoire renomme un rpertoire dans un autre rpertoire. e e e e cp chier nouveau nom chier copie chier sous le nom nouveau-chier dans le mme rpertoire. e e cp chier rpertoire copie chier dans le rpertoire rpertoire (mme nom). e e e e cp -p chier rpertoire copie chier dans le rpertoire rpertoire en conservant le mme nom et les e e e e mmes permissions que le chier dorigine. e cp -i permet au syt`me de demander une conrmation si le chier de destination existe dj`. e ea cp -r rpertoire rpertoire1 copie rcursivement rpertoire et ses sous-rpertoires dans rpertoire1 en e e e e e e conservant la mme structure. e a a e e rename expression perl chiers renomme plusieurs chiers dun coup grce ` une expresison rguli`re
4.4
Recherche
find rep -name mot -print : permet de trouver des chiers dont le nom contient mot depuis le repertoire rep spci. find est une des commandes les plus puissantes dUnix. On utilise aussi locate e e ou whereis. Largument -print nest quun exemple pour demander lachage des chiers trouvs. Il e est possible dutiliser bien dautres crit`res de recherche (dates...) et dexcuter bien dautres actions e e (supprimer, dplacer,archiver...) e grep expression chiers : permet de rechercher toutes les occurences de lexpression dans le contenu des chiers grep -i expression chier(s) permet de faire une recherche sans casse
5
5.1
5.2
Utilisation du disque
df -h donne lespace disque utilis et libre sur les direntes partitions. e e e e e e du nom du rpertoire donne lespace utilis du rpertoire et des sous-rpertoires du -h rsultat human readable et -s : donne la somme sans dtails. e e
5.3
Les droits dacc`s sur les chiers se dcomposent en trois blocs 3 caract`res rwx | rwx | rwx. e e e Le premier bloc xe les droits r,w et x de proprits pour le propritaire (u) du chier. ee e Le deuxi`me bloc xe les droits r,w et x accords aux utilisateurs faisant partie du groupe (g) auquel e e appartient le chier Le dernier bloc xe les droits r,w et x des autres utilisateurs (o), Exemple rwx | r-x | signie que le propritaire ` tous les droits, les membres du groupes e a peuvent lire et excuter et les autres nont aucun droit. e
4/5
Fili`re FAS e
Dans chaque partie, le premier caract`re correspond au droit de lecture (r), la deuxi`me caract`re core e e respond au droit dcriture (w), le troisi`me caract`re correspond au droit dexcution ou dacc`s (x). Si ` la e e e e e a place dun des caract`res nous ne voyons quun tiret -, cest que le droit nest pas accord. e e La permission des chiers seectue par la commande chmod permission chiers. Pour identier la catgorie e de lusager par la lettre u pour le propritaire du chier, la lettre g pour le groupe dutilisateur, la lettre o e pour les autres utilisateurs. et la lettre a permet de faire rfrence ` tous les utilisateurs. + signie que cest ee a une permission supplmentaire et pour en supprimer une il sut de remplacer le signe + par -. e Exemples : chmod a+w test : Tous les utilisateurs obtiennent le droit dcrire pour le chier test. e chmod go-wr test : Le groupe utilisateur et les autres (sauf le propritaire) nont plus le droit dcrire e e et de lire pour le chier test La commande chown permet de modier le propritaire dun chier. Sur la majorit des syst`mes, son e e e usage est rserv au super-utilisateur. e e
5.4
Autres commandes
diff chier1 chier2 ache les dirences entre deux chiers. e ` a ln -s chier a lier lien symbolique permet de lier un chier distant ` un lien symbolique (alias). alias, donne la liste des alias, alias identiant alias=commandes, permet de crer un alias e
Commandes rseaux e
ping machine : envoie une requte echo et attend la rponse pour savoir si la machone machine est e e connecte couche rseau e e traceroute machine : variante du ping qui permet de conna tre lensemble des relais par lesquels passent les donnes e nc machine port : netcat (TCP/IP swiss army knife) englobe un panel doutil travaillant couche transport nmap (et ses nombreuses options incroyables) : un outil gnial qui ore une varit de possibilits e ee e gigantesque (attention, beaucoup sont rserves au super utilisateur), cf. man nmap e e ifconfig (dans /sbin) : ache les informations de vos interfaces rseaux ( jusqu` la couche rseau) e a e route (dans /sbin) : ache les informations de routage ssh -l login machine : permet de se logger de faon scurise sur machine en utilisant lidentiant login c e e wget url : permet de tlcharger en ligne de commande le contenu situ ` ladresse url. ee ea
5/5