Académique Documents
Professionnel Documents
Culture Documents
Page 1
Cours de Linux et Programmation Système Par Ing. Arno DONGMO
Chaque utilisateur possède un shell par défaut, qui sera lancé à l'ouverture d'une invite
de commande. Le shell par défaut est précisé dans le fichier de configuration /etc/passwd dans
le dernier champ de la ligne correspondant à l'utilisateur.
Pour déterminer le shell que vous utilisez actuellement, tapez la commande echo suivie
de la variable d'environnement système $SHELL.
3 - Fichiers et processus
Tout dans Linux est considéré comme un fichier ou un processus. Un processus est un
programme en cours d'exécution identifié par un identifiant de processus unique, appelé PID.
Les processus peuvent être de courte durée, tels qu'un processus qui imprime un fichier à
l'écran ou peuvent s'exécuter indéfiniment, tel qu'un programme de surveillance. Un fichier est
simplement une collection de données, avec un emplacement dans le système de fichiers appelé
un chemin; les chemins seront généralement une série de mots (noms de répertoires) séparés
par des barres obliques, "/". Les fichiers sont créés par les utilisateurs via des éditeurs de texte,
des compilateurs ou d'autres moyens. Le noyau Linux est responsable de l'organisation des
processus et de l'interaction avec les fichiers; il alloue du temps et de la mémoire à chaque
processus et gère le système de fichiers et les communications en répon se aux appels système.
II – LIBRE, GRATUIT & OPEN SOURCE
1 - Libre
L'expression « Logiciel Libre » fait référence à la liberté et non pas au prix. Pour comprendre
le concept, vous devez penser à la « liberté d'expression », pas à « l'entrée libre ». L'expression «
Logiciel Libre » fait référence à la liberté pour les utilisateurs d'exécuter, de copier, de distribuer,
d'étudier, de modifier et d'améliorer le logiciel. Plus précisément, elle fait référence à quatre types de
liberté pour l'utilisateur du logiciel :
Liberté 0 : La liberté d'exécuter le programme, pour tous les usages.
Liberté 1 : La liberté d'étudier le fonctionnement du programme, et de l'adapter à vos besoins. Pour
ceci l'accès au code source est une condition requis.
Liberté 2 : La liberté de redistribuer des copies, donc d'aider votre voisin.
Liberté 3 : La liberté d'améliorer le programme et de publier vos améliorations, pour en faire profiter
toute la communauté. Pour se faire, l'accès au code source est une condition requise.
Un programme est un Logiciel Libre si les utilisateurs ont toutes ces libertés.
Ainsi, vous êtes Libre de redistribuer des copies, avec ou sans modification, gratuitement ou non, à
tout le monde, partout. Être Libre de faire ceci signifie entre autre que vous n'avez pas à demander
ou à payer pour en avoir la permission. Vous devez aussi avoir la liberté de faire des modifications et
de les utiliser à titre personnel dans votre travail ou vos loisirs, sans en mentionner l'existence. Si vous
publiez vos modifications, vous n'êtes pas obligé de prévenir quelqu'un de particulier ou de le faire
d'une manière particulière. La liberté d'utiliser un programme est la liberté pour tout type de personne
ou d'organisation de l'utiliser pour tout type de système informatique, pour tout type de tâche et sans
être obligé de communiquer ultérieurement avec le développeur ou tout autre entité spécifique.
2 - Open Source
Un logiciel Open Source est un programme informatique dont le code source est distribué
sous une licence permettant à quiconque de lire, modifier ou redistribuer ce logiciel. Il se distingue
cependant du logiciel libre, au sens où l’Open Source est davantage tourné vers un objectif de
développement collaboratif que vers la défense des libertés individuelles. Dans la pratique, cette
nuance est rarement prise en compte, et l’usage a tendance à assimiler “logiciel libre” et “logiciel
Open Source”. Open Source ne signifie pas non plus “gratuit”. Il existe de
Page 2
Cours de Linux et Programmation Système Par Ing. Arno DONGMO
nombreux freewares dont le code source est propriétaire (il n’est pas permis d’y accéder, de le
modifier ou de le redistribuer).
Avantages
Le grand avantage pour l’utilisateur – qu’il soit un particulier ou une entreprise – est qu’il n’y
a pas de licence à payer. L'utilisateur profite aussi de l’indépendance vis-à-vis du fabricant.
Pour les développeurs de ces logiciels, les avantages sont plus nombreux. Comme le code peut être
consulté, toute utilisation abusive du logiciel attirerait immédiatement l’attention. Le codage
malveillant est donc rapidement découvert, c’est pourquoi les logiciels open source sont très sûrs.
De légères erreurs dans le logiciel sont aussi rapidement détectées et corrigées, étant donné que de
nombreux programmateurs indépendants peuvent relever les erreurs les uns des autres et discuter de
leurs difficultés. De plus, l’utilisateur peut adapter le programme à ses besoins. Il est libre de
développer le code et d’ajouter au logiciel les fonctionnalités qui lui plaisent ou dont il aurait besoin.
Inconvénients
L’utilisateur ne peut pas compter sur le fait que le logiciel open source continuera d’être
développé rapidement, étant donné que les projets, ne percevant aucun revenu, n’ont que très peu de
possibilités financières. Les développeurs travaillent bénévolement sur les projets, c’est-à-dire sur
leur temps libre.
Il n’existe pas d’entreprise de développeurs offrant une assistance. Les personnes capables de
fournir ce support ne sont pas toujours disponibles. Les forums en ligne peuvent ici offrir une solution,
tout comme les entreprises, qui n’ont certes pas développé le logiciel, mais peuvent se concentrer sur
l’assistance. Celles-ci se font rémunérer grâce à une assistance professionnelle fournie pour des
logiciels gratuits.
Gratuit
Pas de licence : logiciel accessible sans payer
Page 4
Cours de Linux et Programmation Système Par Ing. Arno DONGMO
Chapitre 2 : PRESENTATION UBUNTU : Applications
I – ACCESSOIRES
Utilisation Logiciel Windows Logiciel Logiciel Autres logiciels compatibles
Ubuntu par Kubuntu par
défaut défaut
Calculatrice Calculatrice Gcalctool KCalc Qalculate, Speedcrunch, Tiemu,
etc...
Édition de Bloc-Notes de Éditeur de Kate Mousepad, Leafpad, (etc...)
texte simple Windows texte gedit
Explorateur Explorateur Windows Nautilus Konqueror, D Thunar, pcmanfm, etc...
de fichiers olphin
Gestionnaire Explorateur Windows, File-Roller Ark 7-Zip, Peazip, etc...
d'archive WinRAR, 7-zip
Gravure de Graveur de CD (par Brasero K3B Devede, 2ManDVD, etc...
CD/DVD défaut, inclus depuis la
version 7)
Manipulation Daemon Tools Monteur mount GmountISO, AcetoneISO, Gis
d'images CD d'archives oMount, FuseISO, Kiso1)
Gestionnaire Supercopier Clipit Klipper Ultracopier, MiniCopier
de copie
Terminal Invite de commande (Gnome) Konsole XTerm, Eterm, YaKuake, Tilda,
Windows, PowerShell Terminal Guake, etc...
II - Bureautique
Utilisation Logiciel Logiciel Ubuntu par Logiciel Alternatives
Windows défaut Kubuntu par
défaut
Agenda MS Outlook Gnome Agenda Kontact Lightning, Evolution
Comptabilit EBP, CIEL, Gnucash (Petites
é ERP5 entreprises), HomeBank
(particuliers), OpenSI, KmyM
oney, Phpcompta, (etc)
Créateur de MS LibreOffice Calligra Stage, MS
présentation PowerPoint Impress PowerPoint, LaTeX+Beamer
Gestion de MS Access LibreOffice Base Calligra Kexi, Dynacase
base de
données
Gestion de MS Project Calligra
projets Plan, GanttProject, ProjectLibre, Gnome
Planner, (etc)
Gestion des Microsoft Skrooge, Grisbi, Gnucash, KmyMoney, Home
finances Money Bank, (etc)
personnelles
Lecteur Adobe Evince Okular Xpdf, Foxit Reader, (etc)
PDF Reader,
Page 5
Cours de Linux et Programmation Système Par Ing. Arno DONGMO
Foxit
Reader,
SumatraPDF
Manipulatio PDFcreator Imprimante PDF PDFedit, PDF Split and Merge, Master PDF
n et création virtuelle Editor 4(formulaires CERFA), (etc)
de fichiers
PDF
Mise en Adobe LibreOffice Draw, Scribus, LucidPress™2) ; PageStream™3) ; (et
page / PAO InDesign, réduit en c)
Quark fonctionnalités pour
Xpress, MS la PAO, plus adapté
Publisher au dessin
Suite MS Office LibreOffice Calligra, MS Office, Gnome-Office
bureautique
Tableur MS Excel LibreOffice Calc Calligra Sheets, MS Excel, Gnumeric
Traitement MS Word LibreOffice Writer Calligra Words, Abiword, LaTeX
de texte
Créateur de MS Visio LibreOffice Draw, Dia, Calligra Flow, ArgoUml
diagrammes réduit en
fonctionnalités pour
la création de
diagrammes, plus
adapté au dessin
III - Graphisme
Utilisation Logiciel Windows Logiciel Logiciel Alternatives
Ubuntu par Kubuntu par
défaut défaut
Animation et 3D Studio Max, Blender, ArtOfIllusion,
dessin 3D Bryce, Maya, Maya, XSI, etc...
Carrara, Blender, X
SI …
CAO AutoCAD, CATIA, FreeCAD, HeeksCAD, Libre
Solidworks CAD, DraftSight, etc...
Création de Autopano Pro Autopano Pro,Hugin, Stitch
panoramas Panorama, etc...
Éditeur Photoshop, Paint Gimp, Krita, MyPaint, etc...
graphique Shop Pro
avancé
Éditeur MS Paint, XnView, KolourPaint, Pinta, mtPaint,
graphique Photofiltre etc...
simple
Graphisme Adobe Illustrator, Libreoffice Draw Inkscape,karbon, sK1, etc..
vectoriel CorelDRAW .
Visionneur Explorateur Eye of Gwenview gThumb, GPicView, Comix,
d'images Windows, ACDSee Gnome, Sh etc...
otwell
Page 6
Cours de Linux et Programmation Système Par Ing. Arno DONGMO
Calibrage de la Ensemble de Dispcal, Argyll CMS
chaîne calibrage
graphique commercial
Compositing After Effects, Nuke Blender, Openshot, Natron,
Video Nuke (commercial), Piranha
(commercial)
IV - Internet
Utilisation Logiciel Windows Logiciel Logiciel Alternatives
Ubuntu par Kubuntu par
défaut défaut
Clavardage par mIRC, Trillian Empathy Kopete XChat, Chatzilla (exten
IRC sion
Firefox), Irssi, Opera,
(etc...)
Client FTP FileZilla, FTP Exp Nautilus Konqueror jus KFTPGrabber, Filezill
ert qu'à Ubuntu a, FireFTP (extension
10.10 Firefox), (etc...)
Courriel (e-mail) MS Outlook, Mozilla Kmail Evolution, Sylpheed,
Outlook Express, Thunderbird Claws
Windows Mail Mail, Opera, (etc...)
Échange de Emule, µTorrent, Transmission KTorrent iMule, aMule, GTK-
fichiers (P2P) Transmission, Gnutella, Frostwire, µt
qBitTorrent orrent, Deluge, Vuze,
QBittorrent, (etc...)
Gestionnaire de GetRight, Wget Wget DownThemAll! (exten
téléchargements Download sion
Accelerator firefox), jdownloader,
Gwget, KGet, (etc...)
Messagerie Psi, Empathy Kopete Psi, Gajim, Pidgin (etc
instantanée Exodus, Pidgin ...)
(protocole
Jabber)
Messagerie ICQ, AIM, Yahoo! Empathy Kopete Pidgin, (etc...)
instantanée Messenger
(autres réseaux)
Navigateurs Internet Explorer Mozilla Konqueror, Re Epiphany, Chromium,
Internet Firefox konq à partir Opera, Midori, Vivaldi,
de Kubuntu (etc...)
10.10,
puis Mozilla
Firefox à
partir de 14.04
Téléphonie sur IP Windows Live Empathy Ekiga, Skype, (etc...)
Messenger, Skype,
GoogleTalk
Page 7
Cours de Linux et Programmation Système Par Ing. Arno DONGMO
Vidéoconférence( MSN, MS Empathy Ekiga, Skype, (etc...)
webcam+audio+c Netmeeting, Skype
hat)
V - Programmation
Utilisation Logiciel Windows Logiciel Logiciel Alternatives
Ubuntu par Kubuntu par
défaut défaut
Édition de MS Frontpage, Gedit Kate (fr) L'éditeur IDE
sites web Adobe Brackets4) ; Bluefish, BlueGriffon
Dreamweaver, , Komodo
Adobe GoLive Edit, Scite, Geany, Vim, Emacs, g
PHPedit
Shell MS-DOS (Batch) Bash Bash Bash, Csh, sh, zsh, etc …
Compilateurs Visual Studio, Gcc Gcc g++, KDevelop, Eclipse+CDT, A
/ IDEC/C++ MinGW njuta, Magic C++, NetBeans avec
C/C++ Development
Pack, Code::Blocks, Geany, Qt C
reator, Vim, Emacs
Compilateurs Delphi Lazarus IDE, Geany, Free Pascal
/IDEPascal
Serveur de EasyPHP, Lamp Serveur LAMP (Apache + PHP +
développeme WampServer MySQL), XAMPP, EasyEclipse
nt
VI - Son et Vidéo
Utilisation Logiciel Logiciel Ubuntu Logiciel Alternatives
Windows par défaut Kubuntu par
défaut
Conversion Sound SoundConverter, Audacity, Xcfa, So
de médias Juicer, Audacity undKonverter
audio
Édition Audacity, Ardour, Audacity, Rezound,
audio SoundForge, Sweep, Sonik, Wavesurfer, Kwave,
Cool Edit Snd
Encodage FairUseWiz handbrake, VLC, acidrip, OGMRip
audio/vidéo ard, Ri4m, , Winff, ffmpeg, Mencoder, DeVeDe,
m4ng, dvdrip, avidemux, K9copy, k3b
MediaCoder
Encodage Windows Sound Juicer Kaffeine Banshee, Grip, Xcfa, soundKonverter,
de musique Media Audex, Asunder
(extraction Player
[rip] et
gravure)
Lecteur de Windows Sound Juicer Kaffeine KsCD
CD Media
Page 8
Cours de Linux et Programmation Système Par Ing. Arno DONGMO
Player,
Microsoft
Lecteur CD
Lecteur de Windows Rhythmbox Amarok Lollypop, Banshee, Audacious, Cleme
musique Media ntine, QuodLibet, Guayadeque
(avec Player
audiothèqu
e)
Lecteur de Winamp, Totem 5) Kaffeine Audacious, VLC,Beep Media Player,
musique Zinf Zinf, Mplayer, XMMS
(basique)
Lecteur de Windows Totem 6) Dragon Mplayer, VideoLAN Client (VLC)
vidéo Media Player
Player, VL
C
Montage Adobe PiTiVi Cinelerra, Lightworks, Kdenlive, Op
vidéo Premiere, enshot Video
Microsoft Editor, Flowblade, Avidemux, Kino,
Windows CinePaint, Jahshaka, etc...
Movie
Maker,
VirtualDub
Sampling FruityLoop Rosegarden, LMMS
Audio
VII - Système
Utilisation Logiciel Logiciel Ubuntu par Logiciel Alternatives
Windows défaut Kubuntu par
défaut
Diagnostique Everest, Aida64 Diagnostique système : hardinfo, gnome-
système et Test du système. device-manager,
liste du Liste du matériel : sysinfo
matériel Détails (Dans les
paramètres système)
Environneme (Windows) Gnome Shell KDE XFCE, Budgie, Unity,
nt de bureau Explorer etc...
Gestionnaire (Windows, Mutter Kwin Fluxbox, Openbox, Em
de fenêtres processus erald, Compiz, etc...
dwm.exe)
Gestionnaire Gestion des « Disques » KDE Partition GParted
de partitions disques Windows, Manager
Partition Magic
Gestionnaire (Windows) GDM SDDM XDM,
de sessions Winlogon slim, LXDM, LightDM
Mises à jour Microsoft Synaptic et Gestionnair Muon
Update7) e de mises à jour
Page 9
Cours de Linux et Programmation Système Par Ing. Arno DONGMO
Moniteur Gestionnaire de Moniteur Système « Surveillance Glances
Système Tâches du système »
(KSysGuard)
Pare-feu Pare-feu Pare-feu Linux Gufw, Shorewall, ufw-
(firewall) Windows, kde, etc...
ZoneAlarm
Défragmente Défragmenteur Aucun (inutile)
ur de disque de disque
Page 10
Cours de Linux et Programmation Système Par Ing. Arno DONGMO
Chapitre 3 : LES REPERTOIRES ET FICHIERS LINUX
I – LES REPERTOIRES
Comme la plupart des systèmes d’exploitation modernes, Linux enregistre tous ses fichiers
dans une structure organisée de façon hiérarchique, en arborescence.
Dans un système Linux comme dans d’autres systèmes, chaque répertoire peut ainsi contenir
d’autres répertoires, contenant eux-mêmes des sous-répertoires, jusqu’à ce qu’on arrive au bout de la
hiérarchie.
Une des premières difficultés pour les débutants Unix est de se repérer dans l'arborescence.
Contrairement à un environnement Windows qui regroupe toutes les ressources nécessaires à un
programme dans un même répertoire, les ressources dans un système unix (et dans une moindre
mesure MacOS) sont réparties dans une hiérarchie générale. Ainsi si le code exécutable d'un
programme se trouve dans le répertoire /bin , ses librairies se trouveront dans le répertoire /lib et ses
fichiers de configuration dans le répertoire /etc .
Page 11
Cours de Linux et Programmation Système Par Ing. Arno DONGMO
3 - Les dossiers de la racine
Sous Windows, on a l'habitude de trouver souvent les mêmes dossiers à la racine :
Documents and Settings, Program Files, Windows …
Sous Linux, les dossiers sont complètement différents. Et l'on ne risque pas de trouver de dossier qui
s'appelle Windows.
Voici la liste des dossiers les plus courants que l'on retrouve à chaque fois à la racine de Linux. La
description de chaque dossier est breve et vous permet de vous repérer au début.
Il n'est PAS nécessaire de retenir cette liste par cœur. D'ailleurs la liste n’est pas exhaustive et se sont
les dossiers principaux, et elle est quand même longue.
Elle sert juste à savoir à quoi correspond tel ou tel dossier, mais ne vous en faites pas si vous ne
maîtrisez pas à fond le sens de chacun de ces dossiers.
bin : contient des programmes (exécutables) susceptibles d'être utilisés par tous les utilisateurs de
la machine.
boot : fichiers permettant le démarrage de Linux.
dev : fichiers contenant les périphériques.
etc : fichiers de configuration.
home : répertoires personnels des utilisateurs.
Chaque utilisateur de l'ordinateur possède son dossier personnel. Par exemple, /home/Marie/
(pour l’utilisatrice Marie). S'il y avait un autre utilisateur Louise sur l’ordinateur, il aura aussi
son propre dossier : /home/Louise/.
lib : dossier contenant les bibliothèques partagées (généralement des fichiers.so) utilisées par les
programmes. C'est en fait là qu'on trouve l'équivalent des .dll de Windows.
media : lorsqu'un périphérique amovible (comme une carte mémoire SD ou une clé USB) est
inséré dans votre ordinateur, Linux vous permet d'y accéder à partir d'un sous-dossier de media.
On parle de montage.
mnt : c'est un peu pareil que media, mais pour un usage plus temporaire.
opt : répertoire utilisé pour les add-ons de programmes.
proc : contient des informations système.
root : c'est le dossier personnel de l'utilisateur « root ». Normalement, les dossiers personnels sont
placés dans home, mais celui de « root » fait exception. En effet, « root » est le superutilisateur, le
« chef » de la machine en quelque sorte. Il a droit à un espace spécial.
sbin : contient des programmes système importants.
tmp : dossier temporaire utilisé par les programmes pour stocker des fichiers.
usr : c'est un des plus gros dossiers, dans lequel vont s'installer la plupart des programmes
demandés par l'utilisateur.
var : ce dossier contient des données « variables », souvent des logs (traces écrites de ce qui s'est
passé récemment sur l'ordinateur).
III – LES REPERTOIRES EN DETAILS
1 - Les programmes exécutables
/bin : les commandes indispensables /usr/local/bin : les commandes installées à
/usr/bin : les autres commandes la main
2 - Les programmes exécutables du super-utilisateur root
/boot
5 - Les répertoires de travail des utilisateurs
/home
Chaque utilisateur du système aura un répertoire dans /home portant son nom.
6 - Le répertoire de travail du super-utilisateur root
/root
7 - Les librairies partagées
/lib : les librairies indispensables /usr/lib : les autres librairies
8 - Les points de montage
/mnt : Répertoire dans lequel on pourra créer des points de montage pour des systèmes de fichiers
temporaires, destiné à un usage d'appoint. Les composants vitaux du système ne doivent pas
dépendre de ce répertoire.
/media : Répertoire dans lequel des points de montage seront créés automatiquement pour accéder
aux supports de stockage amovibles (cdrom, clé usb...)
9 - Les périphériques
/dev
En particulier, on trouve les fichiers :
/dev/hda ou hdb ou sda etc... qui correspondent aux disques dur. Les disques durs IDE sont notés
hd et les SATA ou SCSI sont notés sd
/dev/hda1 ou hda2 etc... qui correspondent aux partitions des disques. hda1 est la 1ere partition du
premier disque IDE (hda).
/dev/eth0 qui correspond à la première carte réseau. Pour plus d'une carte réseau, on verra apparaître
d'autres fichiers /dev/eth.
/dev/audio qui correspond au périphérique son.
10 - Les autres programmes et leurs fichiers annexes
/usr
Ce répertoire est en lecture-seule et est destiné à être partagé.
Page 13
Cours de Linux et Programmation Système Par Ing. Arno DONGMO
Les programmes installés par le système d'exploitation se trouvent dans /usr/bin. Les programmes
installés manuellement par les utilisateurs se trouvent dans /usr/local.
« usr » veut dire Unix System Ressources et non pas user. Les fichiers relatifs aux utilisateurs du
système se trouvent dans le répertoire « /home ».
11 - Le système de fichier virtuel
/proc Donne les infos de la machine
sur le processeur Ex:/proc/cpuinfo
sur la mémoire Ex:/proc/meminfo
sur les modules Ex:/proc/modules
sur les montages du système Ex:/proc/mount
sur la swaps Ex:/proc/swaps
/tmp
13 - Les données variables
/var
Ce répertoire contient les données variables. En particulier:
/usr/local
├── bin/ : où se trouvent les programmes.
│ ├── monprogramme : exemple de programme nommé « monprogramme ».
├── etc/ : où se trouvent les fichiers de configurations des programmes, comme « /etc ».
│ ├── monprogramme.conf : exemple de configuration de « monprogramme ».
├── lib/ : où se trouvent les bibliothèques logiciel.
├── lib64/ : où se trouvent les bibliothèques logiciel, compilé pour les processeurs à architecture 64 bits.
├── sbin/ : où se trouvent les programmes utilisable par "root".
Page 14
Cours de Linux et Programmation Système Par Ing. Arno DONGMO