Vous êtes sur la page 1sur 124
ConceptsConcepts générauxgénéraux etet commandescommandes
ConceptsConcepts générauxgénéraux
etet
commandescommandes
UnixUnix :: ÉtatÉtat civilcivil NaissanceNaissance 19701970 LieuLieu :: LaboratoiresLaboratoires BellBell dede
UnixUnix :: ÉtatÉtat civilcivil
NaissanceNaissance 19701970
LieuLieu :: LaboratoiresLaboratoires BellBell dede AT&TAT&T
Versions:Versions:
•• 1ère1ère versionversion commerciale:commerciale: 19751975 (V6(V6 enen C)C)
•• PortagePortage sursur INTERDATAINTERDATA 8/328/32 etet VAXVAX 11/78011/780
(Unix(Unix 32V)32V) →→ 1978:1978: V7V7 (Unix(Unix produitproduit industriel)industriel)
–– UnixUnix BSDBSD ((BerkleyBerkley SoftwareSoftware Distribution)Distribution)
–– UnixUnix rechercherecherche :: BellBell LabsLabs
–– UnixUnix commercialcommercial :: AT&TAT&T (Nom(Nom :: System)System)
PointPoint dede départdépart desdes divergencesdivergences entreentre BSDBSD etet System:System:
enen 19781978 avecavec lala V7.V7.
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
22
©© A.EDA.ED--DBALIDBALI
UnixUnix :: ÉvolutionÉvolution versvers lesles versionsversions commercialescommerciales AmalgameAmalgame dede BSDBSD
UnixUnix :: ÉvolutionÉvolution versvers lesles versionsversions
commercialescommerciales
AmalgameAmalgame dede BSDBSD 4.x4.x etet dede SystemSystem VV RyRy
ApportsApports BSDBSD àà V7V7 ::
•• gestiongestion mémoiremémoire virtuelle,virtuelle, IPCIPC plusplus performantperformant ((socketssockets enen
localelocale etet réseau),réseau), supportsupport ethernetethernet TCP/IPTCP/IP ((ftpftp,, telnettelnet,,
commandescommandes distantes),distantes), systèmesystème dede fichiersfichiers plusplus performantperformant
(FFS(FFS avecavec quotas),quotas), spoolerspooler réparti,réparti, améliorationamélioration appelsappels
systèmes,systèmes, généralisationgénéralisation dudu mailmail ((sendmailsendmail),), introductionintroduction
dudu CC--Shell,Shell, nombreuxnombreux outils.outils.
ApportsApports SystemSystem VV àà V7V7 ::
•• IPCIPC (sémaphores,(sémaphores, mémoiremémoire partagée,partagée, filefile d’attented’attente desdes
messages,messages, tubestubes nommés),nommés), améliorationamélioration dede atat (gestion(gestion desdes
autorisations),autorisations), généralisationgénéralisation dudu croncron (gestion(gestion desdes
autorisations),autorisations), termcaptermcap versvers terminfoterminfo,, introductionintroduction dudu
KornKorn--Shell,Shell, introductionintroduction desdes bibliothèquebibliothèque partagées.partagées.
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
33
©© A.EDA.ED--DBALIDBALI
UnixUnix :: StandardisationStandardisation AssociationAssociation d'utilisateursd'utilisateurs
UnixUnix :: StandardisationStandardisation
AssociationAssociation d'utilisateursd'utilisateurs //usrusr/group/group
–– PortabilitéPortabilité appelsappels systèmessystèmes etet bibliothèquebibliothèque CC
AT&TAT&T
–– DocumentDocument SVIDSVID (System(System VV InterfaceInterface DefinitionDefinition))
AssociationAssociation X/OPENX/OPEN
–– GuidesGuides portabilitéportabilité (XPG(XPG IIII :: SystemSystem VV R2,R2, XPGXPG IIIIII ::
SystemSystem VV R3R3 etet XPGXPG IVIV :: SystemSystem VV R4)R4)
POSIXPOSIX (Portable(Portable OpenOpen SystemSystem InterfaceInterface
eXchangeeXchange)) membremembre dede IEEEIEEE
–– NormesNormes IEEEIEEE P1003.XP1003.X devenuesdevenues normesnormes ISOISO 99459945--X.X.
LaLa conformitéconformité auxaux normesnormes POSIXPOSIX :: critèrecritère dede choixchoix d'und'un
systèmesystème informatique.informatique.
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
44
©© A.EDA.ED--DBALIDBALI
UnixUnix :: LeLe tempstemps desdes alliancesalliances UnixUnix InternationalInternational –– ConsortiumConsortium
UnixUnix :: LeLe tempstemps desdes alliancesalliances
UnixUnix InternationalInternational
–– ConsortiumConsortium fondéfondé enen 19881988 parpar AT&T,AT&T, SunSun etet UnisysUnisys
–– ButBut :: NouvelleNouvelle versionversion d’Unixd’Unix (BSD(BSD 4.34.3 etet SystemSystem VV R3)R3)
OSFOSF (Open(Open SoftwareSoftware Fondation)Fondation)
–– UnixUnix InternationalInternational menacemenace constructeursconstructeurs informatiqueinformatique
–– ButBut :: AlternativeAlternative àà AT&TAT&T pourpour lesles systèmessystèmes ouvertsouverts
–– DeuxDeux projetsprojets ::
•• MotifMotif (interface(interface graphiquegraphique auau dessusdessus dede X11)X11)
•• OSF/1OSF/1 (SE(SE compatiblecompatible Unix).Unix). InterfaceInterface utilisateurutilisateur POSIXPOSIX
UnixUnix PCPC
–– SCO,SCO, BSD386,BSD386, FreeBSDFreeBSD,, LinuxLinux,, SunSolarisSunSolaris pourpour PC,PC,
–– InterfacesInterfaces gratuitesgratuites dede lala FSFFSF (Free(Free SoftwareSoftware Fondation)Fondation)
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
55
©© A.EDA.ED--DBALIDBALI
UnixUnix :: LeLe tempstemps desdes alliancesalliances COSECOSE ((CommonCommon OpenOpen SoftwareSoftware
UnixUnix :: LeLe tempstemps desdes alliancesalliances
COSECOSE ((CommonCommon OpenOpen SoftwareSoftware EnvironmentEnvironment))
–– AccordsAccords dede 19931993 entreentre HP,HP, IBM,IBM, SCO,SCO, SUN,SUN, NOVELL,NOVELL,
DECDEC
–– ButBut :: MiseMise enen communcommun desdes technologiestechnologies existantesexistantes
–– RéalisationsRéalisations ::
•• CDECDE ((CommonCommon DesktopDesktop EnvironmentEnvironment).).
•• bibliothèquesbibliothèques graphiquesgraphiques ((XlibXlib,, PEXlib,PEXlib, XIElib)XIElib)
•• outilsoutils graphiquesgraphiques etet multimédiamultimédia (DMS,(DMS, DIME)DIME)
•• technologiestechnologies objetsobjets (CORBA)(CORBA)
•• servicesservices d'annuaired'annuaire (CDS/NIS)(CDS/NIS)
•• administrationadministration systèmesystème etet administrationadministration réseauréseau
•• installationinstallation desdes logicielslogiciels
–– X/OPENX/OPEN (propriétaire(propriétaire dede lala marquemarque Unix)Unix) accordeaccorde lele labellabel
UNIXUNIX àà touttout SESE quiqui passepasse avecavec succèssuccès lesles APIAPI dede COSECOSE
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
66
©© A.EDA.ED--DBALIDBALI
UnixUnix :: DéfinitionDéfinition UnUn systèmesystème d'exploitationd'exploitation
UnixUnix :: DéfinitionDéfinition
UnUn systèmesystème d'exploitationd'exploitation
multimulti--utilisateursutilisateurs etet multimulti--tâchestâches
–– ContrôleContrôle lele hardwarehardware
–– PartagePartage lala mémoiremémoire entreentre lesles processusprocessus
–– ContrôleContrôle lala créationcréation etet l'accèsl'accès auxaux fichiersfichiers
DesDes outilsoutils
–– SystèmeSystème dede fichiersfichiers hiérarchiquehiérarchique etet répartiréparti
–– LeLe ShellShell
–– ManipulationsManipulations trèstrès puissantespuissantes desdes fichiersfichiers
((findfind,, grepgrep,, sedsed,, awkawk,, …)…)
–– CommunicationCommunication entreentre processusprocessus (tubes)(tubes)
–– NombreuxNombreux utilitairesutilitaires
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
77
©© A.EDA.ED--DBALIDBALI
LeLe ShellShell InterfaceInterface entreentre l'utilisateurl'utilisateur etet Unix.Unix.
LeLe ShellShell
InterfaceInterface entreentre l'utilisateurl'utilisateur etet Unix.Unix.
InterprèteInterprète lesles commandes,commandes, génèregénère lesles nomsnoms
dede fichiers,fichiers, créecrée desdes tubes,tubes, redirigeredirige lesles
entrées/sorties,entrées/sorties, etc.etc.
LangageLangage dede programmationprogrammation structuré.structuré.
QuandQuand unun utilisateurutilisateur sese connecteconnecte auau systèmesystème UNIX,UNIX,
unun ShellShell estest démarrédémarré pourpour lui.lui.
LeLe ShellShell àà exécuterexécuter (sh,(sh, cshcsh,, kshksh,, tcshtcsh,, bashbash,,
ligneligne dede comptecompte ((//etcetc//passwdpasswd).).
) )
figurefigure dansdans lala
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
88
©© A.EDA.ED--DBALIDBALI
LigneLigne dede comptecompte StructureStructure dudu fichierfichier //etcetc//passwdpasswd :: •• NomNom::MotMot
LigneLigne dede comptecompte
StructureStructure dudu fichierfichier //etcetc//passwdpasswd ::
••
NomNom::MotMot dede passepasse cryptécrypté::N°N° comptecompte::N°N° groupegroupe::ChampChamp librelibre::RépRép dede loginlogin::ShellShell
ExempleExemple ::
•• adamadam::P$/P$/LmjLmj.S'a".S'a"::30043004::100100::Albert,AdamAlbert,Adam::/home/staff//home/staff/adamadam:://binbin/sh/sh
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
99
©© A.EDA.ED--DBALIDBALI
ConnexionConnexion etet DéconnexionDéconnexion LogInLogIn L'accèsL'accès auau systèmesystème sese
ConnexionConnexion etet DéconnexionDéconnexion
LogInLogIn
L'accèsL'accès auau systèmesystème sese faitfait parpar lala donnéedonnée ::
•• d'und'un nomnom d'utilisateurd'utilisateur (unique,(unique, auau plusplus 88 caractères)caractères) créécréé parpar
l'administrateurl'administrateur systèmesystème (ouverture(ouverture dede Compte)Compte)
•• d'und'un motmot dede passepasse ::
–– strictementstrictement personnelpersonnel
–– garantissantgarantissant lala confidentialitéconfidentialité dede vosvos informationsinformations
–– empêcheempêche lesles intrusionsintrusions enen votrevotre nomnom
–– S'attribuerS'attribuer ouou changerchanger dede motmot dede passepasse àà l'aidel'aide dede lala commandecommande ::
passwdpasswd
AprèsAprès lele démarragedémarrage d'uned'une sessionsession Shell,Shell, l'invitel'invite (prompt)(prompt)
indiqueindique lala disponibilitédisponibilité dudu Shell.Shell.
LogOutLogOut
•• FinFin dede l'utilisationl'utilisation dudu ShellShell :: CtrlCtrl--dd ouou ((logoutlogout ouou exitexit
selonselon lele Shell)Shell)
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
1010
©© A.EDA.ED--DBALIDBALI
SyntaxeSyntaxe desdes commandescommandes UnixUnix DépendDépend dede chaquechaque commandecommande
SyntaxeSyntaxe desdes commandescommandes UnixUnix
DépendDépend dede chaquechaque commandecommande
L'espaceL'espace estest nécessairenécessaire
•• entreentre lele nomnom dede lala commandecommande etet lesles optionsoptions et/ouet/ou lesles
argumentsarguments (s'il(s'il yy enen a)a)
•• entreentre lesles optionsoptions etet lesles argumentsarguments
•• entreentre lesles argumentsarguments
ExécuterExécuter avecavec lesles optionsoptions parpar défautdéfaut ::
•• $$ nomnom--commandecommande <CR><CR>
Sinon,Sinon, lesles formatsformats suivantssuivants sontsont possiblepossible ::
•• $$ nomnom--commandecommande argument(s)argument(s) <CR><CR>
•• $$ nomnom--commandecommande option(s)option(s) <CR><CR>
•• $$ nomnom--commandecommande option(s)option(s) argument(s)argument(s) <CR><CR>
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
1111
©© A.EDA.ED--DBALIDBALI
ElémentsEléments dede lala ligneligne dede commandecommande LaLa commandecommande :: quoiquoi fairefaire ?? ••
ElémentsEléments dede lala ligneligne dede commandecommande
LaLa commandecommande :: quoiquoi fairefaire ??
•• C'estC'est lele premierpremier motmot dede lala ligneligne quiqui doitdoit êtreêtre lele nomnom (relatif(relatif
ouou absolu)absolu) d'und'un fichierfichier exécutableexécutable ouou uneune commandecommande
interneinterne
–– $$ echoecho
$$ binbin//macommandemacommande
$$ //binbin//catcat
LesLes optionsoptions :: commentcomment lele fairefaire ??
•• SuitSuit lala commande.commande. PrécédéPrécédé d'und'un ''--'' (parfois(parfois d'und'un '+''+'))
–– $$ lsls --aRlaRl
$$ datedate +%d%m%y+%d%m%y
LesLes argumentsarguments :: sursur quoiquoi lele fairefaire ??
•• Habituellement,Habituellement, unun ouou plusieursplusieurs nomsnoms dede fichiersfichiers
–– $$ catcat chapitre1.texchapitre1.tex
–– $$ cpcp fich1fich1 ~~adamadam/nouveau/nouveau
–– $$ lsls --ll fich1fich1 //usrusr/local//local/binbin//emacsemacs //vmunixvmunix
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
1212
©© A.EDA.ED--DBALIDBALI
ManuelManuel enen--ligneligne UnixUnix -- àà visitervisiter absolumentabsolument $$ manman commandecommande $$
ManuelManuel enen--ligneligne UnixUnix --
àà visitervisiter absolumentabsolument
$$ manman
commandecommande
$$ manman --kk motmot--cléclé
$$ manman N°N°--sectionsection commandecommande
DiviséDivisé enen sectionssections ::
•• 11 :: commandescommandes utilisateur,utilisateur, 1M1M :: administrationadministration (System(System V),V),
22 :: appelsappels systèmes,systèmes, 33 :: bibliothèquesbibliothèques (C,(C, FortarnFortarn,, Pascal,Pascal,
etcetc),), 44 :: fichiersfichiers spéciauxspéciaux etet périphériques,périphériques, 55 :: formatsformats dede
fichiers,fichiers, 66 :: jeux,jeux, 77 :: tables,tables, 88 :: administrationadministration (BSD)(BSD)
PourPour enen savoirsavoir plusplus :: $$ manman
manman
ParagraphesParagraphes d'und'un manuelmanuel ::
•• NameName,, Synopsis,Synopsis, Description,Description, ExampleExample,, Warnings,Warnings, Files,Files, SeeSee
alsoalso,, Diagnostics,Diagnostics, BugsBugs
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
1313
©© A.EDA.ED--DBALIDBALI
CommunicationCommunication enen UnixUnix CommunicationCommunication enen--ligneligne •• CommunicationCommunication
CommunicationCommunication enen UnixUnix
CommunicationCommunication enen--ligneligne
•• CommunicationCommunication immédiateimmédiate avecavec lesles autresautres
utilisateursutilisateurs connectésconnectés
•• UneUne réponseréponse immédiateimmédiate estest possiblepossible
writewrite,, talktalk ouou wallwall
CommunicationCommunication horshors--ligneligne
•• LeLe messagemessage estest permanentpermanent (sauvé(sauvé dansdans unun fichier)fichier)
•• DifférentesDifférentes possibilitéspossibilités lorslors dede l'obtentionl'obtention dudu
messagemessage ::
mailmail,, MailMail,, vnewsvnews,, rnrn,, tintin,, readnewsreadnews,, fichierfichier motdmotd
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
1414
©© A.EDA.ED--DBALIDBALI
CommunicationCommunication enen--ligneligne -- writewrite CommunicationCommunication bibi--latéralelatérale entreentre
CommunicationCommunication enen--ligneligne -- writewrite
CommunicationCommunication bibi--latéralelatérale entreentre deuxdeux
utilisateursutilisateurs connectésconnectés
FormatFormat ::
•• $$ writewrite utilisateurutilisateur [[ttytty]]
oùoù utilisateurutilisateur estest lele nomnom dede loginlogin d'und'un utilisateurutilisateur connecté.connecté.
ttytty permetpermet dede préciserpréciser unun terminalterminal pourpour afficherafficher lesles
messagesmessages (au(au cascas oùoù plusieursplusieurs connexionsconnexions dudu
correspondant)correspondant)
ArrêtArrêt dede lala conversationconversation :: ^d^d
Autorisation/interdictionAutorisation/interdiction dede réceptionréception ::
$$ mesgmesg nn
$$ mesgmesg yy
$$ mesgmesg
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
1515
©© A.EDA.ED--DBALIDBALI
CommunicationCommunication horshors--ligneligne -- mailmail SyntaxeSyntaxe :: $$ mailmail
CommunicationCommunication horshors--ligneligne -- mailmail
SyntaxeSyntaxe :: $$ mailmail correspondant(s)correspondant(s)
ExempleExemple ::
•• $$ mailmail daviddavid legerleger@@compcomp inriainria frfr
SubjectSubject :: RéunionRéunion
DavidDavid etet Marc,Marc,
RéunionRéunion demaindemain àà 18h18h dansdans monmon bureau.bureau. OKOK ??
CiCi--après,après, l'ordrel'ordre dudu jourjour ::
~r~r OrdreJourOrdreJour
OrdreJourOrdreJour 15/34215/342
Cc:Cc: adamadam
$$
UnUn messagemessage peutpeut êtreêtre envoyéenvoyé àà plusieursplusieurs correspondantscorrespondants
'.''.' (ou(ou ^d^d)) terminetermine lala saisiesaisie dudu messagemessage
SiSi problème,problème, messagemessage sauvésauvé dansdans lele fichierfichier deaddead letterletter
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
1616
©© A.EDA.ED--DBALIDBALI
LectureLecture dudu courriercourrier :: mailmail UnixUnix vousvous signalesignale l'arrivéel'arrivée dudu
LectureLecture dudu courriercourrier :: mailmail
UnixUnix vousvous signalesignale l'arrivéel'arrivée dudu courriercourrier
•• auau LogInLogIn ((YouYou havehave newnew mail)mail)
•• sisi unun nouveaunouveau messagemessage arrivearrive quandquand vousvous exécuterexécuter lala
commandecommande mailmail
•• auau momentmoment oùoù lele messagemessage arrive,arrive, sisi vousvous avezavez entré,entré,
précédemment,précédemment, lala commandecommande :: $$ biffbiff yy
LectureLecture desdes messagesmessages dede lala boîteboîte auxaux lettreslettres ::
•• $$ mailmail
ExempleExemple ::
•• $$ mailmail
MailMail versionversion SMISMI 4.04.0 MonMon FebFeb 2020 17:00:2517:00:25 PDTPDT 19951995 TypeType ?? forfor help.help.
"/var/spool/mail/"/var/spool/mail/legerleger"" :: 22 messagesmessages 11 newnew
11 duranddurand
>N>N 22 adamadam@@univuniv--orleansorleans
&&
frfr
WedWed FebFeb 1515 12:2212:22 14/33614/336 ProjetProjet
FriFri FebFeb 1717 10:0210:02 50/59850/598 RéunionRéunion
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
1717
©© A.EDA.ED--DBALIDBALI
$$ mailmail :: QueQue fairefaire LesLes réponsesréponses possiblespossibles faceface auau promptprompt &&
$$ mailmail :: QueQue fairefaire
LesLes réponsesréponses possiblespossibles faceface auau promptprompt &&
•• <CR><CR> ouou pp voirvoir lele messagemessage courantcourant
dd
supprimesupprime lele massagemassage courantcourant
--
afficherafficher lele messagemessage précédentprécédent
ss
sauvegardersauvegarder cece messagemessage dansdans lele fichierfichier mboxmbox,,
ouou dansdans unun autreautre fichierfichier sisi spécifiéspécifié
ww
écrireécrire lele messagemessage courantcourant (sans(sans l'entête)l'entête) dansdans unun
fichierfichier
qq
quitterquitter lele programmeprogramme mail.mail. LesLes messagesmessages luslus etet
nonnon suppriméssupprimés sontsont sauvegardéssauvegardés dansdans lele fichierfichier mboxmbox
xx
quitterquitter lele programmeprogramme mailmail sanssans modifiermodifier lala boîteboîte àà
lettreslettres
hh
listeliste lesles enen--têtestêtes desdes messagesmessages
??
afficheaffiche lala listeliste desdes commandescommandes mailmail
rr
répondrerépondre àà l'expéditeurl'expéditeur dudu messagemessage uniquementuniquement
RR
répondrerépondre auau messagemessage ;; toustous lesles destinatairesdestinataires vontvont
recevoirrecevoir lala réponseréponse
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
1818
©© A.EDA.ED--DBALIDBALI
CommunicationCommunication entreentre AdministrateurAdministrateur etet UtilisateursUtilisateurs $$ wallwall ••
CommunicationCommunication entreentre AdministrateurAdministrateur etet
UtilisateursUtilisateurs
$$ wallwall
•• UtiliséeUtilisée parpar l'administrateurl'administrateur systèmesystème pourpour envoyerenvoyer
unun messagemessage àà toustous lesles utilisateursutilisateurs connectés.connectés.
•• ExempleExemple ::
BroadcastBroadcast messagemessage fromfrom rootroot:console:console
VousVous avezavez 1010 minutesminutes pourpour quitterquitter lele
système…système…
sinon,sinon, BOOMBOOM !!
•• $$ mesgmesg nn
n'an'a aucunaucun effeteffet sursur wallwall
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
1919
©© A.EDA.ED--DBALIDBALI
LesLes autresautres commandescommandes pourpour communiquercommuniquer talktalk •• CommunicationCommunication dudu
LesLes autresautres commandescommandes pourpour communiquercommuniquer
talktalk
•• CommunicationCommunication dudu mêmemême typetype queque writewrite maismais enen modemode
vidéovidéo etet enen partageantpartageant l'écranl'écran enen 22 :: l'unel'une pourpour afficherafficher lele
textetexte enen émissionémission etet l'autrel'autre pourpour afficherafficher lele textetexte enen
réception.réception.
vnewsvnews,, rnrn,, tin,tin, readnewsreadnews
•• CommandesCommandes pourpour accéderaccéder auxaux "nouvelles"."nouvelles".
•• ExtensionExtension dede lala notionnotion dede courrier.courrier.
•• MessagesMessages rangésrangés dansdans desdes boîtesboîtes àà lettreslettres accessiblesaccessibles parpar
tous.tous.
•• BoîteBoîte àà lettreslettres == "groupe"groupe dede nouvelles"nouvelles" (news(news group).group).
•• IlIl estest possiblepossible dede lirelire desdes transactions,transactions, d'end'en écrire,écrire, dede
répondre,répondre, etc.etc.
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
2020
©© A.EDA.ED--DBALIDBALI
LeLe systèmesystème dede fichiersfichiers UnixUnix TypesTypes dede fichiersfichiers •• OrdinairesOrdinaires
LeLe systèmesystème dede fichiersfichiers UnixUnix
TypesTypes dede fichiersfichiers
•• OrdinairesOrdinaires (Suite(Suite d'octetsd'octets :: ASCII,ASCII, Binaires)Binaires)
•• RépertoiresRépertoires
–– OrganisentOrganisent lele systèmesystème dede fichiersfichiers
–– AuAu lala connexion,connexion, chaquechaque utilisateurutilisateur aa unun répertoirerépertoire parpar
défaut,défaut, sonson nomnom estest lala valeurvaleur dede lala variablevariable HOMEHOME
•• SpéciauxSpéciaux périphériquespériphériques
–– IndiquentIndiquent àà UNIXUNIX quelquel "driver""driver" utiliserutiliser
–– DonnentDonnent auau driverdriver lesles optionsoptions àà utiliserutiliser
–– IlsIls sese trouventtrouvent dansdans lele répertoirerépertoire //devdev ouou //devicesdevices
•• SocketsSockets
•• TubesTubes nommésnommés (communication(communication entreentre processus)processus)
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
2121
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- organisationorganisation OrganisationOrganisation hiérarchiquehiérarchique
SystèmeSystème dede fichiersfichiers -- organisationorganisation
OrganisationOrganisation hiérarchiquehiérarchique
•• ArbreArbre dontdont lala racineracine estest '/''/' (dite(dite rootroot))
•• LesLes fichiersfichiers enen sontsont lesles feuillesfeuilles
•• ChaqueChaque répertoirerépertoire (sauf(sauf rootroot)) aa unun pèrepère (nom(nom
symboliquesymbolique '
')' ')
•• ToutTout répertoirerépertoire aa unun nomnom symboliquesymbolique '.''.'
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
2222
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- exempleexemple dede hiérarchiehiérarchie / bin etc home usr tmp leger
SystèmeSystème dede fichiersfichiers -- exempleexemple dede hiérarchiehiérarchie
/
bin
etc
home
usr
tmp
leger
adam
david
.profile
.profile
prod
cv
prog.c
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
2323
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- quelquesquelques répertoiresrépertoires usuelsusuels RépertoireRépertoire
SystèmeSystème dede fichiersfichiers --
quelquesquelques répertoiresrépertoires usuelsusuels
RépertoireRépertoire
ContientContient
//binbin
//etcetc
//liblib
lesles principalesprincipales commandescommandes
lesles commandescommandes etet lesles fichiersfichiers pourpour lala maintenancemaintenance etet
l'administrationl'administration dudu systèmesystème
lesles librairieslibrairies etet lesles programmesprogrammes dede certainscertains compilateurscompilateurs
//tmptmp
//devdev
//usrusr
//usrusr//binbin
//usrusr//ucbucb
//usrusr//liblib
/home/home
lesles fichiersfichiers temporaires.temporaires. IlIl peutpeut êtreêtre utiliséutilisé commecomme
répertoirerépertoire dede travailtravail (vidé(vidé àà chaquechaque démarrage)démarrage)
lesles fichiersfichiers spéciauxspéciaux dede descriptiondescription desdes périphériquespériphériques
lesles commandescommandes locales,locales, certainescertaines librairies,librairies, lesles
commandescommandes utilisateurs,utilisateurs, lesles fichiersfichiers mail,mail, lesles jeux,jeux, etcetc (les(les
répertoiresrépertoires utilisateursutilisateurs peuventpeuvent yy êtreêtre placés)placés)
lesles commandescommandes complémentairescomplémentaires
lesles commandescommandes spécifiquesspécifiques àà BSDBSD
desdes librairieslibrairies etet programmesprogrammes supplémentaires,supplémentaires, lesles
programmesprogrammes dede gestiongestion desdes imprimantesimprimantes etet communicationcommunication
l'arborescencel'arborescence desdes répertoiresrépertoires desdes utilisateursutilisateurs
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
2424
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- représentationreprésentation interneinterne FichierFichier == ObjetObjet
SystèmeSystème dede fichiersfichiers -- représentationreprésentation interneinterne
FichierFichier == ObjetObjet typétypé
LeLe typetype définidéfini l'ensemblel'ensemble desdes opérationsopérations
FichierFichier →→ EntréeEntrée dansdans uneune tabletable d'attributsd'attributs ::
indexindex dede nœudnœud (i(i--nodenode))
•• IdentificationIdentification dudu propriétairepropriétaire etet dudu groupegroupe dede propriétairepropriétaire
•• TypeType etet droitsdroits d'accèsd'accès
•• TailleTaille enen nombrenombre dede caractèrescaractères
•• NombreNombre dede liensliens physiquesphysiques == nombrenombre totaltotal d'entréesd'entrées correspondantcorrespondant
auau fichierfichier dansdans l'ensemblel'ensemble desdes répertoiresrépertoires dudu mêmemême disquedisque logiqulogiquee
•• 33 datesdates (lecture,(lecture, modificationmodification dudu fichierfichier etet modificationmodification dudu nœunœud)d)
•• AdresseAdresse desdes blocsblocs utilisésutilisés sursur disquedisque (fichiers(fichiers sursur disque)disque)
•• IdentificationIdentification dede lala ressourceressource associéeassociée (fichiers(fichiers spéciaux)spéciaux)
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
2525
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- montagemontage PlusieursPlusieurs tablestables d'attributsd'attributs
SystèmeSystème dede fichiersfichiers -- montagemontage
PlusieursPlusieurs tablestables d'attributsd'attributs desdes fichiersfichiers ::
•• UneUne tabletable →→ UneUne arborescencearborescence (N°(N° d'indexd'index dede lala
racineracine == 2)2)
•• DifférentesDifférentes arborescencesarborescences
•• UneUne racineracine absolueabsolue
•• ArborescencesArborescences reliéesreliées àà lala racineracine absolueabsolue parpar lele
mécanismemécanisme dede montagemontage ((mountmount))
•• LeLe montagemontage peutpeut êtreêtre étenduétendu d'uned'une manièremanière
transparentetransparente àà desdes systèmessystèmes distantsdistants (protocole(protocole
NFSNFS :: NetworkNetwork FileFile SystemSystem))
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
2626
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers réseauxréseaux -- NFSNFS machine cliente B machine serveur A / / usr
SystèmeSystème dede fichiersfichiers réseauxréseaux -- NFSNFS
machine cliente B
machine serveur A
/
/
usr
usr
local
local
bin
lib
B# mount A:/usr/local /usr/local réalise l'opération :
B$ cd /usr/local/bin fait un changement sur /usr/local/bin de A
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
2727
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- droitsdroits d'accèsd'accès auxaux fichiersfichiers UnUn
SystèmeSystème dede fichiersfichiers -- droitsdroits d'accèsd'accès auxaux fichiersfichiers
UnUn utilisateurutilisateur →→ N°N° comptecompte ((uiduid)) ++ N°N° groupegroupe ((gidgid))
FichierFichier →→ 33 typestypes d'utilisateursd'utilisateurs ::
•• LeLe propriétairepropriétaire ((ownerowner))
•• LesLes membresmembres d'und'un groupegroupe (ou(ou groupegroupe propriétairepropriétaire :: groupgroup))
•• LesLes autresautres utilisateursutilisateurs ((othersothers))
IlIl existeexiste unun utilisateurutilisateur privilégiéprivilégié disposantdisposant dede toustous lele droitsdroits ::
LeLe supersuper utilisateurutilisateur (ou(ou rootroot))
FichierFichier
RépertoireRépertoire
33 typestypes d'opérationsd'opérations
lecturelecture
rr
écritureécriture
ww
exécutionexécution
xx
contenucontenu
ajoutajout // suppressionsuppression
navigationnavigation
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
2828
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- droitsdroits d'accèsd'accès auxaux fichiersfichiers ExempleExemple
SystèmeSystème dede fichiersfichiers -- droitsdroits d'accèsd'accès auxaux fichiersfichiers
ExempleExemple ::
•• $$ lsls --ll
dd
rwxrwx
rr--xx
rr--x x
2
2 adamadam staffstaff
512512 FebFeb 2727 16:1216:12 ProgsProgs
dd
rwxrwx
rr--xx
rr--x x
2
2 adamadam staffstaff
512512 FebFeb 2727 19911991 RapportsRapports
--
rwrw--
rr----
rr----
11 adamadam staffstaff
24362436 JunJun
--
rwxrwx
rr--xx
rr--x x
1
1 adamadam staffstaff
74367436 JanJan
44 19921992 chap1.texchap1.tex
22 14:2014:20 listeliste
DroitsDroits pourpour lesles autresautres
DroitsDroits pourpour lele groupegroupe dudu propriétairepropriétaire
DroitsDroits pourpour lele propriétairepropriétaire
TypeType dudu fichierfichier ::
-- ordinaire,ordinaire,
dd répertoire,répertoire,
cc ouou bb périphériquepériphérique
lienlien symbolique,symbolique,
ss socketsocket,,
ll
pp
tubetube nomménommé
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
2929
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- droitsdroits d'accèsd'accès auxaux fichiersfichiers setset--uiduid
SystèmeSystème dede fichiersfichiers -- droitsdroits d'accèsd'accès auxaux fichiersfichiers
setset--uiduid
•• 's''s' àà lala placeplace dede 'x''x' pourpour lele propriétairepropriétaire (zone(zone ownerowner))
–– LeLe processusprocessus correspondantcorrespondant àà uneune exécutionexécution dudu programmeprogramme aa lesles
mêmesmêmes droitsdroits queque lele propriétairepropriétaire dudu programmeprogramme etet nonnon dede
l'utilisateurl'utilisateur quiqui lele lancelance
•• ExempleExemple ::
$$ lsls --ll //etcetc//passwdpasswd //binbin//passwdpasswd
--rr--srsr--xrxr--xx 11 rootroot binbin 2457624576 JulJul 66 19901990 //binbin//passwdpasswd
--rwrw--rr----rr---- 11 rootroot syssys 33213321 FebFeb 22 09:3009:30 //etcetc//passwdpasswd
•• SeulSeul rootroot peutpeut modifiermodifier //etcetc//passwdpasswd LeLe setset--uiduid sursur
//binbin//passwdpasswd permetpermet àà unun utilisateurutilisateur λλ dede modifiermodifier
//etcetc//passwdpasswd àà traverstravers lele programmeprogramme //binbin//passwdpasswd ((λλ ayantayant
"pris"pris l'identité"l'identité" dede rootroot pendantpendant cettecette exécution)exécution)
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
3030
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- droitsdroits d'accèsd'accès auxaux fichiersfichiers setset--gidgid
SystèmeSystème dede fichiersfichiers -- droitsdroits d'accèsd'accès auxaux fichiersfichiers
setset--gidgid
•• 's''s' àà lala placeplace dede 'x''x' pourpour lele groupegroupe propriétairepropriétaire
(zone(zone groupgroup))
–– PourPour unun exécutableexécutable :: mêmemême rôlerôle queque lele setset--uiduid maismais cettecette foisfois--ci,ci,
appartenanceappartenance dudu processusprocessus auau groupegroupe propriétairepropriétaire dudu
programmeprogramme
–– PourPour unun répertoirerépertoire :: toustous lesles fichiersfichiers etet répertoiresrépertoires crééscréés soussous cece
répertoirerépertoire aurontauront automatiquementautomatiquement pourpour groupegroupe propriétairepropriétaire
celuicelui dudu répertoirerépertoire enen questionquestion mêmemême sisi lele créateurcréateur n'appartientn'appartient
paspas àà cece groupe.groupe.
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
3131
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- droitsdroits d'accèsd'accès auxaux fichiersfichiers stickysticky
SystèmeSystème dede fichiersfichiers -- droitsdroits d'accèsd'accès auxaux fichiersfichiers
stickysticky bitbit
•• 't''t' àà lala placeplace dede 'x''x' pourpour lesles autresautres (zone(zone othersothers))
•• DansDans unun répertoirerépertoire autoriséautorisé enen modificationmodification ((ww
activé)activé) pourpour lele groupegroupe et/ouet/ou pourpour lesles autres,autres, seulseul
rootroot etet lele propriétairepropriétaire d'und'un fichierfichier ff dansdans cece
répertoirerépertoire peuventpeuvent détruiredétruire ff
•• ExempleExemple ::
$$ lsls --ldld //tmptmp /var/spool/mail/var/spool/mail
--rwxrwxrwtrwxrwxrwt 22 rootroot syssys
512512 AugAug 3030 08:1208:12 //tmptmp
--rwxrwxrwtrwxrwxrwt 22 rootroot mailmail 512512 SepSep 22 09:3009:30 /var/spool/mail/var/spool/mail
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
3232
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- modificationmodification desdes droitsdroits d'accèsd'accès auxaux
SystèmeSystème dede fichiersfichiers --
modificationmodification desdes droitsdroits d'accèsd'accès auxaux fichiersfichiers
chmodchmod modemode [,mode]…[,mode]… référence
référence
ModifierModifier lesles modemodess dede référenceréférence commecomme suitsuit ::
•• modemode estest soussous lala formeforme :: quiqui permissionpermission opérationopération
•• quiqui :: combinaisoncombinaison desdes lettreslettres ::
uu((useruser),), gg((groupgroup),), oo((othersothers)) etet aa ((allall :: parpar défaut)défaut)
•• permissionpermission :: ++ (autoriser),(autoriser), -- (interdire),(interdire), == (interdire(interdire lesles autres)autres)
•• opérationopération :: rr,, ww,, xx,, ss ((setset--uiduid ouou setset--gidgid)) ouou tt ((stickysticky bitbit))
•• ExemplesExemples ::
$$ lsls --ll listeliste chap1.texchap1.tex
--rwrw--rr----rr---- 11 adamadam staffstaff 24362436 JunJun 44 19921992 chap1.texchap1.tex
--rwxrrwxr--xrxr--xx 11 adamadam staffstaff 74367436 JanJan 22 14:2014:20 listeliste
$$ chmodchmod g+w,og+w,o--rr chap1.tex;chap1.tex; chmodchmod u+su+s listeliste
$$ lsls --ll listeliste chap1.texchap1.tex
--rwrw--rwrw-------- 11 adamadam staffstaff 24362436 JunJun 44 19921992 chap1.texchap1.tex
--rwsrrwsr--xrxr--xx 11 adamadam staffstaff 74367436 JanJan 22 14:2014:20 listeliste
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
3333
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- droitsdroits d'accèsd'accès parpar défautdéfaut MasqueMasque
SystèmeSystème dede fichiersfichiers --
droitsdroits d'accèsd'accès parpar défautdéfaut
MasqueMasque sursur lesles droitsdroits d'accèsd'accès
•• $$ umaskumask --SS
u=u=rwxrwx,, g=g=rxrx,, o=o=rxrx
•• $$ umaskumask
022022
•• 000000 010010 010010 :: écritureécriture binairebinaire dudu masquemasque àà basebase 88
rwxrwx rwxrwx rwxrwx :: droitsdroits proposésproposés
rwxrwx rr--xx rr--xx :: droitsdroits retenusretenus
•• $$ umaskumask 027027
nouveaunouveau masquemasque ::
000000 010010
111111
droitsdroits retenusretenus pourpour uneune créationcréation :: rwxrwx rr--xx ------
•• DansDans chmodchmod,, lesles modesmodes peuventpeuvent êtreêtre numériquesnumériques
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
3434
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- réré--attributionattribution desdes fichiersfichiers chgrpchgrp
SystèmeSystème dede fichiersfichiers --
réré--attributionattribution desdes fichiersfichiers
chgrpchgrp [[--optionoption]] id_groupeid_groupe référenceréférence
chownchown [[--optionoption]] id_utilisateurid_utilisateur référenceréférence
RendreRendre lele groupe/l'utilisateurgroupe/l'utilisateur désignédésigné propriétairepropriétaire dede référenceréférence
••
optionoption ::
RR :: changementchangement dede groupe/propriétairegroupe/propriétaire sursur toutetoute uneune
arborescencearborescence
hh :: sisi référenceréférence estest unun lienlien symbolique,symbolique, limiterlimiter lele changementchangement
auau lienlien symboliquesymbolique etet nonnon auau fichierfichier désignédésigné parpar cece lienlien
•• id_utilisateurid_utilisateur :: N°N° ouou nomnom dede loginlogin d'und'un utilisateurutilisateur
•• id_groupeid_groupe :: N°N° ouou nomnom dede groupegroupe
DansDans certainscertains systèmes,systèmes, seulseul rootroot peutpeut lesles exécuterexécuter
(problème(problème dede quotas)quotas)
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
3535
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- notionnotion dede lienlien LienLien physiquephysique •• AssocierAssocier
SystèmeSystème dede fichiersfichiers -- notionnotion dede lienlien
LienLien physiquephysique
•• AssocierAssocier différentsdifférents nomsnoms (liens)(liens) àà unun fichierfichier (ordinaire(ordinaire ouou spéspécial)cial)
•• AvantagesAvantages ::
–– uneune seuleseule copiecopie sursur lele disquedisque etet plusieursplusieurs façonsfaçons d'yd'y accéderaccéder
–– modificationsmodifications disponiblesdisponibles immédiatementimmédiatement sursur toustous lesles fichiersfichiers liliésés
–– raccourcisraccourcis pourpour desdes nomsnoms dede fichiersfichiers compliquéscompliqués àà retenirretenir
–– uneune seuleseule entréeentrée dansdans lala tabletable (bornée)(bornée) desdes attributsattributs (un(un seulseul iindex)ndex)
•• LimitationsLimitations
–– impossibleimpossible dede fairefaire unun lienlien sursur unun répertoirerépertoire
–– liensliens réalisablesréalisables uniquementuniquement dansdans lele mêmemême systèmesystème dede fichiersfichiers
•• ExemplesExemples ::
$$ lnln fichfich fich1;fich1; lnln //usrusr/local//local/binbin//gnugnu
awkawk
~/~/binbin//awkawk
$$ lsls --lili fichfich fich1fich1 //usrusr/local//local/binbin//gnugnu
awkawk
~/~/binbin//awkawk
845845
--rwrw--rr----rr---- 22 adamadam staffstaff
845845
--rwrw--rr----rr---- 22 adamadam staffstaff
6060 FebFeb 2424 16:3016:30 fichfich
6060 FebFeb 2424 16:3016:30 fich1fich1
126126
--rwxrrwxr--xrxr--xx 44 rootroot binbin
126126
--rwxrrwxr--xrxr--xx 44 rootroot binbin
456789456789 JanJan 22 16:3016:30 //usrusr/local//local/binbin//gnugnu awkawk
456789456789 JanJan 22 16:3016:30 /home/staff//home/staff/adamadam//binbin//awkawk
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
3636
©© A.EDA.ED--DBALIDBALI
SystèmeSystème dede fichiersfichiers -- notionnotion dede lienlien LienLien symboliquesymbolique •• MêmeMême
SystèmeSystème dede fichiersfichiers -- notionnotion dede lienlien
LienLien symboliquesymbolique
•• MêmeMême notionnotion queque lienlien physiquephysique
•• LienLien sursur lesles répertoiresrépertoires possiblepossible
•• LienLien auau delàdelà dudu systèmesystème dede fichiersfichiers dudu fichierfichier d'origined'origine (y(y compcomprisris lesles
systèmessystèmes dede fichiersfichiers réseau:réseau: NFSNFS))
•• PossibilitéPossibilité dede créercréer desdes liensliens sursur desdes fichiersfichiers nonnon encoreencore existexistantsants
•• InformationInformation "lien""lien" plusplus lisiblelisible auau lsls
•• CréationCréation d'und'un nouvelnouvel indexindex
ExempleExemple ::
$$ lnln --ss ~~duranddurand/.profile/.profile .profile.profile
$$ lsls --lili .profile.profile ~~duranddurand/.profile/.profile
33873387
lrwxrwxrwxlrwxrwxrwx 11 adamadam
staffstaff
99 FebFeb 2424 17:4017:40 .profile.profile -->> …/…/duranddurand/.profile/.profile
33803380
--rwrw--rr----rr---- 11 duranddurand staffstaff 896896 JunJun 44 16:3016:30 …/…/duranddurand/.profile/.profile
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
3737
©© A.EDA.ED--DBALIDBALI
QuelquesQuelques commandescommandes usuellesusuelles -- 11 ContenuContenu d'und'un
QuelquesQuelques commandescommandes usuellesusuelles -- 11
ContenuContenu d'und'un répertoire/caractéristiquesrépertoire/caractéristiques d'und'un fichierfichier :: lsls
••
$$ lsls
ProgsProgs
RapportsRapports
chap1.texchap1.tex
listeliste
•• $$ lsls --aiai
125125
20982098
127127 ProgsProgs
976976 RapportsRapports
126126 chap1.texchap1.tex
879879 listeliste
–– --aa donnedonne aussiaussi lesles fichiersfichiers "cachés""cachés" (commencent(commencent parpar '.''.'))
–– --ii donnedonne lesles numérosnuméros d'indexd'index
•• $$ lsls --aiai ProgsProgs
127127
33243324 calcul.ccalcul.c
125125
45784578 differencedifference.c.c
33803380 tri.adatri.ada
675675 elemelem.p.p
–– '.''.' etet ProgsProgs ontont mêmemême numéronuméro d'indexd'index
•• $$ lsls --ldld ProgsProgs
drwxrdrwxr--xrxr--xx 22 adamadam
512512 FebFeb 2727 16:1216:12 ProgsProgs
–– --dd pourpour nene paspas éxploreréxplorer lele répertoirerépertoire ProgsProgs
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
3838
©© A.EDA.ED--DBALIDBALI
QuelquesQuelques commandescommandes usuellesusuelles -- 22 •• $$ lsls --ll drwxrdrwxr--xrxr--xx 22 adamadam
QuelquesQuelques commandescommandes usuellesusuelles -- 22
•• $$ lsls --ll
drwxrdrwxr--xrxr--xx 22 adamadam staffstaff
drwxrdrwxr--xrxr--xx 22 adamadam staffstaff
512512 FebFeb 2727 16:1216:12 ProgsProgs
512512 FebFeb 2727 19911991 RapportsRapports
--rwrw--rr----rr---- 11 adamadam staffstaff 24362436 JunJun 44 19921992 chap1.texchap1.tex
--rwxrrwxr--xrxr--xx 11 adamadam staffstaff 74367436 JanJan 22 14:2014:20 listeliste
•• AutresAutres optionsoptions ::
–– --RR :: ExplorerExplorer récursivementrécursivement lesles soussous répertoiresrépertoires
–– --tt :: AffichageAffichage parpar datedate dede dernièredernière modification,modification, dudu plusplus récentrécent aauu
plusplus ancienancien
–– --uu :: AffichageAffichage parpar datedate dede dernièredernière lecturelecture (utilisée(utilisée avecavec --ll ouou --tt))
–– --rr :: InverserInverser l'ordrel'ordre dede tri,tri, dudu ++ ancienancien auau ++ récentrécent (selon(selon lele trtri)i)
––
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
3939
©© A.EDA.ED--DBALIDBALI
QuelquesQuelques commandescommandes usuellesusuelles -- 33 RéférenceRéférence dudu répertoirerépertoire dede
QuelquesQuelques commandescommandes usuellesusuelles -- 33
RéférenceRéférence dudu répertoirerépertoire dede travailtravail :: pwdpwd
•• $$ pwdpwd
/home/staff//home/staff/adamadam/Rapports/ventes/Rapports/ventes
VisualiseVisualise lala référenceréférence absolueabsolue dudu répertoirerépertoire dede travailtravail courantcourant
ChangementChangement dede répertoirerépertoire dede travailtravail :: cdcd
•• $$ cdcd
retourretour auau répertoirerépertoire dede loginlogin
$$ pwdpwd
/home/staff//home/staff/adamadam
$$ cdcd //usrusr/local//local/liblib
$$ pwdpwd
//usrusr/local//local/liblib
•• $$ cdcd
/ / / /etudeetude//duponddupond
$$ pwdpwd
/home//home/etudeetude//duponddupond
•• $$ cdcd ~~adamadam/perso/perso
kshksh:: /home/staff//home/staff/adamadam/perso:/perso: permissionpermission denieddenied
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
4040
©© A.EDA.ED--DBALIDBALI
QuelquesQuelques commandescommandes usuellesusuelles -- 44 CopieCopie physiquephysique d'und'un fichierfichier
QuelquesQuelques commandescommandes usuellesusuelles -- 44
CopieCopie physiquephysique d'und'un fichierfichier :: cpcp
•• CopieCopie physiquephysique d'und'un fichierfichier dansdans unun autreautre
–– créationcréation d'und'un nouvelnouvel indexindex etet
–– copiecopie effectiveeffective dudu contenucontenu dudu premierpremier fichierfichier
•• ExempleExemple ::
$$ lsls --ll
--rwrw--rr----rr---- 11 adamadam staffstaff 6060 FebFeb 2424 16:3016:30 elemelem.p.p
$$ cpcp elemelem.p.p cpelemcpelem.p.p
$$ lsls --lili
676676
--rwrw--rr----rr---- 11 adamadam staffstaff 6060 FebFeb 2424 17:2017:20 cpelemcpelem.p.p
675675
--rwrw--rr----rr---- 11 adamadam staffstaff 6060 FebFeb 2424 16:3016:30 elemelem.p.p
•• lesles indexesindexes sontsont différents,différents, cece quiqui prouveprouve queque lesles deuxdeux
fichiersfichiers nene correspondentcorrespondent paspas auau mêmemême objetobjet (même(même
s'ilss'ils ontont lele mêmemême contenu)contenu)
•• L'optionL'option --rr permetpermet uneune copiecopie récursiverécursive d'und'un répertoirerépertoire
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
4141
©© A.EDA.ED--DBALIDBALI
QuelquesQuelques commandescommandes usuellesusuelles -- 55 ChangementChangement dudu nomnom d'und'un lienlien
QuelquesQuelques commandescommandes usuellesusuelles -- 55
ChangementChangement dudu nomnom d'und'un lienlien (fichier)(fichier) :: mvmv
•• $$ lnln elemelem.p.p elem1.p;elem1.p; mvmv elemelem.p.p elem2.pelem2.p
$$ lsls --lili elemelem**
675675
--rwrw--rr----rr---- 22 adamadam staffstaff 6060 FebFeb 2424 16:3016:30 elem1.pelem1.p
675675
--rwrw--rr----rr---- 22 adamadam staffstaff 6060 FebFeb 2424 16:3016:30 elem2.pelem2.p
l'optionl'option --ii permetpermet unun renommagerenommage interactifinteractif
SuppressionSuppression dede liensliens (fichiers)(fichiers) :: rmrm
•• $$ rmrm elem2.pelem2.p
$$ lsls --lili elemelem**
675675
--rwrw--rr----rr---- 11 adamadam staffstaff 6060 FebFeb 2424 16:3016:30 elem1.pelem1.p
•• PourPour qu'unqu'un fichierfichier soitsoit physiquementphysiquement supprimésupprimé sursur lele disque,disque, ilil estest
nécessairenécessaire qu'ilqu'il nene possèdepossède plusplus aucunaucun lienlien physiquephysique (condition(condition
insuffisante)insuffisante)
•• L'optionL'option --ii permetpermet uneune suppressionsuppression interactiveinteractive
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
4242
©© A.EDA.ED--DBALIDBALI
LaLa générationgénération desdes nomsnoms dede fichiersfichiers •• DansDans uneune ligneligne dede
LaLa générationgénération desdes nomsnoms dede fichiersfichiers
••
DansDans uneune ligneligne dede commande,commande, unun certaincertain nombrenombre dede caractèrescaractères sontsont utilisésutilisés
pourpour construireconstruire desdes nomsnoms dede fichiersfichiers ::
CaractèreCaractère
InterprétationInterprétation
??
**
caractèrecaractère quelconquequelconque
chaînechaîne dede caractèrescaractères quelconquequelconque (éventuellement(éventuellement vide)vide)
[[
[![!
]]
débutdébut dede définitiondéfinition d'und'un ensembleensemble
débutdébut dede définitiondéfinition dudu complémentcomplément d'und'un ensembleensemble
finfin dede définitiondéfinition d'und'un ensembleensemble ouou dede sonson complémentcomplément
--
marquemarque d'intervalled'intervalle dansdans unun ensembleensemble
••
ExemplesExemples ::
••
[a[a--z]*.cz]*.c désignedésigne toutestoutes lesles référencesréférences commençantcommençant parpar uneune lettrelettre minuscuminusculele
etet sese terminantterminant parpar .c.c
?[A?[A--Z0Z0--9]?9]? désignedésigne toustous lesles fichiersfichiers dede 33 caractèrescaractères dontdont lele secondsecond estest sosoitit
uneune lettrelettre majusculemajuscule soitsoit unun chiffrechiffre
RestrictionsRestrictions ::
LeLe caractèrecaractère
enen débutdébut dede motmot ouou aprèsaprès unun // ouou lele caractèrecaractère // nnee sontsont paspas
couvertscouverts parpar cesces abréviationsabréviations
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
4343
©© A.EDA.ED--DBALIDBALI
QuelquesQuelques commandescommandes usuellesusuelles -- 66 CréationCréation d'und'un répertoirerépertoire ::
QuelquesQuelques commandescommandes usuellesusuelles -- 66
CréationCréation d'und'un répertoirerépertoire :: mkdirmkdir
•• $$ mkdirmkdir ProgsProgs/nouveau/nouveau;; lsls --ldld ProgsProgs/nouveau/nouveau
drwxrdrwxr--xrxr--xx 22 adamadam 2424 FebFeb 2727 18:3218:32 nouveaunouveau
$$ lsls --alal ProgsProgs/nouveau/nouveau
drwxrdrwxr--xrxr--xx 22 adamadam 2424 FebFeb 2727 18:3218:32
drwxrdrwxr--xrxr--xx 33 adamadam 10241024 FebFeb 2727 18:3218:32
AA sasa création,création, unun répertoirerépertoire contientcontient lesles deuxdeux liensliens
(un(un teltel répertoirerépertoire serasera appeléappelé vide)vide)
etet
SuppressionSuppression d'und'un répertoirerépertoire :: rmdirrmdir//rmrm
•• $$ rmdirrmdir ProgsProgs
rmdirrmdir:: ProgsProgs:: DirectoryDirectory notnot emptyempty
$$ rmdirrmdir ProgsProgs/nouveau/nouveau
•• l'optionl'option --rr dede rmrm permetpermet uneune suppressionsuppression récursiverécursive
$$ rmrm --rr ProgsProgs
$$ lsls --ll ProgsProgs
ProgsProgs notnot foundfound
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
4444
©© A.EDA.ED--DBALIDBALI
LesLes processusprocessus DéfinitionDéfinition :: •• UnUn processusprocessus fournit,fournit, àà unun
LesLes processusprocessus
DéfinitionDéfinition ::
•• UnUn processusprocessus fournit,fournit, àà unun instantinstant donné,donné, l'imagel'image dede
l'étatl'état d'avancementd'avancement dede l'exécutionl'exécution d'und'un programmeprogramme
•• ProcessusProcessus == suitesuite d'instructionsd'instructions ++ donnéesdonnées ++ blocbloc dede
contrôlecontrôle
•• BlocBloc dede contrôlecontrôle == ensembleensemble dede valeursvaleurs dede registresregistres ++ pilepile
d'exécutiond'exécution ++ liensliens avecavec lesles utilisateursutilisateurs etet lele systèmesystème
d'E/Sd'E/S ++
•• TouteToute activitéactivité (demandes(demandes explicitesexplicites desdes utilisateursutilisateurs ouou
purementpurement système)système) sese traduittraduit enen termeterme dede processusprocessus ::
processusprocessus démons/processusdémons/processus utilisateursutilisateurs
⇒⇒ nécessiténécessité d'und'un ordonnanceurordonnanceur ((schedulerscheduler))
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
4545
©© A.EDA.ED--DBALIDBALI
EtatsEtats d'und'un processusprocessus -- schémaschéma 1 nouveau prêt zombi 2 9 6 8 3 actif
EtatsEtats d'und'un processusprocessus -- schémaschéma
1
nouveau
prêt
zombi
2
9
6
8
3
actif
actif
7
noyau
utilisateur
4
5
suspendu
endormi
7
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
4646
©© A.EDA.ED--DBALIDBALI
EtatsEtats d'und'un processusprocessus -- légendelégende LesLes conditionsconditions desdes
EtatsEtats d'und'un processusprocessus -- légendelégende
LesLes conditionsconditions desdes transitionstransitions ::
11
lele processusprocessus aa acquisacquis lesles ressourcesressources nécessairesnécessaires
22
éluélu parpar l'ordonnanceurl'ordonnanceur :: changementchangement dede contextecontexte
33
revientrevient d'und'un appelappel systèmesystème ouou d'uned'une interruptioninterruption
44
réaliseréalise unun appelappel systèmesystème ouou aa subitsubit uneune interruptioninterruption
55
enen attenteattente d'und'un événementévénement (interne(interne :: libérationlibération ressourceressource
systèmesystème ouou terminaisonterminaison d'und'un processus,processus, externeexterne ::
terminaisonterminaison d'uned'une E/S)E/S)
66
l'événementl'événement attenduattendu s'ests'est produitproduit
77
délivrancedélivrance d'und'un signalsignal particulierparticulier ((STOPSTOP))
88
réveilréveil parpar lele signalsignal CONTCONT
99
lele processusprocessus sese terminetermine
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
4747
©© A.EDA.ED--DBALIDBALI
EnvoiEnvoi d'und'un signalsignal àà unun processusprocessus $$ killkill [[--id_signal]id_signal]
EnvoiEnvoi d'und'un signalsignal àà unun processusprocessus
$$ killkill [[--id_signal]id_signal] N°_processusN°_processus
•• id_signalid_signal :: unun entierentier entreentre 11 etet 2828 ouou unun nomnom symboliquesymbolique
•• N°_processusN°_processus :: entierentier uniqueunique donnédonné parpar lala commandecommande psps
•• $$ killkill --ll donnedonne lala listeliste desdes nomsnoms symboliquessymboliques possiblespossibles
•• ExempleExemple ::
$$ killkill --99 45294529 ouou $$ killkill --KILLKILL 45294529
"Tuer""Tuer" lele processusprocessus numéronuméro 45294529
$$ killkill --2323 341341 ouou $$ killkill --STOPSTOP 341341 ouou ^z^z (si(si terminal)terminal)
SuspendreSuspendre lele processusprocessus numéronuméro 341341 ((→→ étatétat Suspendu)Suspendu)
$$ killkill --2525 341341 ouou $$ killkill --CONTCONT 341341 ((→→ étatétat Prêt)Prêt)
RéveillerRéveiller lele processusprocessus numéronuméro 341341
$$ killkill --22 542542 ouou $$ killkill --INTINT 542542 ouou ^c^c (si(si terminal)terminal)
InterrompreInterrompre lele processusprocessus numéronuméro 542542 ((→→ étatétat ZambiZambi))
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
4848
©© A.EDA.ED--DBALIDBALI
LaLa commandecommande psps $$ psps [options][options] •• FournitFournit desdes informationsinformations sursur
LaLa commandecommande psps
$$ psps [options][options]
•• FournitFournit desdes informationsinformations sursur lesles processusprocessus actifsactifs
dudu systèmesystème
•• optionsoptions :: permettentpermettent dede spécifierspécifier
–– desdes ensemblesensembles dede processusprocessus particuliersparticuliers
–– lesles caractéristiquescaractéristiques àà visualiservisualiser pourpour chacunchacun d'euxd'eux
•• ExemplesExemples ::
$$ psps
PIDPID TTTT
897897 pts1pts1
332332 pts1pts1
341341 pts1pts1
STATSTAT TIMETIME COMMANDCOMMAND
RR
IWIW
IWIW
0:000:00 psps
0:020:02 --cshcsh
0:010:01 emacsemacs chap1.texchap1.tex
$$ psps --uu adamadam
donnedonne toustous lesles processusprocessus appartenantappartenant àà adamadam
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
4949
©© A.EDA.ED--DBALIDBALI
LaLa commandecommande psps $$ psps --efef UIDUID PIDPID PPIDPPID CC rootroot 00 0000 rootroot 11
LaLa commandecommande psps
$$ psps --efef
UIDUID
PIDPID PPIDPPID
CC
rootroot
00
0000
rootroot
11
0000
rootroot
22
0000
rootroot
33
0000
rootroot
152152
11
00
STIMESTIME TTYTTY
OctOct 1212 ??
OctOct 1212 ??
OctOct 1212 ??
OctOct 1212 ??
OctOct 1212 ??
TIMETIME CMDCMD
0:010:01 schedsched
0:100:10 //etcetc//initinit --
0:000:00 pageoutpageout
22:2122:21 fsflushfsflush
0:050:05 //usrusr//sbinsbin//inetdinetd --ss
rootroot
157157
11
00
rootroot
135135
11
00
rootroot
174174
11
00
rootroot
178178
11
00
rootroot
203203
11
00
rootroot
187187
11
00
OctOct 1212 ??
OctOct 1212 ??
OctOct 1212 ??
OctOct 1212 ??
OctOct 1212 ??
OctOct 1212 ??
ftpftp 2670826708
152152
00 14:07:2714:07:27 ??
rootroot
237237
11
00
rootroot
280280
11
00
rootroot
282282
11
00
rootroot
298298
11
00
OctOct 1212 ??
OctOct 1212 ??
OctOct 1212 ??
OctOct 1212 ??
tomtom 2694626946 2693726937 00 14:16:1714:16:17 ptspts/9/9
adamadam 2699526995 2699326993 00 14:17:3914:17:39 ptspts/11/11
rootroot 2702527025 2699526995 00 14:18:5414:18:54 ptspts/11/11
rootroot 2699226992
152152
00 14:16:2614:16:26 ??
0:010:01 //usrusr//liblib//nfsnfs//statdstatd
0:050:05 //usrusr//liblib//netsvcnetsvc//ypyp//ypbindypbind --broadcastbroadcast
1:471:47 //usrusr//liblib//autofsautofs//automountdautomountd
0:060:06 //usrusr//sbinsbin//syslogdsyslogd
0:000:00 //usrusr//liblib//lpschedlpsched
0:100:10 //usrusr//sbinsbin//croncron
0:000:00 in.in.ftpdftpd
0:010:01 //usrusr//liblib//sendmailsendmail --bdbd --q15mq15m
0:020:02 //usrusr//liblib//nfsnfs//mountdmountd
0:000:00 //usrusr//liblib//nfsnfs//nfsdnfsd --aa 1616
0:030:03 //usrusr//dtdt//binbin//dtlogindtlogin --daemondaemon
0:000:00 //usrusr/local//local/binbin//tcshtcsh
0:000:00 --bashbash
0:000:00 psps --efef
0:000:00 rpcrpc rusersdrusersd
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
5050
©© A.EDA.ED--DBALIDBALI
LancementLancement dede processusprocessus enen arrièrearrière planplan CaractèreCaractère && •• $$
LancementLancement dede processusprocessus enen arrièrearrière planplan
CaractèreCaractère &&
••
$$ cmdcmd 11
&&
[1][1]
308308
(1:(1: N°N° locallocal ((commandcommand jobjob),), 308308 :: N°N° dudu processusprocessus associé)associé)
$$ cmdcmd 22
[1][1] ++ DoneDone
cmdcmd 11 &&
CommandesCommandes bgbg etet fgfg
••
$$ cmdcmd
^z^z
$$ bgbg (pour(pour bbackackgground,round, $$ fgfg lele remetremet enen premierpremier plan)plan)
[1][1]
356356
cmdcmd
$$ killkill --99 356356 (si,(si, parpar exemple,exemple, l'exécutionl'exécution dede cmdcmd s'éternise)s'éternise)
[1][1] ++ KilledKilled
cmdcmd
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
5151
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes processusprocessus enen arrièrearrière planplan CommandeCommande nohupnohup •• QuandQuand
GestionGestion desdes processusprocessus enen arrièrearrière planplan
CommandeCommande nohupnohup
•• QuandQuand onon sese déconnecte,déconnecte, lele systèmesystème envoienvoi lele signalsignal HUPHUP auxaux
commandescommandes restantesrestantes enen arrièrearrière plan,plan, pourpour lesles interrompreinterrompre
•• PourPour maintenirmaintenir lala commandecommande mêmemême aprèsaprès déconnexiondéconnexion ::
$$ nohupnohup commandecommande &&
lesles sortiessorties serontseront dirigéesdirigées dansdans lele fichierfichier nohupnohup.out.out
CommandeCommande nicenice
•• LanceLance uneune commandecommande avecavec uneune prioritépriorité moindremoindre queque lala
normalenormale
•• AllégeAllége doncdonc lala chargecharge dudu systèmesystème
•• LesLes prioritéspriorités vontvont dede --2020 (priorité(priorité maxmax)) àà +20+20 (priorité(priorité min)min)
•• SeulSeul rootroot peutpeut lancerlancer desdes commandescommandes avecavec desdes prioritéspriorités
négativesnégatives
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
5252
©© A.EDA.ED--DBALIDBALI
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$

DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell $$
DépendDépend dudu ShellShell utilisé.utilisé. N'existeN'existe paspas soussous BourneBourne--ShellShell
$$ cmd1cmd1 &&
[1][1]
657657
$$ cmd2cmd2 &&
[2][2]
658658
$$ killkill %2%2
[2][2] -- TerminatedTerminated cmd2&cmd2&
$$ jobsjobs
[1][1] ++ RunningRunning
cmd1&cmd1&
$$ jobsjobs
[2][2] ++ RunningRunning cmd2&cmd2&
[1][1] -- RunningRunning cmd1&cmd1&
$$ stopstop %+%+ ((ouou %2)%2)
cmd
cmd &
1er Plan
arrière plan
fg
^z
^z
^z stop
^z stop

stop

[2][2] ++ StoppedStopped (signal)(signal) cmd2&cmd2& $$ fgfg %1%1 ((ouou %%--))

[2][2] ++ StoppedStopped (signal)(signal) cmd2&cmd2& $$ fgfg %1%1 (( ouou %%--)) cmd1 cmd1

cmd1cmd1

^z^z

fg

bg

[1][1] ++ StoppedStopped cmd1&cmd1&

$$ jobsjobs

[1][1] ++ StoppedStopped cmd1&cmd1&

$ $ jobs jobs [1][1] ++ StoppedStopped cmd1&cmd1& [2] [2] - - Stopped Stopped (signal) (signal)

[2][2] -- StoppedStopped (signal)(signal) cmd2&cmd2&

$$ bgbg [1][1] cmd1&cmd1&

Stoppé

Stoppé

Stoppé
cmd2& $$ bgbg [1][1] cmd1&cmd1& Stoppé 53 53 © © A.ED A.ED - - DBALI DBALI
cmd2& $$ bgbg [1][1] cmd1&cmd1& Stoppé 53 53 © © A.ED A.ED - - DBALI DBALI

5353

©© A.EDA.ED--DBALIDBALI

GestionGestion desdes "jobs""jobs"

jobsjobs

GestionGestion desdes "jobs""jobs" jobsjobs UNIXUNIX :: ConceptsConcepts générauxgénéraux etet
GestionGestion desdes "jobs""jobs" jobsjobs UNIXUNIX :: ConceptsConcepts générauxgénéraux etet
GestionGestion desdes "jobs""jobs" jobsjobs UNIXUNIX :: ConceptsConcepts générauxgénéraux etet
GestionGestion desdes "jobs""jobs" jobsjobs UNIXUNIX :: ConceptsConcepts générauxgénéraux etet

UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes

Entrées/sortiesEntrées/sorties standardsstandards 33 fichiersfichiers ouvertsouverts parpar lele Shell:Shell: ••
Entrées/sortiesEntrées/sorties standardsstandards
33 fichiersfichiers ouvertsouverts parpar lele Shell:Shell:
•• entréeentrée standardstandard :: clavier,clavier, entréeentrée desdes commandescommandes ((stdinstdin))
descripteurdescripteur dudu fichierfichier stdinstdin :: 00
•• sortiesortie standardstandard :: écran,écran, sortiesortie desdes résultatsrésultats ((stdoutstdout))
descripteurdescripteur dudu fichierfichier stdoutstdout :: 11
•• sortiesortie d'erreursd'erreurs :: écran,écran, affichageaffichage desdes erreurserreurs éventuelleséventuelles
((stderrstderr)) descripteurdescripteur dudu fichierfichier stderrstderr :: 22
EnEn tempstemps normalnormal ::
écran
clavier
stdin
stderr
Commande lit ses données dans
l'entrée standard (clavier) et affiche ses
résultats et ses erreurs sur l'écran
Commande
stdout
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
5454
©© A.EDA.ED--DBALIDBALI
RedirigerRediriger lesles entrées/sortiesentrées/sorties -- lala famillefamille BourneBourne--ShellsShells symbole
RedirigerRediriger lesles entrées/sortiesentrées/sorties --
lala famillefamille BourneBourne--ShellsShells
symbole
signification
<
redirige l'entrée standard
>
>>
2>
2>>
<<
redirige la sortie standard (création)
redirige la sortie standard (ajout)
redirige la sortie d'erreurs (création)
redirige la sortie d'erreurs (ajout)
redirige de manière spéciale de l'entrée standard
n>&m
associer le fichier de descripteur n,
au fichier de descripteur m
Exemples :
$ cat fich 1 fich 2
fich n > fich_res
concaténer les fich i dans un nouveau fichier fich_res
$ mail Michel.Durand@univ-orleans.fr < lettre
envoyer un courrier, à Michel Durand, dont le texte est le contenu de lettre
$ ls -l *.tex *cal*.c 1> ls_res 2>&1
rediriger la sorite standard et la sortie des erreurs vers ls_res
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
5555
©© A.EDA.ED--DBALIDBALI
RedirectionRedirection desdes entrées/sortiesentrées/sorties -- lala famillefamille CC--ShellsShells symbole
RedirectionRedirection desdes entrées/sortiesentrées/sorties --
lala famillefamille CC--ShellsShells
symbole
signification
<
redirige la l'entrée standard
>
>>
>&
>>&
<<
redirige la la sortie standard (création)
redirige la la sortie standard (ajout)
redirection sortie standard et sortie d'erreurs (création)
redirection sortie standard et sortie d'erreurs (ajout)
redirection spéciale de l'entrée standard
>!
forcer la redirection même si la variable noclobber est
positionnée (idem pour >&!, >>! et >>&!)
Exemples :
$ ls -l *.txt prog*.ada >>& ls_res
rediriger (par ajout) la sorite standard et la sortie des erreurs vers ls_res
$ (cat fich 1 fich 2
fich n > fich_res) >& fich_err
concaténer les fich i dans un nouveau fichier fich_res.
Les erreurs éventuelles sont dans fich_err
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
5656
©© A.EDA.ED--DBALIDBALI
EnchaînementEnchaînement dede processusprocessus SéquencesSéquences :: •• $$ cmdcmd 11 ;; cmdcmd 22 ;; ; ;
EnchaînementEnchaînement dede processusprocessus
SéquencesSéquences ::
••
$$ cmdcmd 11 ;; cmdcmd 22 ;;
;
;
cmdcmd nn
cmdcmd ii exécutéesexécutées dede façonfaçon indépendantesindépendantes etet séquentielle;séquentielle;
aucunaucun échangeéchange d'informationsd'informations entreentre lesles processus.processus.
$$ cmdcmd 11 ;; cmdcmd 22 ;;
;
;
cmdcmd nn >> fichfich
seuleseule lala sortiesortie standardstandard dede cmdcmd nn estest redirigéeredirigée
SéquencesSéquences groupéesgroupées ::
•• $$ ((cmdcmd 11 ;; cmdcmd 22 ;;
;
;
cmdcmd nn ))
exécutéesexécutées parpar unun soussous ShellShell (environnement(environnement inchangé)inchangé)
$$ {{ cmdcmd 11 ;; cmdcmd 22 ;;
; ;
cmdcmd nn ;; }} (( espaceespace obligatoire)obligatoire)
exécutéesexécutées dansdans l'environnementl'environnement courantcourant
$$ ((cmdcmd 11 ;; cmdcmd 22 ;;
;
;
cmdcmd nn )) >> fichfich
lala sortiesortie standardstandard dede toutestoutes lesles cmdcmd ii estest redirigéeredirigée versvers fichfich
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
5757
©© A.EDA.ED--DBALIDBALI
EnchaînementEnchaînement dede processusprocessus ExemplesExemples :: $$ pwdpwd /home//home/etudeetude//duranddurand
EnchaînementEnchaînement dede processusprocessus
ExemplesExemples ::
$$ pwdpwd
/home//home/etudeetude//duranddurand
$$ ((pwdpwd;; cdcd
; ;
pwdpwd);); pwdpwd
/home//home/etudeetude//duranddurand
/home//home/etudeetude
/home//home/etudeetude//duranddurand
$$ {{ pwdpwd;; cdcd
; ;
pwdpwd;; };}; pwdpwd
/home//home/etudeetude//duranddurand
/home//home/etudeetude
/home//home/etudeetude
FaireFaire communiquercommuniquer lesles cmdcmd ii
$$ cmdcmd 11
>> fichfich 11 ;; cmdcmd 22
<< fichfich 11
>> fichfich 22 ;; cmdcmd 33
<< fichfich 22
>>
fichfich 11 ;; ……
inconvénientsinconvénients :: séquentielle,séquentielle, créationcréation inutileinutile dede fichiers,fichiers, lourlourdeurdeur
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
5858
©© A.EDA.ED--DBALIDBALI
ProcessusProcessus concurrentsconcurrents -- communicationcommunication parpar tubestubes $$ cmdcmd 11 || cmdcmd 22 ||
ProcessusProcessus concurrentsconcurrents --
communicationcommunication parpar tubestubes
$$ cmdcmd 11 || cmdcmd 22 ||
||
cmdcmd nn
cmdcmd ii exécutéesexécutées dede façonfaçon concurrenteconcurrente ::
••
••
communicationcommunication entreentre processusprocessus parpar l'intermédiairel'intermédiaire dede tubestubes (pipe(pipes)s)
UNIXUNIX assureassure lala synchronisationsynchronisation dede l'ensemblel'ensemble desdes processusprocessus lancélancéss
•• PrincipePrincipe :: SortieSortie standardstandard dede cmdcmd ii (1(1 ≤≤ ii << n)n) redirigéeredirigée sursur l'entréel'entrée
standardstandard dede cmdcmd ii+1+1
•• ExempleExemple ::
$$ whowho || wcwc --ll
donnedonne lele nombrenombre dede sessionssessions ouvertesouvertes sursur lala machinemachine
SousSous MSMS--DOS,DOS, lala syntaxesyntaxe estest ressemblanteressemblante maismais lele mécanismemécanisme estest différentdifférent (exécution(exécution
séquentielleséquentielle avecavec utilisationutilisation dede fichiersfichiers intermédiairesintermédiaires détruitdétruitss automatiquement)automatiquement)
1
0
1
0
1
0
1
.
.
.
cmd 1
cmd 2
cmd n
2
2
2
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
5959
©© A.EDA.ED--DBALIDBALI
FiltresFiltres CommandesCommandes ayantayant lala propriétépropriété suivantesuivante :: •• LectureLecture
FiltresFiltres
CommandesCommandes ayantayant lala propriétépropriété suivantesuivante ::
•• LectureLecture sursur leurleur entréeentrée standardstandard etet écritureécriture sursur leurleur sortiesortie
standardstandard
–– QuelquesQuelques filtresfiltres :: catcat,, cmpcmp,, cpiocpio,, cutcut,, diffdiff,, foldfold,, grepgrep,,
headhead,, moremore,, odod,, pgpg,, prpr,, sortsort,, splitsplit,, tailtail,, uniquniq,, wcwc etet
zcatzcat
–– ExemplesExemples dede commandescommandes nonnon filtresfiltres :: lsls,, whowho,, echoecho ouou psps
•• L'entréeL'entrée d'und'un filtre,filtre, quiqui provientprovient d'uned'une autreautre commande,commande, peutpeut
sese symbolisersymboliser parpar lele signesigne --
•• ExemplesExemples ::
$$ headhead --nn 99 fichfich || tailtail +5+5
extraitextrait dede fichfich toutestoutes lesles ligneslignes entreentre lala 55èmeème etet lala 99èmeème
$$ headhead --nn 99 fich1fich1 || tailtail +5+5 || diffdiff fich2fich2 --
comparecompare fich2fich2 avecavec lele boutbout dede fich1fich1 entreentre lala 55èmeème etet lala 99èmeème
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
6060
©© A.EDA.ED--DBALIDBALI
AutresAutres filtresfiltres dddd [[argumentsarguments]] –– CopieCopie dede fichiersfichiers aprèsaprès
AutresAutres filtresfiltres
dddd [[argumentsarguments]]
–– CopieCopie dede fichiersfichiers aprèsaprès conversionconversion (par(par défaut,défaut, entréeentrée
standardstandard convertieconvertie sursur lala sortiesortie standard).standard).
–– argumentsarguments estest uneune suitesuite d'égalitésd'égalités dontdont ::
–– if=if=fichfich :: donnedonne lele fichierfichier d'origined'origine
–– of=of=fichfich :: donnedonne lele fichierfichier ciblecible
–– ibsibs==nn :: blocsblocs dede nn octetsoctets enen entréeentrée (512(512 parpar défaut)défaut)
–– obsobs==nn :: blocsblocs dede nn octetsoctets enen sortiesortie (512(512 parpar défaut)défaut)
–– convconv=ascii=ascii:: conversionconversion dede EBCDICEBCDIC enen ASCIIASCII
–– convconv==ebcdicebcdic:: conversionconversion dede ASCIIASCII enen EBCDICEBCDIC enen ASCIIASCII
–– convconv==lcaselcase:: conversionconversion desdes majusculesmajuscules enen minusculesminuscules
–– convconv==ucaseucase:: conversionconversion desdes minusculesminuscules enen majusculesmajuscules
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
6161
©© A.EDA.ED--DBALIDBALI
AutresAutres filtresfiltres teetee [[--ii]] [[--aa]] [[réf_réf_fichfich ]] –– LesLes informationsinformations
AutresAutres filtresfiltres
teetee [[--ii]] [[--aa]] [[réf_réf_fichfich
]]
–– LesLes informationsinformations lueslues sursur l'entréel'entrée standardstandard sontsont écritesécrites àà lala fofoisis sursur
lala sortiesortie standardstandard etet dansdans lesles fichiersfichiers réf_fichréf_fich
--aa :: étendreétendre lele
contenucontenu desdes fichiersfichiers (mode(mode appendappend).). --ii :: ignorerignorer lesles interruptions.interruptions.
trtr [[--cdscds]] [[chaînechaîne 11 [[chaînechaîne 22 ]]]]
–– CopieCopie l'entréel'entrée standardstandard sursur lala sortiesortie standardstandard aprèsaprès avoiravoir réaliréaliserser
desdes substitutionssubstitutions ouou desdes suppressionssuppressions dede caractèrescaractères définiesdéfinies parpar
lesles arguments.arguments. SubstituerSubstituer lele ii èmeème caractèrecaractère dede chaînechaîne 11 parpar lele ii èmeème
caractèrecaractère dede chaînechaîne 22
OptionsOptions ::
»» --dd
chaînechaîne 11 :: supprimersupprimer
toutestoutes lesles occocc dede carcar définisdéfinis parpar chaînechaîne 11
»» --cc chaînechaîne 11 :: considérerconsidérer lele complémentcomplément dede l'ensl'ens définidéfini parpar chaînechaîne 11
»» --ss chaînechaîne 11 :: supprimersupprimer lesles occocc consécutivesconsécutives desdes carcar définisdéfinis parpar chaînechaîne 11
––
ConventionsConventions d'écritured'écriture desdes chaîneschaînes ::
»» \\cccccc
»» [[c1c1--c2c2]]
»» [[:[[:classeclasse:]]:]]
caractèrecaractère dede codecode ASCIIASCII cccccc
caractèrescaractères entreentre c1c1 etet c2c2 (ordre(ordre lexicographique)lexicographique)
ensembleensemble prédéfiniprédéfini dede caractèrescaractères
((classeclasse == digitdigit,, xdigitxdigit,, cntrlcntrl,, alphaalpha,, alnumalnum,, printprint,, upperupper ouou lowerlower))
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
6262
©© A.EDA.ED--DBALIDBALI
CommandesCommandes d'impressiond'impression lprlpr [[--PPimpimp]] [[--##nbrnbr cpcp]] [[--TTtitretitre]]
CommandesCommandes d'impressiond'impression
lprlpr [[--PPimpimp]] [[--##nbrnbr
cpcp]]
[[--TTtitretitre]] [[--ss]] [[refref
fichfich
] ]
•• Ajoute,Ajoute, dansdans lala queuequeue d'impressiond'impression dede l'imprimantel'imprimante impimp,, unun "job""job"
pourpour imprimerimprimer nbrnbr
cpcp
foisfois lesles fichiersfichiers refref_fich fich.
--TTtitretitre :: utiliseutilise titretitre pourpour l'entêtel'entête desdes pagespages
--ss :: réaliseréalise unun lienlien symboliquesymbolique dede lala queuequeue versvers lele fichierfichier àà
imprimerimprimer (utile(utile sisi refref
fichfich
estest trèstrès grosgros pourpour lala queue)queue)
•• SiSi impimp n'estn'est paspas mentionnémentionné lele nomnom dede l'imprimantel'imprimante utiliséeutilisée figurefigure
dansdans lala variablevariable PRINTERPRINTER
lpqlpq [[--PPimpimp]] [[--ll]] [[++ [intervalle][intervalle] ]] [nom_[nom_utilutil]]
•• AfficheAffiche lele contenucontenu dede lala queuequeue d'impressiond'impression dede imp.imp.
--ll :: affichageaffichage détaillédétaillé yy compriscompris lala machinemachine quiqui aa lancélancé l'impressl'impressionion
++ [intervalle][intervalle] :: affichageaffichage périodiquepériodique (tous(tous lesles intervalleintervalle secondesecondes)s)
nom_nom_utilutil :: sisi spécifié,spécifié, donnedonne lesles jobsjobs appartenantappartenant àà nom_nom_utilutil
lprmlprm [[--PPimpimp]] [[--]] [N°_job[N°_job
]]
•• RetireRetire dede lala queuequeue d'impressiond'impression dede impimp,, toustous mesmes jobsjobs (si(si optionoption --
donné)donné) ouou lesles jobsjobs donnésdonnés parpar lesles N°_jobN°_job
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
6363
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- dudu dudu [[--aa]] [[--ss]] [[--rr]] [[réfréf ]] •• FournitFournit
GestionGestion desdes fichiersfichiers -- dudu
dudu [[--aa]] [[--ss]] [[--rr]] [[réfréf
]]
•• FournitFournit l'espacel'espace alloué,alloué, enen blocsblocs (1(1 blocbloc == 512512
octets)octets) ouou enen kilokilo--octets,octets, auxaux différentsdifférents fichiers.fichiers.
ParcoursParcours récursifrécursif desdes répertoires.répertoires. SansSans argument,argument,
lele répertoirerépertoire courantcourant estest traité.traité.
–– --aa :: informationinformation pourpour toustous lesles fichiersfichiers lorslors dudu parcoursparcours
récursif,récursif,
–– --rr :: indiqueindique lesles répertoiresrépertoires protégés,protégés,
–– --ss :: seulseul lele totaltotal estest indiqué.indiqué.
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
6464
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- ComparaisonsComparaisons cmpcmp [[optionsoptions]] réf_fichréf_fich 11
GestionGestion desdes fichiersfichiers -- ComparaisonsComparaisons
cmpcmp [[optionsoptions]] réf_fichréf_fich 11 réf_fichréf_fich 22
•• Imprime,Imprime, s'ils'il yy aa lieu,lieu, lala positionposition dudu premierpremier caractèrecaractère quiqui
différenciedifférencie réf_fichréf_fich 11 dede réf_fichréf_fich 22
--ll :: toutestoutes lesles différencesdifférences sontsont signaléessignalées
--ss :: aucuneaucune impressionimpression dede différencesdifférences n'estn'est réalisée.réalisée. SeulSeul lele
codecode dede retourretour dede lala commandecommande estest souhaitésouhaité :: 00 (fichiers(fichiers
identiques),identiques), 11 (fichiers(fichiers différents)différents) etet 22 (en(en cascas d'erreurd'erreur :: parpar
exempleexemple fichierfichier inexistantinexistant ouou illisible)illisible)
•• LeLe codecode dede retourretour dede lala dernièredernière commandecommande exécutéeexécutée estest
stocké stocké dans dans la la variable variable d'environnement d'environnement nommée nommée : :
? ?
•• $$ cmpcmp --ss //etcetc//passwdpasswd //etcetc/hosts/hosts
$$ echoecho $?$?
11
lesles deuxdeux fichiersfichiers sontsont différentsdifférents
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
6565
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- ComparaisonsComparaisons commcomm [[--[[123123]]]] réf_fichréf_fich 11
GestionGestion desdes fichiersfichiers -- ComparaisonsComparaisons
commcomm [[--[[123123]]]] réf_fichréf_fich 11 réf_fichréf_fich 22
•• AfficheAffiche sursur troistrois colonnescolonnes lele résultatrésultat dede lala
comparaisoncomparaison dede deuxdeux fichiersfichiers supposéssupposés triés.triés.
–– ColCol 11 :: ligneslignes dede réf_fichréf_fich 11 quiqui nene sontsont paspas dansdans réf_fichréf_fich 22
–– ColCol 22 :: ligneslignes dede réf_fichréf_fich 22 quiqui nene sontsont paspas dansdans réf_fichréf_fich 11
–– ColCol 33 :: ligneslignes communescommunes àà réf_fichréf_fich 11 etet réf_fichréf_fich 22
OcculterOcculter l'affichagel'affichage sursur certainescertaines colonnescolonnes :: --numnum_col_col
–– ExempleExemple ::
$$ commcomm --1212 f1f1 f2f2
afficheaffiche lesles ligneslignes communescommunes àà f1f1 etet f2f2
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
6666
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- ComparaisonsComparaisons diffdiff [[optionsoptions]] réf_fichréf_fich 11
GestionGestion desdes fichiersfichiers -- ComparaisonsComparaisons
diffdiff [[optionsoptions]] réf_fichréf_fich 11 réf_fichréf_fich 22
•• CompareCompare lesles contenuscontenus desdes deuxdeux fichiers.fichiers.
•• optionsoptions
–– --bb ignoreignore lesles différencesdifférences sursur lesles séparateursséparateurs (espace,(espace,
tabulation)tabulation)
–– --ee produitproduit unun textetexte contenantcontenant desdes requêtesrequêtes dede l'éditeurl'éditeur eded
afinafin dede recréerrecréer réf_fichréf_fich 22 àà partirpartir dede
réf_fichréf_fich 11
LesLes requêtesrequêtes
sontsont dede lala formeforme ::
nn 11 aa nn 33 ,n,n 44 ouou nn 11 ,n,n 22 dd nn 33 ouou nn 11 ,n,n 22 cc nn 33 ,n,n 44
•• LesLes différencesdifférences sontsont affichéesaffichées commecomme suitsuit ::
–– lesles ligneslignes quiqui proviennentproviennent dede réf_fichréf_fich 11 sontsont précédéesprécédées dede '<''<'
–– lesles ligneslignes quiqui proviennentproviennent dede réf_fichréf_fich 22 sontsont précédéesprécédées dede '>''>'
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
6767
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- filefile,, headhead,, tailtail filefile [[optionoption]] réfréf ••
GestionGestion desdes fichiersfichiers -- filefile,, headhead,, tailtail
filefile [[optionoption]] réfréf
•• EssaieEssaie dede classifierclassifier lele fichierfichier (ASCII,(ASCII, binaire,binaire, répertoire,répertoire,
programmeprogramme C,C,
) ).
L'optionL'option --ff indiqueindique queque lele 1er1er argumentargument
contientcontient lala listeliste desdes fichiersfichiers dontdont onon veutveut déterminerdéterminer lele type.type.
headhead [[--cc nbrnbr_c_c]] [[--nn nbrnbr_l_l]] [[réf_réf_fichfich
]]
•• AfficheAffiche lesles nbrnbr_lignes_lignes premièrespremières ligneslignes (par(par défautdéfaut 1010)) ouou lesles
nbrnbr_c_c caractèrescaractères luslus dansdans chacunchacun desdes fichiersfichiers réf_fichréf_fich
tailtail [[--ff]] [[++nombrenombre ||--nombrenombre][][unitéunité]] [[réf_réf_fichfich]]
•• AfficheAffiche lala finfin d'und'un fichier.fichier.
–– nombrenombre (par(par défautdéfaut 1010)) spécifiespécifie lala distancedistance avantavant lala finfin dudu fichierfichier
('('++'' :: comptercompter dudu début,début, ''--'' comptercompter àà partirpartir dede lala fin)fin)
–– unitéunité == ll (lignes),(lignes), bb (blocs),(blocs), cc (caractères)(caractères)
–– --ff :: afficherafficher enen continuecontinue toutestoutes lesles secondessecondes (permet(permet d'afficherd'afficher llaa
finfin d'und'un fichierfichier évolutif).évolutif). ArrêtArrêt avecavec ^c^c
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
6868
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- sortsort sortsort [[optionsoptions]] [[réf_réf_fichfich ] ] [[--oo
GestionGestion desdes fichiersfichiers -- sortsort
sortsort [[optionsoptions]] [[réf_réf_fichfich
] ]
[[--oo réf_réf_fichfich_sortie_sortie]]
•• TrieTrie puispuis afficheaffiche lesles ligneslignes dudu (ou(ou des)des) fichier(s)fichier(s) réf_fichréf_fich
réf_réf_fichfich_sortie_sortie estest lele fichierfichier destination.destination. OptionsOptions ::
–– --bb :: nene paspas tenirtenir comptecompte desdes séparateursséparateurs (espace,(espace, tabulation)tabulation) dansdans lesles
comparaisonscomparaisons
–– --dd :: ordreordre lexicographiquelexicographique (seuls(seuls chiffres,chiffres, lettres,lettres, espacesespaces sontsont
significatifssignificatifs dansdans lesles comparaisons)comparaisons)
–– --ff :: paspas dede différencedifférence entreentre minusculeminuscule etet majusculesmajuscules
–– --ii :: ignorerignorer caractèrescaractères nonnon imprimablesimprimables (codes(codes horshors [32,126][32,126]))
–– --kk clé_triclé_tri :: comparaisonscomparaisons selonselon clé_triclé_tri quiqui définitdéfinit unun champchamp ainsiainsi
queque sesses éventuelleséventuelles optionsoptions dede tritri àà prendreprendre enen comptecompte dessusdessus
–– --mm :: fusionnerfusionner uniquementuniquement (fichiers(fichiers supposéssupposés triés)triés)
–– --nn :: comparaisonscomparaisons numériquesnumériques
–– --rr :: ordreordre inverseinverse
–– --ttss :: définirdéfinir ss commecomme séparateurséparateur dede champschamps
–– --uu :: unun seulseul exemplaireexemplaire desdes ligneslignes identiquesidentiques estest conservéconservé
(identique(identique àà lala commandecommande uniquniq))
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
6969
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- sortsort ExemplesExemples :: •• $$ sortsort --dd --ff --uu fichfich --oo
GestionGestion desdes fichiersfichiers -- sortsort
ExemplesExemples ::
•• $$ sortsort --dd --ff --uu fichfich --oo fichfich
RemplaceRemplace fichfich parpar lele résultatrésultat dudu tritri dede fichfich
LesLes redondancesredondances sontsont supprimées.supprimées. AA causecause dudu
–– --ff :: ARBREARBRE etet arbrearbre sontsont identiquesidentiques
–– --dd :: %fleure%%fleure% etet fleurefleure sontsont identiquesidentiques
•• $$ sortsort --tt :: --kk 3n3n //etcetc//passwdpasswd
TrieTrie lele fichierfichier //etcetc//passwdpasswd parpar ordreordre croissantcroissant desdes numérosnuméros
d'utilisateursd'utilisateurs
•• $$ sortsort --tt :: --kk 4n4n --kk 3nr3nr //etcetc//passwdpasswd
TrieTrie lele fichierfichier //etcetc//passwdpasswd parpar ordreordre croissantcroissant desdes
numérosnuméros dede groupesgroupes puispuis parpar ordreordre décroissantdécroissant parpar numérosnuméros
d'utilisateursd'utilisateurs
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
7070
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- joinjoin joinjoin [[--aa ff]] [[--ee chaînechaîne]] [[--oo f.c, f.c, ]]
GestionGestion desdes fichiersfichiers -- joinjoin
joinjoin [[--aa ff]] [[--ee chaînechaîne]] [[--oo f.c,
f.c,
]]
[[--tt ss]] [[--11 cc]] [[--22 cc]] fichfich 11 fichfich 22
•• FabriqueFabrique uneune ligneligne parpar ligneslignes dede fichfich 11 etet fichfich 22 possédantpossédant lele
mêmemême champ.champ.
–– SiSi fichfich 11 estest --,, l'entréel'entrée standardstandard estest utilisée.utilisée.
–– fichfich 11 etet fichfich 22 supposéssupposés triéstriés parpar ordreordre lexicographiquelexicographique dudu champchamp
objetobjet dede lala juxtapositionjuxtaposition (le(le premierpremier enen principe).principe).
–– --aa ff :: fabriquefabrique uneune ligneligne nonnon traitéetraitée dudu fichierfichier N°N° ff ((ff=1=1 ouou 2)2)
–– --ee chaînechaîne :: remplacer,remplacer, enen sortie,sortie, lesles champschamps videvide parpar chaînechaîne
–– --oo f.c, f.c,
:: juxtaposerjuxtaposer parpar rapportrapport àà lala listeliste f.cf.c ((cc:: champ,champ, ff:: N°N°
fichier)fichier)
–– --tt ss :: utiliserutiliser ss commecomme séparateurséparateur dede champschamps
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
7171
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- foldfold,, fmtfmt,, wcwc foldfold [[--ww tailletaille || --tailletaille]]
GestionGestion desdes fichiersfichiers -- foldfold,, fmtfmt,, wcwc
foldfold [[--ww tailletaille || --tailletaille]] [[réf_réf_fichfich ……]]
•• CasseCasse lesles ligneslignes dede réf_réf_fichfich àà lala colonnecolonne tailletaille (80(80 parpar
défaut)défaut)
fmtfmt [[--tailletaille]] [[réf_réf_fichfich ……]]
•• CasseCasse ouou reformereforme lesles ligneslignes dede réf_réf_fichfich àà lala colonnecolonne
tailletaille (72(72 parpar défaut)défaut)
•• NeNe coupecoupe paspas lesles motsmots
wcwc [[--lwclwc]] [[réf_réf_fichfich
]]
•• Compte,Compte, pourpour chaquechaque fichierfichier réf_réf_fichfich,, lele nombrenombre dede ligneslignes ((--
ll),), dede motsmots ((--ww)) ouou dede caractèrescaractères ((--cc)) qu'ilqu'il contient.contient. ParPar
défautdéfaut lesles 33 valeursvaleurs sontsont fournies.fournies.
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
7272
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- cutcut,, pastepaste cutcut --cc listeliste [[réf_réf_fichfich ……]] ouou
GestionGestion desdes fichiersfichiers -- cutcut,, pastepaste
cutcut --cc listeliste [[réf_réf_fichfich ……]]
ouou
cutcut --ff listeliste [[--dd ss]] [[réf_réf_fichfich ……]]
•• SélectionSélection dede champschamps ouou dede colonnescolonnes dansdans réf_réf_fichfich
•• optionsoptions ::
–– --cc listeliste :: sélectionnesélectionne lesles numérosnuméros dede colonnescolonnes décritesdécrites dansdans listeliste
–– --ff listeliste :: sélectionnesélectionne lesles numérosnuméros dede champschamps décritedécrite dansdans listeliste
listeliste àà pourpour formeforme :: xx 11 ,…,,…,xx nn (x(x ii == nn ouou nn--mm ouou --nn ouou nn--))
–– --dd ss :: définirdéfinir ss commecomme séparateurséparateur dede champschamps (tabulation(tabulation parpar défaut)défaut)
pastepaste [[--dd chaînechaîne]] [[--ss]] réf_réf_fichfich ……
•• RassemblerRassembler lesles ligneslignes desdes réf_réf_fichfich
•• optionsoptions ::
–– --dd chaînechaîne :: séparerséparer lala ii èmeème ligneligne dede lala i+1i+1 èmeème parpar lele ii èmeème caractèrecaractère dede
chaînechaîne
(rassemblement(rassemblement parallèleparallèle desdes lignes)lignes)
–– --ss :: rassemblerrassembler lesles ligneslignes dede façonfaçon séquentielleséquentielle
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
7373
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- moremore moremore [[++nombrenombre]] [[réf_réf_fichfich ]] ••
GestionGestion desdes fichiersfichiers -- moremore
moremore [[++nombrenombre]] [[réf_réf_fichfich
]]
•• AfficheAffiche pagepage parpar pagepage (à(à partirpartir dede lala ligneligne nombrenombre)) lele
contenucontenu dede réf_fichréf_fich
•• CommandesCommandes localeslocales spécifiquesspécifiques ::
hh :: aideaide
qq ouou QQ :: finfin dede l'affichagel'affichage
== :: afficheaffiche lele numéronuméro dede lala ligneligne courantecourante
[N]<[N]<spacespace>> :: affichageaffichage dede NN ligneslignes (par(par défautdéfaut 11 page)page)
supplémentairessupplémentaires
[N]f[N]f :: sautsaut dede NN page(s)page(s)
[N]/chaîne[N]/chaîne :: recherche,recherche, àà partirpartir dede lala positionposition courante,courante,
dede lala NèmeNème occurrenceoccurrence dede chaînechaîne
!!cmdecmde :: exécutionexécution dede lala commandecommande cmdecmde
ff :: affichageaffichage dudu nomnom dudu fichierfichier enen courscours d'examend'examen
ExisteExiste aussiaussi pgpg etet prpr
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
7474
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- findfind findfind réf_réf_réprép argumentargument ••
GestionGestion desdes fichiersfichiers -- findfind
findfind réf_réf_réprép
argumentargument
•• RechercherRechercher récursivementrécursivement dansdans lesles réf_réf_réprép lesles fichiersfichiers quiqui
satisfontsatisfont l'expressionl'expression booléennebooléenne décritedécrite parpar lesles argumentarguments.s.
••
QuelquesQuelques argumentsarguments ::
--namename réfréf :: vraivrai sisi lele fichierfichier aa pourpour nomnom réfréf
--permperm nbrnbr_octal_octal :: vraivrai sisi droitsdroits d'accèsd'accès auau fichierfichier correspondentcorrespondent auau nbrnbr_octal_octal
--typtypee typetype :: vraivrai sisi lele typetype dudu fichierfichier estest typetype SiSi typetype estest :: ff :: fichierfichier ordinaire,ordinaire, dd ::
répertoire,répertoire, ll :: lienlien symbolique,symbolique,
--useruser id_id_utilutil :: vraivrai sisi lele propriétairepropriétaire dudu fichierfichier estest id_id_utilutil
--groupgroup id_grid_gr :: vraivrai sisi lele groupegroupe propriétairepropriétaire dudu fichierfichier estest id_grid_gr
--sizesize NN :: vraivrai sisi lala tailletaille dudu fichierfichier satisfaitsatisfait lala conditioncondition NN ((++nn :: >n,>n, --nn :: <n,<n, nn :: =n)=n)
--atimeatime NN :: vraivrai sisi lala datedate (en(en jours)jours) dede dernièredernière consultationconsultation satisfaitsatisfait lala conditioncondition NN
--mtimemtime NN :: vraivrai sisi lala datedate (en(en jours)jours) dede dernièredernière modificationmodification satisfaitsatisfait lala conditioncondition NN
--newernewer réfréf :: vraivrai sisi lele fichierfichier aa étéété modifiémodifié plusplus récemmentrécemment queque lele fichiefichierr réfréf
--printprint :: condcond tjrstjrs vraie.vraie. afficheaffiche lele nomnom absoluabsolu dudu fichierfichier trouvétrouvé
--execexec cmdcmd :: vraivrai sisi l'exécutionl'exécution dede cmdcmd renvoierenvoie 00 cmdcmd suiviesuivie dudu nomnom dudu fichierfichier trouvétrouvé
représentéreprésenté parpar {}{} etet dede \\;;
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
7575
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- findfind OpérateursOpérateurs sursur cesces conditionsconditions :: ••
GestionGestion desdes fichiersfichiers -- findfind
OpérateursOpérateurs sursur cesces conditionsconditions ::
••
négationnégation :: !!
•• conjonctionconjonction :: --aa ouou simplesimple concaténationconcaténation desdes conditionsconditions
•• disjonctiondisjonction :: --oo
•• parenthèsesparenthèses :: \\(( etet \\))
ExemplesExemples ::
$$ findfind // --namename mailmail --printprint
//usrusr//binbin/mail/mail
//usrusr//ucbucb/mail/mail
$$ findfind
\\(( --namename corecore --oo --namename \\*~*~ --oo --sizesize 00 \\)) --execexec rmrm --ii {}{} \\;;
<<rmrm
<<rmrm
<<rmrm
././ProgsProgs//corecore>?y>?y
././EtudeEtude//fichfich_vide>_vide> ?? yy
./td1.tex~>./td1.tex~> ?? yy
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
7676
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- CompressionsCompressions compresscompress [[optionsoptions]]
GestionGestion desdes fichiersfichiers -- CompressionsCompressions
compresscompress [[optionsoptions]] [[réf_réf_fichfich …]…]
•• CompresserCompresser réf_fich.réf_fich. PermetPermet dede gagnergagner enen place.place.
LeLe fichierfichier sourcesource estest écraséécrasé (si(si absenceabsence dede --c)c)
•• OptionsOptions ::
–– --cc :: lele résultatrésultat dede lala compressioncompression estest écritécrit sursur lala sortiesortie
standardstandard ((⇔⇔ àà zcatzcat))
–– --vv :: afficheaffiche lele tauxtaux dede compressioncompression obtenuobtenu
–– --dd :: décompressiondécompression dede réf_réf_fichfich ((⇔⇔ àà uncompressuncompress))
AutreAutre commandescommandes ::
•• packpack,, unpackunpack,, pcatpcat,, gzipgzip,, gunzipgunzip
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
7777
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- ArchivageArchivage tartar foncfonc[[optionsoptions]] réf_réf_fichfich
GestionGestion desdes fichiersfichiers -- ArchivageArchivage
tartar foncfonc[[optionsoptions]] réf_réf_fichfich
•• ArchiverArchiver plusieursplusieurs fichiersfichiers dansdans unun seulseul
•• FonctionnalitésFonctionnalités foncfonc (non(non précédéesprécédées parpar --)) ::
–– cc :: créecrée uneune nouvellenouvelle archivearchive
–– xx :: extraireextraire desdes fichiersfichiers d'uned'une archivearchive
–– tt :: listerlister lele contenucontenu d'uned'une archivearchive
•• OptionsOptions (nom(nom précédéesprécédées parpar --)) ::
–– ff :: indiqueindique explicitementexplicitement lele fichierfichier archivearchive ((-- sortiesortie standard)standard)
–– mm :: avecavec x,x, extraireextraire enen mettantmettant àà jourjour lala datedate dede modificationmodification
–– pp :: avecavec x,x, extraireextraire avecavec lesles permissionspermissions d'origined'origine
–– vv :: afficherafficher lesles fichiersfichiers copiéscopiés ouou extraitsextraits (mode(mode verboseverbose))
–– hh :: suivresuivre lesles liensliens symboliquessymboliques
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
7878
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- ArchivageArchivage ExemplesExemples :: •• $$ tartar cvfcvf
GestionGestion desdes fichiersfichiers -- ArchivageArchivage
ExemplesExemples ::
•• $$ tartar cvfcvf //devdev/rmt8/rmt8 projet1projet1 projet2projet2
–– archiverarchiver projet1projet1 etet projet2projet2 dansdans uneune bandebande
•• $$ tartar tvftvf //devdev/rmt8/rmt8
$$ tartar xvfxvf //devdev/rmt8/rmt8 projet1/projet1/progprog.c.c
–– visualiservisualiser l'archivel'archive dede lala bandebande puispuis extraireextraire lele fichierfichier progprog.c.c dudu
répertoirerépertoire projet1projet1 dede l'archivel'archive
•• $$ tartar cfcf archive.archive.tartar proj1proj1 proj2;proj2; compresscompress archivearchive
–– archiverarchiver proj1proj1 etet proj2proj2 dansdans lele fichierfichier archive.archive.tartar puispuis compressercompresser lele
•• $$ uncompressuncompress --cc archive.archive.tartar.Z.Z || tartar xvfxvf --
–– extraireextraire toutetoute l'archivel'archive depuisdepuis lele fichierfichier compressécompressé sanssans créercréer l'archivel'archive
nomnom compresséecompressée (la(la décompressiondécompression estest faitefaite sursur lala sortiesortie standarstandard)d)
•• $$ cdcd reprep_source;_source; tartar cfcf --
|| (cd(cd reprep
destdest;;
tartar xpfxpf --))
–– réaliseréalise touttout simplementsimplement lala copiecopie dudu contenucontenu dede l'arborescencel'arborescence
reprep_source_source dansdans reprep destdest
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
7979
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- ArchivageArchivage cpiocpio --oo[[optionsoptions]] cpiocpio
GestionGestion desdes fichiersfichiers -- ArchivageArchivage
cpiocpio --oo[[optionsoptions]]
cpiocpio --ii[[optionsoptions]] [[motif_motif_fichfich
]]
•• ManipuleManipule desdes archivesarchives dede fichiersfichiers
–– --oo :: litlit sursur l'entréel'entrée standardstandard desdes réfréf dede fichiersfichiers etet construitconstruit unun
fichierfichier d'archived'archive (sur(sur lala sortiesortie standard)standard)
•• quelquesquelques optionsoptions ::
–– --LL :: suivresuivre liensliens symboliquessymboliques
–– --OO fichfich :: récupérerrécupérer l'archivel'archive dansdans fichfich
–– --ii :: extraitextrait desdes fichiersfichiers dontdont lala réfréf obéitobéit àà motif_motif_fichfich (*(* parpar défaut)défaut)
•• quelquesquelques optionsoptions ::
–– --II fichfich :: prendreprendre l'archivel'archive dede fichfich
–– --dd :: créercréer répertoiresrépertoires inexistantsinexistants
–– --tt :: listerlister lele contenucontenu
–– --rr :: renommagerenommage interactifinteractif desdes fichiersfichiers
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
8080
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes fichiersfichiers -- ArchivageArchivage ExemplesExemples :: •• $$ cpiocpio --ovov <<
GestionGestion desdes fichiersfichiers -- ArchivageArchivage
ExemplesExemples ::
•• $$ cpiocpio --ovov << liste_liste_fichfich --O/O/devdev/rmt8/rmt8
•• $$ lsls *.c*.c || cpiocpio --ovov --O/O/devdev/rmt8/rmt8
•• $$ findfind
•• $$ findfind
--printprint || cpiocpio --ovov --O/O/devdev/rmt8/rmt8
--cpiocpio //devdev/rmt8/rmt8 --printprint
–– cpiocpio estest intégréeintégrée dansdans lesles commandescommandes dede findfind
((⇔⇔ àà lala commandecommande précédente)précédente)
•• $$ cpiocpio --itvitv --I/I/devdev/rmt8/rmt8
•• $$ cpiocpio --ii --I/I/devdev/rmt8/rmt8 "*.c""*.c"
"*.o""*.o"
•• $$ findfind
--printprint || cpiocpio --pdlpdl /home//home/duranddurand//reprep
–– cpiocpio --pp :: réaliseréalise lala copiecopie dede dansdans unun répertoirerépertoire ciblecible
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
8181
©© A.EDA.ED--DBALIDBALI
InformationsInformations généralesgénérales sursur lele systèmesystème -- dfdf dfdf •• VisualiserVisualiser
InformationsInformations généralesgénérales sursur lele systèmesystème -- dfdf
dfdf
•• VisualiserVisualiser l'étatl'état desdes disquesdisques logiqueslogiques montés.montés. LesLes
informationsinformations donnéesdonnées sontsont ::
(1)(1) nomnom dudu fichierfichier spécialspécial dede montage,montage, (2)(2) tailletaille totale,totale, enen kilkiloo--
octets,octets, dudu répertoire,répertoire, (3)(3) espaceespace utilisé,utilisé, (4)(4) espaceespace restant,restant, ((5)5) %%
utilisé,utilisé, (6)(6) répertoirerépertoire dede montagemontage
•• $$ dfdf
FilesystemFilesystem
kbyteskbytes
usedused
availavail capacitycapacity MountedMounted onon
//devdev/sd1a/sd1a
1548715487
43134313
96269626
31%31%
//
//devdev/sd1g/sd1g
311847311847 230653230653
5001050010
82%82%
//usrusr
venus:/homevenus:/home
308443308443
7085870858 206741206741
26%26%
/home/ven/home/venusus
soleil:/var/spool/mailsoleil:/var/spool/mail 1548715487
43214321
96189618
31%31%
/var/spoo/var/spool/maill/mail
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
8282
©© A.EDA.ED--DBALIDBALI
InformationsInformations généralesgénérales sursur lele systèmesystème -- ww ww [[--ll||--ss]] [[--uu]]
InformationsInformations généralesgénérales sursur lele systèmesystème -- ww
ww [[--ll||--ss]] [[--uu]] [[useruser]]
•• DonneDonne unun résumérésumé sursur l'activitél'activité dudu systèmesystème
–– PremièrePremière ligneligne :: l'heure,l'heure, depuisdepuis quandquand lele systèmesystème aa
démarré,démarré, lele nombrenombre d'utilisateurs,d'utilisateurs, lala chargecharge moyennemoyenne
(nombre(nombre dede processusprocessus dansdans lala filefile d'attented'attente Prêt)Prêt) enen troistrois
intervallesintervalles dede temps.temps.
–– EnEn suitesuite :: informationsinformations sursur lesles utilisateursutilisateurs connectésconnectés etet
cece qu'ilqu'il font.font.
–– OptionsOptions ::
•• --ss :: peupeu d'informationd'information sursur lesles utilisateursutilisateurs (défaut(défaut --ll:: détail)détail)
•• --uu :: n'affichern'afficher queque lala premièrepremière ligneligne ((ww --uu ⇔⇔ uptimeuptime))
–– SiSi useruser estest donné,donné, limiterlimiter lesles infosinfos àà cetcet utilisateurutilisateur
•• whowho donnedonne desdes informationsinformations dede mêmemême typetype
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
8383
©© A.EDA.ED--DBALIDBALI
InformationsInformations généralesgénérales sursur lele systèmesystème -- statistiquesstatistiques
InformationsInformations généralesgénérales sursur lele systèmesystème --
statistiquesstatistiques d'utilisationd'utilisation desdes ressourcesressources
iostatiostat [[disquedisque
] ]
[[secsec [[nbrnbr]]]]
•• DonneDonne nbrnbr foisfois toustous lesles secsec secondessecondes desdes informationsinformations relativesrelatives
auxaux E/SE/S sursur disquedisque etet àà l'utilisationl'utilisation dede lala cpucpu
•• ExempleExemple ::
## iostatiostat 55
ttytty
ds1ds1
ds2ds2
ds3ds3
ds4ds4
tintin touttout kpskps tpstps
kpskps tpstps
kpskps tpstps
kpskps tpstps
cpucpu
usus nini sysy idid
11
5252
22
00
11
00
1313
11
44
11
88
00
99 8383
11
1616
77
11
22
00
55
22
22
00
33
00 1010 8787
00
00
00
00
00
00
00
00
00
00
00
00
11 9898
22
22
22
11
00
00
5050
66
00
00
99
00
99 8282
11
191191
22
11
00
00
4747
66
00
00
88
00
99 8383
–– tintin etet touttout resp.resp. nombrenombre dede caractèrescaractères luslus etet écritsécrits sursur lesles terminauxterminaux parpar secondeseconde
–– kpskps etet tpstps (pour(pour lesles disques)disques) resp.resp. lele nombrenombre dede KoKo transféréstransférés parpar secondeseconde etet lele
nombrenombre dede transfertstransferts parpar secondeseconde
–– usus etet nini pourcentagepourcentage d'utilisationd'utilisation cpucpu parpar l'utilisateurl'utilisateur ((nini sisi chagementchagement dede prioritépriorité
parpar nicenice))
–– sysy etet idid pourcentagepourcentage enen modemode systèmesystème ((sysy)) etet inactivitéinactivité ((idid))
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
8484
©© A.EDA.ED--DBALIDBALI
InformationsInformations généralesgénérales sursur lele systèmesystème -- statistiquesstatistiques
InformationsInformations généralesgénérales sursur lele systèmesystème --
statistiquesstatistiques d'utilisationd'utilisation desdes ressourcesressources
vmstatvmstat [[optionsoptions]] [[secsec [[nbrnbr]]]]
•• DonneDonne nbrnbr foisfois toustous lesles secsec secondessecondes desdes informationsinformations sursur
l'utilisationl'utilisation dede lala mémoiremémoire virtuellevirtuelle (mais(mais aussi:aussi: processus,processus,
pagination,pagination, E/SE/S disques,disques, interruptionsinterruptions etet cpucpu))
•• --ss afficheaffiche plusplus d'informationd'information sursur lala mémoiremémoire
$$ vmstatvmstat 55
procsprocs
rr bb ww
memorymemory
pagepage
diskdisk
faultsfaults
cpucpu
swapswap freefree rere mfmf pipi popo frfr dede srsr s0s0 s1s1 s2s2 s3s3
inin
sysy
cscs usus sysy idid
00
00 00 1145611456 41204120
11 4141 1919
11
33
00
22
00
44
00
00
4848 112112 130130
00
00 11 1013210132 42804280
00
44 4444
00
00
00
00
00 2323
00
00
00 11 1013210132 46164616
00
00 2020
00
00
00
00
00 1919
00
00 211211 230230 144144
00 150150 172172 146146
00
00 11 1013210132 52925292
00
00
99
00
00
00
00
00 2121
00
00 165165 105105 130130
11
11 11 1013210132 54965496
00
00
55
00
00
00
00
00 2323
00
00 183183
9292 134134
11
00 11 1013210132 55645564
00
00 2525
00
00
00
00
00 1818
00
11
00 11 1012410124 54125412
00
00 3737
00
00
00
00
00 2222
00
11
00 11 1012410124 52365236
00
00 2424
00
00
00
00
00 1414
00
00 131131 231231 116116
00 166166 179179 118118
00 109109 243243 113113
44 1414 8282
33 3535 6262
33 3333 6464
11 2121 7878
11 2020 7979
44 3434 6262
11 3333 6767
44 5656 3939
^C^C
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
8585
©© A.EDA.ED--DBALIDBALI
L'éditeurL'éditeur vivi $$ vivi fichierfichier insertion : Effacement : Commandes : i niveau curseur, a
L'éditeurL'éditeur vivi
$$ vivi fichierfichier
insertion :
Effacement :
Commandes :
i niveau curseur, a après,
x : caractère
dw : fin mot
I début ligne, A fin ligne,
dd : ligne
d0 : début ligne
o ligne après, O ligne avant
d$ : fin ligne
p : rétablir après
curseur
ESC : revenir en mode commande
Déplacement :
caractères : h (gauche), l (droite),
j (bas), k (haut)
mots : b (gauche), w (droite)
lignes : 0 (début), $ (fin)
:f : infos sur fichier en cours
^g : idem
:w fich : sauvegarde dans
fich
:q : quitter
:wq : sauver et quitter
ZZ : idem
:q! : quitter même non sauvé
:e fich : charger fich
:r fich : inclure fich après
ligne courante
pages : ^d (bas),
:! cmd_shell : exécuter
^u (haut)
cmd_shell
:r! cmd_shell : exécuter et
insérer résultat de cmd_shell
/motif : recherche de motif
^l : rafraîchit l'écran
Exemple : $ vi -c ":r fich2" fich1 ( charge le fichier fich1 en incluant à sa fin le contenu de fich2 )
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
8686
©© A.EDA.ED--DBALIDBALI
ProcéduresProcédures SHELLSHELL -- BourneBourne ShellShell DéfinitionDéfinition :: suitesuite dede
ProcéduresProcédures SHELLSHELL -- BourneBourne ShellShell
DéfinitionDéfinition :: suitesuite dede commandescommandes UNIXUNIX
•• Exemple:Exemple: procédureprocédure quiqui--estest--lala ::
echoecho ListeListe desdes connectionsconnections parpar ordreordre alphabétiquealphabétique
whowho || sortsort
$$ quiqui--estest--lala
ListeListe desdes connectionsconnections parpar ordreordre alphabétiquealphabétique
dupontdupont //devdev/ttyp1/ttyp1 09:0109:01
duranddurand //devdev//ttycottyco 15:3215:32
legerleger //devdev//ttyattya 10:1410:14
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
8787
©© A.EDA.ED--DBALIDBALI
VariablesVariables VariablesVariables d'environnementd'environnement •• QuelquesQuelques variablesvariables
VariablesVariables
VariablesVariables d'environnementd'environnement
•• QuelquesQuelques variablesvariables prédéfiniesprédéfinies :: HOMEHOME,, PATHPATH,,
SHELLSHELL,, TERM,TERM, PRINTERPRINTER,,
•• AutresAutres variablesvariables :: touttout identificateuridentificateur
•• AccèsAccès àà lala valeurvaleur :: $Nom_variable$Nom_variable ::
$PATH,$PATH, $SHELL,$SHELL,
•• AffectationAffectation :: Nom_variableNom_variable == ValeurValeur
ExEx ::
TERM=TERM=dttermdtterm
PATH=$PATH:/PATH=$PATH:/usrusr/local//local/binbin:$HOME/:$HOME/execexec:.:.
PrintenvPrintenv [[nomnom]]
•• AfficheAffiche lala valeurvaleur dede lala variablevariable nomnom ou,ou, sisi paspas
d'argd'arg,, toutestoutes lesles variablesvariables dede l'environnementl'environnement
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
8888
©© A.EDA.ED--DBALIDBALI
VariablesVariables dede positionposition DéfinitionsDéfinitions •• •• •• •• $i$i :: valeurvaleur
VariablesVariables dede positionposition
DéfinitionsDéfinitions
••
••
••
••
$i$i :: valeurvaleur dudu ii èmeème paramètreparamètre dede lala procédureprocédure ShellShell (i(i≥≥1)1)
$0$0 :: nomnom dede lala procédureprocédure
$#$# :: nombrenombre dede paramètresparamètres
$*$* :: listeliste dede toustous lesles paramètresparamètres
ExemplesExemples
ExEx :: $$ cmdcmd aa 11 fichfich --22 t3t3
qlqqlq.).)
((cmdcmd uneune procédureprocédure ShellShell
$#$# == 55
$0$0 == cmdcmd
$1$1 == a,a, $2$2 == 1,1, $3$3 == fichfich,, $4$4 == --2,2, $5$5 == t3t3
$*$* == aa 11 fichfich --22 t3t3
ExEx :: procédureprocédure ShellShell :: boutbout
headhead --$3$3 $1$1 || tailtail +$2+$2
$$ boutbout fichfich 55 99
extraitextrait dede fichfich toutestoutes lesles ligneslignes entreentre lala 55èmeème etet lala 99èmeème
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
8989
©© A.EDA.ED--DBALIDBALI
StructuresStructures dede contrôlecontrôle -- conditionnelleconditionnelle ConditionnelleConditionnelle
StructuresStructures dede contrôlecontrôle -- conditionnelleconditionnelle
ConditionnelleConditionnelle classiqueclassique
•• ifif liste_commandes;liste_commandes; thenthen liste_commandes;liste_commandes; elseelse liste_commandes;liste_commandes; fifi
••
••
codecode retourretour cmdcmd == 00 ⇒⇒ cmdcmd vraie.vraie. codecode retourretour cmdcmd ≠≠ 00 ⇒⇒ cmdcmd faussefausse
ExempleExemple :: ProcédureProcédure copycopy 11 :: copiercopier lele 1er1er paramètreparamètre dansdans lele deuxièmedeuxième
ifif
thenthen
testtest --ff $2$2
echoecho fichierfichier $2$2 existantexistant 1>&21>&2
elseelse
ifif
thenthen
elseelse
testtest --ff $1$1
cpcp $1$1 $2$2
echoecho fichierfichier $1$1 inexistantinexistant 1>&21>&2
fifi
fifi
ExpressionsExpressions conditionnellesconditionnelles
••
ExpressionExpression dede conjonctionconjonction :: cmdcmd 11 &&&& cmdcmd 22
ÉquivalentÉquivalent àà :: ifif cmdcmd 11 thenthen;; cmdcmd 22 ;; fifi
••
ExpressionExpression dede disjonctiondisjonction :: cmdcmd 11 |||| cmdcmd 22
cmdcmd 22 exécutéeexécutée uniquementuniquement
sisi cmdcmd 11 faussefausse
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
9090
©© A.EDA.ED--DBALIDBALI
StructuresStructures dede contrôlecontrôle -- aiguillageaiguillage casecase inin esacesac •• casecase
StructuresStructures dede contrôlecontrôle -- aiguillageaiguillage
casecase
inin
esacesac
•• casecase valeurvaleur inin
valval 11 )) liste_commandesliste_commandes 11 ;;;;
valval 22 )) liste_commandesliste_commandes 22 ;;;;
valval nn )) liste_liste_commandescommandes nn ;;;;
••
esacesac
ExempleExemple :: ProcédureProcédure copycopy 22 ::
•• sisi aucunaucun paramètreparamètre
•• sisi 11 paramètreparamètre fichierfichier
•• sisi 11 paramètreparamètre répertoirerépertoire
•• sisi 22 paramètresparamètres
→→ donnerdonner lele répertoirerépertoire courantcourant
→→ afficherafficher sonson contenucontenu
→→ listerlister sonson contenucontenu
→→ copycopy 11
casecase $#$# inin
0)0) pwdpwd;;;;
1)1) ifif testtest --ff $1;$1; thenthen catcat $1;$1; elifelif testtest --dd $1;$1; thenthen lsls --ll $1$1
elseelse echoecho erreurerreur 1>&2;1>&2; fi;;fi;;
2)2) copy1copy1 $1$1 $2;;$2;;
*)*) echoecho troptrop dede paramètresparamètres 1>&2;;1>&2;;
esacesac
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
9191
©© A.EDA.ED--DBALIDBALI
StructuresStructures dede contrôlecontrôle -- itérationsitérations forfor variablevariable inin
StructuresStructures dede contrôlecontrôle -- itérationsitérations
forfor variablevariable inin liste_valeurs;liste_valeurs; dodo liste_commandes;liste_commandes; donedone
•• ExempleExemple :: ProcédureProcédure creercreer
reprep
::
forfor RepRep inin $*$*
dodo ifif testtest --dd $$RepRep
thenthen echoecho "Détruire"Détruire $$RepRep (O/N)(O/N) :: \\c";c"; readread DD
ifif [[
$D$D == oo ]]
thenthen rmrm --rr $$RepRep;; mkdirmkdir $$RepRep
fifi
elseelse mkdirmkdir $$RepRep
fifi
donedone
whilewhile liste_commandes;liste_commandes; dodo liste_commandes;liste_commandes; donedone
untiluntil liste_commandes;liste_commandes; dodo liste_commandes;liste_commandes; donedone
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
9292
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes dépendancesdépendances :: makemake projetprojet == plusieursplusieurs modulesmodules
GestionGestion desdes dépendancesdépendances :: makemake
projetprojet == plusieursplusieurs modulesmodules
maintenancemaintenance desdes exécutablesexécutables :: modificationmodification sursur
quelquesquelques modulesmodules
graphegraphe dede dépendancesdépendances entreentre modulesmodules :: makefilemakefile
makemake [[ --ff fichier_fichier_makemake ]] [[ optionsoptions ]] [[ fichfich
]]
•• fichier_fichier_makemake fichierfichier graphegraphe desdes dépendances.dépendances. ParPar défautdéfaut ::
makefilemakefile ouou MakefileMakefile (dans(dans cetcet ordre)ordre)
•• LesLes fichfich sontsont lesles fichiersfichiers àà reconstruirereconstruire ouou lesles étiquettesétiquettes àà
traiter.traiter. ParPar défautdéfaut :: lele premierpremier nomnom dede lala premièrepremière règlerègle dede
dépendancedépendance dede fichier_fichier_makemake
ReconstructionReconstruction suivantsuivant lesles datesdates dede dernièredernière modificationmodification
desdes fichiersfichiers impliquésimpliqués dansdans lesles dépendances.dépendances.
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
9393
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes dépendancesdépendances -- makefilemakefile StructureStructure d'und'un makefilemakefile
GestionGestion desdes dépendancesdépendances -- makefilemakefile
StructureStructure d'und'un makefilemakefile
••
MM :: MM 11 MM 22
MM nn
UnUn fichierfichier (ou(ou uneune étiquette)étiquette) MM dépenddépend dede nn fichiersfichiers (ou(ou étiquetétiquettes)tes) MM 11 ,,
, ,
MM nn
••
MM :: MM 11 MM 22
MM nn
<TAB><TAB>cmdcmd
••
SiSi existeexiste ii teltel queque date_date_modifmodif(M(M ii )) plusplus récenterécente queque date_date_modifmodif(M)(M)
alorsalors exécuterexécuter cmdcmd
macromacro == suitesuite dede motsmots
DéfinitionDéfinition d'uned'une macromacro (ou(ou variable).variable). LaLa valeurvaleur dede macromacro estest $($(macromacro))
DépendancesDépendances etet règlesrègles implicitesimplicites
•• makemake --pp :: donnedonne (en(en particulier)particulier) lala listeliste desdes dépendancesdépendances implicitesimplicites
•• makemake --rr :: nene paspas tenirtenir comptecompte desdes dépendancesdépendances implicitesimplicites
••
ExempleExemple :: enen CC unun fichierfichier .o.o dépenddépend dudu fichierfichier .c.c dede mêmemême préfixepréfixe etet estest
obtenuobtenu parpar exécutionexécution dede lala commandecommande cccc --cc appliquéeappliquée sursur lele fichierfichier .c.c
•• .SUFFIXES.SUFFIXES ::
exeexe
.h.h .ada.ada dansdans unun makefilemakefile indiqueindique qu'unqu'un fichierfichier
exeexe
dépenddépend dudu .h.h correspondantcorrespondant quiqui dépenddépend luilui--mêmemême dudu .ada.ada
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
9494
©© A.EDA.ED--DBALIDBALI
GrapheGraphe dede dépendancesdépendances -- exempleexemple makefile Program m 2 m 1 m 3 m 10
GrapheGraphe dede dépendancesdépendances -- exempleexemple
makefile
Program
m 2
m 1
m
3
m 10
m 7
m 8
m 9
m
m
m
4
6
11
m 12
Program : m 1 m 2
construire Program
m 1 : m 3 m 6 m 7
construire m 1
m 3 : m 4 m 5 m 6
construire m 3
m 7 : m 6
construire m 7
m 2 : m 8 m 9 m 10
construire m 2
m 9 : m 12
construire m 9
m
:
10
m 11 m 12
construire m 10
m
5
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
9595
©© A.EDA.ED--DBALIDBALI
GestionGestion desdes dépendancesdépendances -- unun exempleexemple enen CC 1 obj = m1.o m2.o m3.o -
GestionGestion desdes dépendancesdépendances -- unun exempleexemple enen CC
1 obj = m1.o m2.o m3.o
-
2 application : $(obj)
-
3 -
cc
-o application $(obj)
4 m1.o : m1.c prog1.h prog2.h
-
5 -
cc
-c m1.c
makefile
6 m2.o : m2.c
-
7 -
cc
-c m2.c
8 m3.o : m3.c prog1.h prog2.h prog3.h
-
9 -
cc
-c m3.c
1 - macro définition de obj
2 - application dépend des fichiers m1.o, m2.o et m3.o
si l'un des m i .o est plus récent que application alors
la commande cc -o application m1.o m2.o m3.o est exécutée.
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
9696
©© A.EDA.ED--DBALIDBALI
GestionGestion dede versionsversions :: SCCSSCCS DéfinitionDéfinition (Source(Source CodeCode ControlControl
GestionGestion dede versionsversions :: SCCSSCCS
DéfinitionDéfinition (Source(Source CodeCode ControlControl System)System)
•• GestionGestion dede versionsversions dede programmesprogrammes sourcessources ouou dede documentsdocuments
•• PermetPermet ::
–– d'enregistrerd'enregistrer unun fichierfichier
–– dede retrouverretrouver uneune versionversion particulièreparticulière
–– dede créercréer uneune nouvellenouvelle versionversion
–– dede donnerdonner pourpour chaquechaque versionversion ::
•• quiqui l'al'a créée,créée, quand,quand, pourquoipourquoi
PrincipePrincipe
•• MémoriserMémoriser
–– EnsembleEnsemble dede différencesdifférences
•• passerpasser dede lala versionversion 00 àà uneune versionversion particulièreparticulière (n.m)(n.m)
(mécanisme(mécanisme diffdiff UNIX)UNIX)
–– InformationsInformations généralesgénérales pourpour uneune versionversion donnéedonnée
–– fichierfichier deltadelta :: sommesomme dede cesces informationsinformations
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
9797
©© A.EDA.ED--DBALIDBALI
GestionGestion dede versionsversions -- créationcréation dede lala versionversion initialeinitiale adminadmin
GestionGestion dede versionsversions --
créationcréation dede lala versionversion initialeinitiale
adminadmin --iifichfich s.s.fichfich
•• DéciderDécider dede gérergérer lesles versionsversions ultérieuresultérieures dede fichfich parpar SCCSSCCS
•• CréationCréation d'und'un nouveaunouveau fichierfichier deltadelta s.s.fichfich
•• CréationCréation dede lala premièrepremière versionversion 1.11.1
•• ExempleExemple ::
$$ adminadmin --itexteitexte s.textes.texte
NoNo idid keywordskeywords (cm7)(cm7)
$$ lsls --ll *texte*texte
--rwrw--rr----rr---- 11 adamadam staffstaff
6060 DecDec 1010
9:129:12 textetexte
--rr----rr----rr---- 11 adamadam staffstaff 180180 DecDec 1010 11:4011:40 s.textes.texte
•• RemarquesRemarques ::
–– NoNo idid keywordskeywords (cm7)(cm7) :: OnOn n'an'a paspas utiliserutiliser dede motsmots--clésclés
–– $$ helphelp cm7cm7
afficheaffiche lele détaildétail dudu messagemessage enen paramètreparamètre
–– s.textes.texte fichierfichier asciiascii interditinterdit àà lala modificationmodification :: seulseul SCCSSCCS doitdoit lele
manipulermanipuler
–– $$ rmrm textetexte
reconstitutionreconstitution dudu fichierfichier doitdoit sese fairefaire parpar SCCSSCCS
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
9898
©© A.EDA.ED--DBALIDBALI
GestionGestion dede versionsversions :: getget getget s.s.fichfich •• extraireextraire dudu fichierfichier
GestionGestion dede versionsversions :: getget
getget s.s.fichfich
•• extraireextraire dudu fichierfichier deltadelta lala dernièredernière versionversion dede fichfich
•• fichfich estest générégénéré nonnon modifiablemodifiable
getget --ee s.s.fichfich
•• idem.idem. PermetPermet d'éditerd'éditer fichfich ((fichfich modifiable)modifiable)
•• CréationCréation dede p.p.fichfich contientcontient lele nomnom dede l'utilisateurl'utilisateur actuelactuel (fichier(fichier
verrouverrou :: éviteréviter unun conflitconflit éventuel)éventuel)
getget --rnrn
•• fournitfournit l'exemplairel'exemplaire dede niveauniveau lele plusplus élevéélevé dede lala versionversion nn
getget --rnrn.m.m
•• fournitfournit lala versionversion dede numéronuméro spécifiéspécifié
getget --ee --rnrn
•• ChangementChangement dede numéronuméro dede versionversion :: nn devientdevient lala 1ère1ère
composantecomposante dudu numéronuméro dede lala nouvellenouvelle versionversion (n.1)(n.1)
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
9999
©© A.EDA.ED--DBALIDBALI
GestionGestion dede versionsversions -- historiquehistorique prsprs s.s.fichfich s.s.fichfich DD 2.12.1
GestionGestion dede versionsversions -- historiquehistorique
prsprs s.s.fichfich
s.s.fichfich
DD 2.12.1 95/11/0395/11/03 12:15:3412:15:34 adamadam
COMMENTS:COMMENTS:
versionversion envoyéeenvoyée
DD 1.21.2 95/11/1095/11/10 09:10:2909:10:29 adamadam
COMMENTS:COMMENTS:
premièrepremière modificationmodification
DD 1.11.1 95/10/0195/10/01 10:01:3010:01:30 adamadam
COMMENTS:COMMENTS:
datedate andand timetime createdcreated 95/10/0195/10/01 10:01:3010:01:30 byby adamadam
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
100100
©© A.EDA.ED--DBALIDBALI
ÉvaluationÉvaluation desdes performancesperformances profprof [[ --tctc ]] [[ --mm fichfich_statistiques_statistiques
ÉvaluationÉvaluation desdes performancesperformances
profprof [[ --tctc ]] [[ --mm fichfich_statistiques_statistiques ]] [[ fichfich
exécexéc
]]
•• AfficheAffiche desdes statistiquesstatistiques sursur l'exécutionl'exécution dede fichfich
exécexéc
fonctionfonction parpar
fonctionfonction
•• tt :: parpar pourcentagepourcentage décroissantdécroissant dede tempstemps totaltotal (time)(time)
•• cc :: parpar nombrenombre d'appelsd'appels décroissantdécroissant ((callscalls))
•• fichfich_statistiques_statistiques :: lele fichierfichier desdes statistiquesstatistiques àà exploiterexploiter (fourni(fourni àà
l'issuel'issue dede l'exécutionl'exécution dede fichfich
exécexéc
:: mon.outmon.out parpar défaut)défaut)
–– "mon""mon" dede monmonitoringitoring
–– enen C,C, compilercompiler avecavec --pp pourpour générergénérer àà l'exécutionl'exécution lele fichierfichier mon.outmon.out
•• ExempleExemple :: $$ profprof progprog
%Time%Time SecondsSeconds CumsecsCumsecs ##CallsCalls msecmsec/call/call
NameName
99.999.9
6.736.73
6.736.73
11
6730.6730.
fonction1fonction1
0.10.1
0.010.01
6.746.74
12751275
0.0080.008
fonction2fonction2
0.00.0
0.000.00
6.746.74
12251225
0.0000.000
fonction3fonction3
0.00.0
0.000.00
6.746.74
11
0.0.
mainmain
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
101101
©© A.EDA.ED--DBALIDBALI
ExécutionExécution différéedifférée ouou périodiquepériodique daemondaemon croncron •• ProcessusProcessus
ExécutionExécution différéedifférée ouou périodiquepériodique
daemondaemon croncron
•• ProcessusProcessus horlogehorloge ((clockclock daemondaemon))
•• GèreGère l'exécutionl'exécution dede requêtesrequêtes lancéeslancées àà l'aidel'aide desdes
commandescommandes ::
–– atat :: ExécutionExécution àà unun momentmoment donnédonné
–– batchbatch :: ExécutionExécution selonselon chargecharge
–– crontabcrontab :: ExécutionExécution périodiquepériodique
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
102102
©© A.EDA.ED--DBALIDBALI
ExécutionExécution différéedifférée :: atat atat [[--mm]] tempstemps [[datedate]] [+[+incrémentincrément]]
ExécutionExécution différéedifférée :: atat
atat [[--mm]] tempstemps [[datedate]] [+[+incrémentincrément]] [[fichfich]]
•• ExécuteExécute lala procédureprocédure ShellShell fichfich auau momentmoment donnédonné parpar tempstemps etet àà lala
datedate donnéedonnée parpar datedate,, éventuellementéventuellement avecavec unun décalagedécalage dansdans lele
tempstemps donnédonné parpar incrémentincrément (nombre(nombre suivisuivi parpar uneune unité)unité)
--mm :: unun courriercourrier (mail)(mail) estest adresséadressé àà l'utilisateurl'utilisateur àà lala finfin dede
l'exécutionl'exécution différéedifférée
•• FormatsFormats ::
––
tempstemps ::
ouou ::
h,h, hhhh,, hhmmhhmm,, h:m,h:m, h:mm,h:mm, hhhh:m,:m, hhhh:mm:mm
nownow,, noonnoon,, midnightmidnight
–– unitéunité dede l'incrémentl'incrément :: minutes,minutes, hourshours,, daysdays,, weeksweeks,, monthsmonths
•• ExemplesExemples ::
$$ atat nownow ++ 55 minutesminutes payepaye
oùoù payepaye estest unun programmeprogramme qlqqlq ouou uneune procédureprocédure ShellShell
$$ atat 16:4516:45
lprlpr fichier;fichier; mailmail adamadam << messagemessage (puis(puis ^d^d))
oùoù messagemessage estest unun fichierfichier quiqui contientcontient unun messagemessage àà destinationdestination dede
l'utilisateurl'utilisateur adamadam
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
103103
©© A.EDA.ED--DBALIDBALI
ExécutionExécution différéedifférée :: atat atat --ll [N°[N° job]job] –– LaLa listeliste desdes
ExécutionExécution différéedifférée :: atat
atat --ll [N°[N° job]job]
–– LaLa listeliste desdes commandescommandes enregistréesenregistrées estest affichéeaffichée
–– ExempleExemple ::
$$ atat --ll
714328506.a714328506.a FriFri DecDec 11 14:31:0014:31:00 19951995
714328507.a714328507.a MonMon DecDec 44 18:20:0018:20:00 19951995
atat --rr
N°N° jobjob
–– AnnulerAnnuler lesles demandesdemandes enregistréesenregistrées donnéesdonnées parpar leursleurs N°N° jobjob
–– ExempleExemple ::
$$ atat --rr 714328507.a714328507.a
$$ atat --ll
714328506.a714328506.a FriFri DecDec 11 14:31:0014:31:00 19951995
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
104104
©© A.EDA.ED--DBALIDBALI
ExécutionExécution différéedifférée -- batchbatch batchbatch [[--mm]] [[fichfich]] •• ExécuterExécuter enen
ExécutionExécution différéedifférée -- batchbatch
batchbatch [[--mm]] [[fichfich]]
•• ExécuterExécuter enen différédifféré lesles commandescommandes dede lala
procédureprocédure ShellShell fichfich
L'heureL'heure dede l'exécutionl'exécution serasera fixéefixée parpar lele systèmesystème enen
fonctionfonction dede lala charge.charge.
--mm :: commecomme pourpour lala commandecommande atat
•• LeLe processusprocessus estest stockéstocké sursur uneune filefile d'attented'attente
différentedifférente desdes tâchestâches lancéeslancées parpar atat (queue(queue :: b)b)
•• batchbatch ⇔⇔ atat nownow
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
105105
©© A.EDA.ED--DBALIDBALI
ExécutionExécution différéedifférée -- lesles droitsdroits at.at.allowallow •• fichierfichier
ExécutionExécution différéedifférée -- lesles droitsdroits
at.at.allowallow
•• fichierfichier /var/spool//var/spool/croncron/at./at.allowallow
contientcontient lesles nomsnoms desdes utilisateursutilisateurs autorisésautorisés àà exécuterexécuter atat etet batchbatch
•• SiSi at.at.allowallow n'existen'existe paspas →→ at.at.denydeny
at.at.denydeny
•• fichierfichier /var/spool//var/spool/croncron/at./at.denydeny
contientcontient lesles nomsnoms desdes utilisateursutilisateurs interditsinterdits àà exécuterexécuter atat etet batchbatch
•• SiSi at.at.denydeny videvide →→ touttout lele mondemonde estest autorisé.autorisé.
•• SiSi at.at.allowallow etet at.at.denydeny inexistantsinexistants -->> seulseul rootroot estest autoriséautorisé
quiqui décidedécide ??
•• rootroot
•• unun seulseul utilisateurutilisateur parpar ligneligne dansdans at.at.allowallow etet at.at.denydeny
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
106106
©© A.EDA.ED--DBALIDBALI
ExécutionExécution périodiquepériodique -- crontabcrontab crontabcrontab [[ fichfich ]] •• copiercopier
ExécutionExécution périodiquepériodique -- crontabcrontab
crontabcrontab [[ fichfich ]]
•• copiercopier fichfich (fichiers(fichiers desdes jobsjobs périodiques)périodiques) dansdans
/var/spool//var/spool/croncron//crontabscrontabs soussous lele nomnom dede l'utilisateurl'utilisateur
•• /var/spool//var/spool/croncron//crontabscrontabs répertoirerépertoire desdes fichiersfichiers dede travauxtravaux
périodiquespériodiques (un(un fichierfichier parpar utilisateurutilisateur autorisé)autorisé)
crontabcrontab --ee
•• ÉditerÉditer (pour(pour modification)modification) lele fichierfichier desdes jobs.jobs.
crontabcrontab --ll
•• ListerLister (sur(sur l'écran)l'écran) lele contenucontenu dudu fichierfichier desdes jobs.jobs.
crontabcrontab --rr
•• RetirerRetirer (du(du répertoirerépertoire desdes travauxtravaux périodiques)périodiques) lele fichierfichier desdes jobs.jobs.
croncron
allowallow
etet croncron
denydeny
•• FichiersFichiers d'autorisationd'autorisation etet d'interdictiond'interdiction dudu serviceservice croncron
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
107107
©© A.EDA.ED--DBALIDBALI
ExécutionExécution périodiquepériodique -- fichierfichier desdes jobsjobs périodiquespériodiques
ExécutionExécution périodiquepériodique --
fichierfichier desdes jobsjobs périodiquespériodiques
StructureStructure desdes ligneslignes
minutes minutes
heures heures
jour_du_mois jour_du_mois
mois mois
jour_de_semaine jour_de_semaine
commandende comma
minutesminutes :: 00 →→ 5959 ;;
heuresheures :: 00 →→ 2323 ;;
jour_du_moisjour_du_mois :: 11 →→ 3131 ;;
moismois :: 11 →→ 1212 ;;
jour_de_semainejour_de_semaine :: 00 →→ 66 (0(0 == dimanche)dimanche) ;;
commandecommande :: commandecommande àà exécuterexécuter auau momentmoment vouluvoulu
ExempleExemple
•• SoitSoit lele fichierfichier desdes jobsjobs suivantsuivant ::
00 00
11 33 55 cmdcmd 11
3030 00 1515 22 11 cmdcmd 22
•• ExécuterExécuter cmdcmd 11 àà minuitminuit (0(0 0)0) toustous lesles vendredisvendredis (5)(5) etet toustous lesles
premierspremiers (1)(1) dudu moismois dede marsmars (3)(3)
•• ExécuterExécuter cmdcmd 22 àà minuitminuit trentetrente (30(30 0)0) toustous lesles lundislundis (1)(1) etet
toustous lesles quinzequinze (15)(15) dudu moismois dede févrierfévrier (2)(2)
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
108108
©© A.EDA.ED--DBALIDBALI
ExécutionExécution périodiquepériodique -- fichierfichier desdes jobsjobs périodiquespériodiques
ExécutionExécution périodiquepériodique --
fichierfichier desdes jobsjobs périodiquespériodiques
GroupementGroupement dede critèrescritères
•• LesLes champschamps définissantdéfinissant lele tempstemps peuventpeuvent êtreêtre ::
–– uneune listeliste dede valeursvaleurs séparéesséparées parpar desdes virgulesvirgules (n(n 11 ,, nn 22 ,,
) )
––
unun intervalleintervalle dede valeursvaleurs (n(n 11 --nn 22 ))
–– uneune étoileétoile (*(* == toutestoutes lesles valeursvaleurs sontsont possibles)possibles)
•• ExempleExemple
00***00***
findfind /home/home --namename corecore --execexec rmrm --ff {}{} \\;;
3030 00 ** ** 11--55 tartar cvfcvf //devdev/rst0/rst0 /home/home
00 11 ** ** 0,60,6 tartar cvfcvf //devdev/rst0/rst0 //
11 :: détruiredétruire toustous lesles joursjours àà minuitminuit lesles fichiersfichiers corecore soussous
l'arborescencel'arborescence /home/home ;;
22
:: fairefaire uneune sauvegardesauvegarde dudu répertoirerépertoire /home/home toustous lesles joursjours dede lala
semainesemaine dede travailtravail (lundi(lundi--vendredi)vendredi) etet cece àà minuitminuit trentetrente ;;
33
:: fairefaire uneune sauvegardesauvegarde dede touttout lele disquedisque lesles 22 joursjours dudu weekweek--endend àà
1h1h dudu matin.matin.
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
109109
©© A.EDA.ED--DBALIDBALI
CommunicationCommunication entreentre systèmessystèmes T T T T Réseau de stations Grosse unité pilotant un
CommunicationCommunication entreentre systèmessystèmes
T
T
T
T
Réseau de stations
Grosse unité pilotant un nombre
important de terminaux
câbles, fibres optiques, ondes
permanent (ETHERNET)
temporaire (MoDem)
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
110110
©© A.EDA.ED--DBALIDBALI
CommunicationCommunication entreentre systèmessystèmes TransfertTransfert d'informationd'information ••
CommunicationCommunication entreentre systèmessystèmes
TransfertTransfert d'informationd'information
•• MessagerieMessagerie électroniqueélectronique ouou dialoguedialogue enen tempstemps réelréel
•• TransfertTransfert dede fichiersfichiers
PartagePartage desdes ressourcesressources
•• PartagePartage ±± transparenttransparent ::
–– ConnexionConnexion expliciteexplicite àà unun systèmesystème distantdistant ((remoteremote loginlogin))
–– ExécutionExécution d'uned'une commandecommande sursur uneune machinemachine distantedistante ((remoteremote
shellshell))
•• PartagePartage transparenttransparent ::
–– UtilisationUtilisation d'und'un fichierfichier distantdistant commecomme enen locallocal (NFS(NFS :: NetworkNetwork
FileFile System)System)
–– PropagationPropagation d'uned'une impressionimpression versvers unun systèmesystème distantdistant
–– PartagePartage transparenttransparent desdes unitésunités dede calculcalcul (migration(migration dansdans lele
tempstemps d'und'un processeurprocesseur àà l'autre,l'autre, partagepartage dede mémoires)mémoires)
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
111111
©© A.EDA.ED--DBALIDBALI
LesLes protocolesprotocoles -- OSIOSI // InterNetInterNet couche application FTP, TFTP, TELNET, SMTP, RLOGIN, RSH, RCP,
LesLes protocolesprotocoles -- OSIOSI // InterNetInterNet
couche application
FTP, TFTP, TELNET, SMTP,
RLOGIN, RSH, RCP, NFS
couche présentation
XDR
couche session
RPC
couche transport
TCP - UDP
couche réseau
IP
sous-couche liaison
ETHERNET (local)
sous-couche MAC
couche physique
Réseaux publics
(interconnexion)
Modèle ISO
Monde UNIX / InterNet
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
112112
©© A.EDA.ED--DBALIDBALI
LesLes réseauxréseaux physiquesphysiques ETHERNETETHERNET •• SupportSupport :: busbus dede
LesLes réseauxréseaux physiquesphysiques
ETHERNETETHERNET
•• SupportSupport :: busbus dede communicationcommunication →→ réceptionréception etet émissionémission
àà touttout instantinstant (gestion(gestion dede collisions)collisions)
•• VitesseVitesse :: 1010--100100 etet ++ MbitsMbits/s/s
•• AdressageAdressage physiquephysique :: 4848 bitsbits (carte(carte EthernetEthernet →→ adresseadresse
unique)unique)
•• TrameTrame EthernetEthernet :: véhiculevéhicule l'adressel'adresse dede l'émetteurl'émetteur etet cellecelle
dudu destinataire.destinataire. PossibilitéPossibilité dede diffusiondiffusion généralegénérale
((broadcastbroadcast).).
InterconnexionInterconnexion dede réseauxréseaux locauxlocaux
•• EnEn général,général, réseauxréseaux téléphoniquetéléphonique publicspublics
–– normenorme X25X25
–– TRANSPACTRANSPAC
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
113113
©© A.EDA.ED--DBALIDBALI
ProtocoleProtocole IPIP IPIP (Internet(Internet ProtocolProtocol)) •• MécanismeMécanisme dede
ProtocoleProtocole IPIP
IPIP (Internet(Internet ProtocolProtocol))
•• MécanismeMécanisme dede désignationdésignation (adressage)(adressage)
•• MécanismeMécanisme d'arrivéed'arrivée (routage)(routage)
AdressageAdressage
•• RéseauRéseau →→ adresseadresse logiquelogique sursur 3232 bitsbits (ou(ou 44 octets)octets)
•• DésignationDésignation :: n1.n2.n3.n4n1.n2.n3.n4
ExempleExemple :: 132.227.70.83132.227.70.83,, 192.92.125.20192.92.125.20,,
•• 33 ClassesClasses dede réseauxréseaux ::
–– classeclasse AA (grands(grands réseaux)réseaux) :: 88 bitsbits fixesfixes etet 2424 variablesvariables
–– classeclasse BB (réseaux(réseaux moyens)moyens) :: 1616 bitsbits fixesfixes etet 1616 variablesvariables
–– classeclasse CC (petits(petits réseauxréseaux )) :: 2424 bitsbits fixesfixes etet 88 variablesvariables
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
114114
©© A.EDA.ED--DBALIDBALI
ProtocoleProtocole IPIP RoutageRoutage •• PassagePassage parpar desdes passerellespasserelles ••
ProtocoleProtocole IPIP
RoutageRoutage
•• PassagePassage parpar desdes passerellespasserelles
•• L'informationL'information nene dépassedépasse paspas lala couchecouche réseauréseau (3)(3)
•• DansDans chaquechaque systèmesystème :: tabletable dede routageroutage →→ identifieridentifier lala
passerellepasserelle
machine 1
machine 2
passerelle 1
passerelle 2
réseau 1
réseau 2
réseau 3
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
115115
©© A.EDA.ED--DBALIDBALI
NotionNotion dede domainedomaine monde InterNet uk fr edu com gov univ-orleans inria white-house nasa citu
NotionNotion dede domainedomaine
monde InterNet
uk
fr
edu
com
gov
univ-orleans
inria
white-house
nasa
citu
lifo
discov
soleil
project1
Exemples : soleil.lifo.univ-orleans.fr, project1.discov.nasa.gov
adam@soleil.lifo.univ-orleans.fr, Bill.Clinton@white-house.gov
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
116116
©© A.EDA.ED--DBALIDBALI
FichiersFichiers dede configurationconfiguration réseauréseau FichierFichier //etcetc//ethersethers •• ••
FichiersFichiers dede configurationconfiguration réseauréseau
FichierFichier //etcetc//ethersethers
••
••
BaseBase dede donnéedonnée associantassociant unun nomnom àà uneune machinemachine (reconnue(reconnue parpar sonson N°N°
Ethernet)Ethernet)
FormatFormat fichierfichier :: N°N° EthernetEthernet nomnom machinemachine
FichierFichier //etcetc/hosts/hosts
••
BaseBase dede donnéedonnée associantassociant unun numéronuméro IPIP àà uneune machinemachine (reconnue(reconnue pparar sonson
nom)nom)
••
FormatFormat fichierfichier ::
N°N° IPIP
nomnom machinemachine
aliasalias
••
ExempleExemple ::
132.227.70.83132.227.70.83 soleilsoleil
lele--serveurserveur
FichierFichier //etcetc/services/services
•• BaseBase dede donnéedonnée associantassociant unun serviceservice (couche(couche application)application) àà unun poportrt
etet unun protocoleprotocole
•• FormatFormat ::
ServiceService
Port/ProtocolePort/Protocole
•• ExempleExemple ::
ftpftp
21/21/tcptcp
talktalk
23/23/udpudp
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
117117
©© A.EDA.ED--DBALIDBALI
FichiersFichiers dede configurationconfiguration réseauréseau FichierFichier //etcetc/hosts./hosts.equivequiv ••
FichiersFichiers dede configurationconfiguration réseauréseau
FichierFichier //etcetc/hosts./hosts.equivequiv
•• ListeListe desdes machinesmachines déclaréesdéclarées équivalenteséquivalentes àà lala machinemachine AA oùoù
cece fichierfichier estest définitdéfinit
•• TouteToute demandedemande provenantprovenant d'uned'une desdes machinesmachines dede
//etcetc/hosts./hosts.equivequiv formuléeformulée parpar unun utilisateurutilisateur xx serasera
acceptéeacceptée etet traitéetraitée dansdans lala machinemachine AA avecavec lesles droitsdroits dede xx
FichierFichier $HOME/.$HOME/.rhostsrhosts
•• MêmeMême idéeidée queque hosts.hosts.equivequiv maismais auau niveauniveau d'und'un utilisateurutilisateur
•• UtileUtile quandquand lesles machinesmachines nene sontsont paspas administréesadministrées parpar uneune
mêmemême personnepersonne (machines(machines àà priorisprioris nonnon équivalentes)équivalentes)
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
118118
©© A.EDA.ED--DBALIDBALI
LesLes applicationsapplications ServicesServices InterNetInterNet dede basebase •• FTPFTP etet TFTPTFTP ––
LesLes applicationsapplications
ServicesServices InterNetInterNet dede basebase
•• FTPFTP etet TFTPTFTP
–– TransfertTransfert dede fichiersfichiers
–– FileFile TransfertTransfert ProtocolProtocol etet TrivialTrivial FileFile TransfertTransfert ProtocolProtocol
•• TELNETTELNET
–– ConnexionConnexion àà distancedistance
–– TErminalTErminal NETworkNETwork protocolprotocol
•• SMTPSMTP
–– ÉchangeÉchange dede messagesmessages entreentre lesles utilisateursutilisateurs dede
systèmessystèmes distantsdistants
–– SimpleSimple MailMail TransferTransfer ProtocolProtocol
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
119119
©© A.EDA.ED--DBALIDBALI
LesLes applicationsapplications ServicesServices générauxgénéraux •• RPCRPC etet XDRXDR ––
LesLes applicationsapplications
ServicesServices générauxgénéraux
•• RPCRPC etet XDRXDR
–– ExécutionExécution dede commandescommandes àà distancedistance ((RemoteRemote
ProcedureProcedure Call)Call)
–– ReprésentationReprésentation desdes donnéesdonnées typéestypées indépendanteindépendante desdes
architecturesarchitectures ((eXternaleXternal DataData RepresentationRepresentation))
•• NFSNFS
–– GestionGestion répartierépartie desdes fichiersfichiers sursur °° systèmessystèmes d'und'un
réseauréseau
–– NetworkNetwork FileFile SystemSystem
•• LPDLPD
–– SpécificationSpécification dede spoolerspooler d'impressiond'impression répartierépartie
–– LineLine PrinterPrinter DaemonDaemon
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
120120
©© A.EDA.ED--DBALIDBALI
ServicesServices spécifiquementspécifiquement UNIXUNIX -- rloginrlogin rloginrlogin machinemachine [[--ll
ServicesServices spécifiquementspécifiquement UNIXUNIX -- rloginrlogin
rloginrlogin machinemachine [[--ll nom_nom_loginlogin]]
•• DemandeDemande dede connexionconnexion enen vuevue d'uned'une ouvertureouverture dede sessionsession
sursur lala machinemachine distantedistante machinemachine
nom_nom_loginlogin :: connexionconnexion soussous unun nomnom d'utilisateurd'utilisateur
spécifiquespécifique (par(par défaut,défaut, nomnom dede loginlogin local)local)
•• ExempleExemple ::
localelocale$$ rloginrlogin distante.mit.distante.mit.eduedu
PasswordPassword :: sisi localelocale etet distantedistante nene sontsont paspas
équivalenteséquivalentes
distantedistante$$ commandescommandes sursur lala machinemachine distantedistante
distantedistante$$ exitexit ouou logoutlogout
localelocale$$
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
121121
©© A.EDA.ED--DBALIDBALI
ServicesServices spécifiquementspécifiquement UNIXUNIX -- rshrsh rshrsh machinemachine [[optionsoptions]]
ServicesServices spécifiquementspécifiquement UNIXUNIX -- rshrsh
rshrsh machinemachine [[optionsoptions]] [[commandecommande]]
•• ExécutionExécution dede commandecommande sursur lele systèmesystème distantdistant dede machinemachine
optionsoptions ::
--ll nom_nom_loginlogin :: exécutionexécution dede commandecommande sursur machinemachine soussous lele nomnom
d'und'un utilisateurutilisateur spécifique.spécifique.
--nn :: entréeentrée standardstandard fermée.fermée.
•• ExempleExemple ::
localelocale$$ rshrsh distante.distante.inriainria
frfr
whowho
duponddupond
//devdev/ttyp1/ttyp1 14:1514:15
adamadam //devdev//coco 11:2311:23 listeliste desdes connectionsconnections sursur lala machinemachine
distantedistante dudu domainedomaine inriainria frfr
localelocale$$ rshrsh centrecentre catcat fichfich >> ff
affichageaffichage dede fichfich dede centrecentre etet redirectionredirection sursur ff dede localelocale
localelocale$$ rshrsh centrecentre catcat fichfich \\>> ff
ouou
localelocale$$ rshrsh centrecentre ""catcat fichfich >> f"f"
affichageaffichage dede fichfich dede centrecentre etet redirectionredirection sursur ff dede centrecentre
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
122122
©© A.EDA.ED--DBALIDBALI
ServicesServices spécifiquementspécifiquement UNIXUNIX -- rcprcp rcprcp [[--pp]] fichfich_source_source
ServicesServices spécifiquementspécifiquement UNIXUNIX -- rcprcp
rcprcp [[--pp]] fichfich_source_source fichfich_cible_cible
•• CopierCopier commecomme cpcp local.local.
•• fichfich_source_source et/ouet/ou fichfich_cible_cible estest unun nomnom étenduétendu
((localisation:nom_fichierlocalisation:nom_fichier)) oùoù localisationlocalisation estest dede lala formeforme ::
nom_machinenom_machine ouou nom_nom_loginlogin@nom_machine@nom_machine
((nom_machinenom_machine ::
ouou
nomnom machinemachine réseauréseau locallocal
nom_machine.nom_domainenom_machine.nom_domaine))
ExempleExemple ::
localelocale$$ rcprcp distante:/home/staff/distante:/home/staff/adamadam//fichfich copie_copie_fichfich
machinemachine 11 $$ rcprcp machinemachine 22 :fich:fich 22 machinemachine 33 :fich:fich 33
Lancer,Lancer, àà partirpartir dede lala machinemachine 11 ,, l'ordrel'ordre dede copiecopie dede fichfich 22 dede lala
machinemachine 22 versvers lala machinemachine 33 soussous lele nomnom fichfich 33
•• L'optionL'option --pp :: copiercopier avecavec lesles mêmemême droitsdroits d'accèsd'accès etet lala mêmemême
datedate dede modification.modification.
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
123123
©© A.EDA.ED--DBALIDBALI
ServicesServices spécifiquementspécifiquement UNIXUNIX --rcprcp rcprcp [[--pp]] [[--rr]] réf_source réf_source
ServicesServices spécifiquementspécifiquement UNIXUNIX --rcprcp
rcprcp [[--pp]] [[--rr]] réf_source
réf_source
répertoirerépertoire
•• CopierCopier lesles réf_sourceréf_source depuisdepuis touttout systèmesystème versvers unun répertoirerépertoire
éventuellementéventuellement distant.distant.
•• DansDans lesles 22 formes,formes, désactivationdésactivation desdes caractèrescaractères spéciauxspéciaux
destinésdestinés auau systèmesystème distantdistant (comme(comme pourpour rshrsh))
•• L'optionL'option --rr :: copiercopier récursivementrécursivement lesles réf_sourceréf_source,, quiqui sontsont
desdes répertoires,répertoires, versvers lele répertoirerépertoire cible.cible.
•• ExempleExemple ::
localelocale$$ rcprcp --pp --rr distante:/home/distante:/home/\\** /home/distante_/home/distante_savesave
Copier,Copier, éventuellementéventuellement récursivement,récursivement, toustous lesles fichiersfichiers etet
répertoiresrépertoires soussous /home/home dede lala machinemachine distantedistante versvers lele
répertoirerépertoire /home/distante_/home/distante_savesave dede lala machinemachine localelocale
UNIXUNIX :: ConceptsConcepts générauxgénéraux etet commandescommandes
124124
©© A.EDA.ED--DBALIDBALI