introduction aux logiciels libres et à linux

30
Introduction à Linux et aux logiciels Free/Libres/Open Source (aka FLOSS) Janvier 2018 Bruno Cornec, HPE Open Source and Linux Strategist

Upload: bruno-cornec

Post on 29-Jan-2018

54 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Introduction aux logiciels libres et à Linux

Introduction à Linux et aux logiciels

Free/Libres/Open Source (aka FLOSS)

Janvier 2018Bruno Cornec, HPE Open Source and Linux Strategist

Page 2: Introduction aux logiciels libres et à Linux

Introducing myself

2

● Software engineering and Unices since 1988:

– Mostly Configuration Management Systems (CMS), Build systems, quality tools, on multiple commercial Unix systems

– Discovered Open Source & Linux (OSL) & made first contributions in 1993

– Full time on OSL since 1995, first as HP reseller then @HP

● Currently:

– OSL Technology Strategist, WW Customer Innovation Center

– HP OSL Advocate and Converged Infrastructure Ambassador

– WW Linux Community Lead for the HP Open Source Profession

– AFUL and APRIL member, FLOSSITA board member. Conferences at WW level at LinuxCon, Linux.conf.au, ...

– MondoRescue, Project-Builder.org, UUWL and PUSK Project Lead

– LinuxCOE, FOSSology, mrepo, tellico, rinse, fossology, collectl, Ironic contributor

– FOSSBazaar/SPDX and OSL Governance enthusiast

– Mandriva, Mageia, Fedora packager

● And also:

– Amateur singer (Alto / Tenor), recorder player since 1976 and Choir director since 1987, CD collector (6000+), Concerts, Photography

Page 3: Introduction aux logiciels libres et à Linux

Logiciel ? FLOSS ? Quésako ?

Page 4: Introduction aux logiciels libres et à Linux

11/01/2018 4

L'information joue un rôle primordial et croissant.

Son contrôle procure un pouvoir culturel, économique et politique extrêmement fort.

Le support de l'information se dématérialise.

L'informatique devient prépondérante, omniprésente.

L'outil devient stratégique et de titanesques luttes de pouvoir s'engagent pour son contrôle.

Qu'est-ce que l'informatique ?

Page 5: Introduction aux logiciels libres et à Linux

11/01/2018 5

Favoriser le libre accès à l'information et à la diffusion du savoir.

Préserver un espace non marchand où le partage est naturel mais n'est pas un acte de piratage.

Préserver les libertés individuelles.

Veiller à la pluralité des opinions et des moyens techniques.

Garantir au citoyen les moyens d'exercer son libre arbitre.

Informatique libre: le partage du savoir

Page 6: Introduction aux logiciels libres et à Linux

11/01/2018 6

C'est un outil spécialisé qui répond à un besoin spécifique de traitement automatisé d'une information (mettre en page un texte, retoucher une photo, filtrer un son, ...).

Il satisfait ce besoin en enchaînant selon une logique déterminée un nombre incalculable d'opérations élémentaires.

Ces opérations élémentaires sont décrites de la seule manière accessible à un microprocesseur : le langage binaire.

Sous sa forme « prête à l'emploi », un logiciel est donc une suite logique de 0 et de 1 appelée code binaire.

Qu'est-ce qu'un logiciel ?

1010001010001011011010011001010110100110010101101101010000000000001101011011011111111110100100101101

Page 7: Introduction aux logiciels libres et à Linux

11/01/2018 7

Sous sa forme binaire, un logiciel est incompréhensible par un être humain.

Le développeur conçoit donc le logiciel dans un langage symbolique et plus accessible, dit de haut niveau par rapport au langage binaire, dit de bas niveau.

Cette description de haut niveau, qui n'est pas exploitable en l'état par le microprocesseur, est appelée code source.

La conversion du code source en code binaire est assurée par un outil nommé compilateur.

Code source et code binaireint rangeSum(int low, int high){ int i; int sum = low; for (i = low + 1; i <= high; i++){ sum = sum + i; } return sum; }

Page 8: Introduction aux logiciels libres et à Linux

11/01/2018 8

En Europe, le logiciel est à ce jour exclusivement protégé par le droit d'auteur (droit latin) ou par le copyright (droit anglo-saxon).

Le droit d'auteur ne reconnaît que peu de droits à l'utilisateur et lui interdit beaucoup de choses.

Les logiciels classiques sont accompagnés de licences d'exploitation et de diffusion encore plus restrictives.

Un utilisateur n'est pas possesseur d'un logiciel qu'il acquiert pas plus que le film d'un DVD ou la musique d'un CD. Il l'est d'un livre, sans l'être de l'oeuvre bien évidemment.

Droit d'auteur

Page 9: Introduction aux logiciels libres et à Linux

11/01/2018 9

L'auteur d'un logiciel libre veut rétablir l'équilibre. A cette fin, il accorde 4 libertés fondamentales à l'utilisateur :

Exécuter le programme à sa guise et sans restriction.

Etudier le fonctionnement du programme.

Redistribuer des copies, gratuites ou payantes.

Modifier le programme, s'en inspirer et redistribuer les modifications pour le profit de tous.

L'exercice de ces libertés exige le libre accès au code source et la liberté de le modifier.

Droit de l'utilisateur

≠ Freeware/Shareware

Page 10: Introduction aux logiciels libres et à Linux

11/01/2018 10

Tout provient de la disponibilité du code source :

Portabilité – Universalité - Facteur d'échelle

Flexibilité – Adaptabilité

Stabilité – Fiabilité

Performance – Réactivité – Sécurité

Interopérabilité – Pérennité – Indépendance

Universalité aux travers des standards, RFCs, normes

Le coût n'est qu'une conséquence

Un logiciel libre est comme une voiture dont on peut ouvrir le capot

Force du logiciel libre

Page 11: Introduction aux logiciels libres et à Linux

11/01/2018 11

Au delà du code, le Logiciel Libre a 3 pilliersLicensesLicenses CommunautéCommunauté MethodologieMethodologie

•On peut utiliser les 3 aspects en tant qu'avantage compétitifOn peut utiliser les 3 aspects en tant qu'avantage compétitif•Le modèle commercial se déplace sur le serviceLe modèle commercial se déplace sur le service•Plus vous vous impliquez, plus vous influencez/contrôlez.Plus vous vous impliquez, plus vous influencez/contrôlez.

Près de 60 licences aujourd'hui:Les Copyleft (pas virales – à réciprocité): les modifications diffusées de code doivent retourner à la communautéLes autres sont similaires au domaine public et ont peu d'exigencesLe droit d'auteur et le copyright sont des éléments fondamentaux pour toutes ces licences FLOSS.

“Une communauté est une entité sociale de toute taille qui partage des valeurs [...] Depuis l'avênement d'Internet, la notion de communauté n'a plus de limitation géographique, puisque ses membres peuvent se réunir virtuellement en ligne et partager des intérêts communs indépendamment de leur localisation.” (d'après Wikipedia)

Développement partagé.De multiple projets avec leur propre structure. Divers modèles de gouvernance, certains autocratiques, d'autres basé sur le consensus.Variété d'information sur la feuille de route.Méritocratie où l'influence et le contrôle s'obtiennent par l'implication.Certains projets sont pilotés par des entreprises, beaucoup ar des individus.

Page 12: Introduction aux logiciels libres et à Linux

11/01/2018 12

Licenses FLOSS

freeware

SunSCSL

Microsoftshared source

Code sourcedisponibleBinaire seul

source aveclimitations

manyjava

libraries

Logicielgratuit

shareware

AdobeReader

GNU LGPL MIT

Art Libre

MozillaW3C

Apache

permissiveCopyleft / réciprocité

GNU GPL

FLOSS

BSD

Reference URL: http://www.gnu.org/licenses/licenses.en.html

CC

Page 13: Introduction aux logiciels libres et à Linux

11/01/2018 13

Citation d'Eben Moglen

“We now have a body of software accessible to everybody on earth so robust and so profound in its

possibilities, that we are a few man months away from doing whatever it is that anyone wants to do

with computers all the time.”

From a speech given at Harvard Law School

Page 14: Introduction aux logiciels libres et à Linux

11/01/2018 14

Conséquences● Pour les utilisateurs :

● Les solutions FLOSS ont un coût d'entrée plus bas, procurent sécurité par l'ouverture

● Liberté de choix uniquement sur dess critères techniques, donnant le contrôle total

● Liberté de développer une expertise interne ou d'externaliser

● Liberté de brancher si le projet père se comporte de façon non acceptable

● Pour l'industrie informatique :

● Les standards sont maintenant fourni avec une implémentation libre

● Les compagnies qui réussissent ne sont pas celles qui luttent contre, mais adoptent et participent.

● Le modèle commercial est autour du matériel et des services (consultance, intégration, support, formation, hébergement, infogérance, SaaS)

● La différentiation est faite sur la crédibilité commerciale et technique (implication dans les communautés), la diffusion rapide (innovation) et des matériels et services uniques qui répondent aux besoins des clients.

Page 15: Introduction aux logiciels libres et à Linux

Linux ? Une Distribution Linux ?

Page 16: Introduction aux logiciels libres et à Linux

11/01/2018 16

1967 – Arpanet (Internet Ancestor) - L. Roberts1969 – UNIX – B. Kernighan, D. Ritchie, K. Thomson

1971 – C Language – B. Kernighan, D. Ritchie

1972First e-mail

1973 – Mouse and Ethernet – Xerox Parc

1973TCP/IP – V. Cerf

1974 – Smart Card – R. Moreno1975 – Microsoft – P. Allen, B. Gates

1976Apple and Apple IIS. Wozniak, S. Jobs

2005 -

1978 – BSD 1 – B. Joy1980 – Internet – V. Cerf

1981PC - IBM

1984MacIntosh/Apple – LaserJet/HP

1985 – MS Windows

1991Linux – L. Torvalds

1995 – Java – Sun

2001Wikipedia

2008 - Cloud

Il était une fois...

1984 – GNU Project – R. Stallman1984 – X-Window/MIT – DNS

2010

2013 -

2006

Page 17: Introduction aux logiciels libres et à Linux

11/01/2018

Le projet GNU :

Tout démarre d'un problème d'imprimante

Richard M. Stalmann, AI Lab au MIT

But : Fabriquer un système d'exploitation libre à partir de rien

Début avec un éditeur (emacs), une chaîne de compilation C (gcc, gdb, glibc,as, ld), ...

Des outils el ligne de commande : ls, mv, rm, grep, awk, sed, make, bash, ...Des centaines d'outils aujourd'hui GNU Hurd Les licences GPL

GNU ?

Page 18: Introduction aux logiciels libres et à Linux

11/01/2018 18

Linux Kernel

Linux implementation GPL d'un noyauconforme au standard POSIX (Portable Operating System Interface Unix-Like - IEEE comitee 1003.x)

Fournit des services et interfaces pour les composants matériels et logiciels. Premiers test de conformité fait par le Gouvernement US avec le noyau 1.2.13. Développé mondialement par des millers de développeurs.

12,000,000+ lignes de code, 77MB xz compressed tarball... (50 % pour les pilotes, moins de 3 % de code assembleur ...) [sloccount sur 3.17.4]

http://en.wikipedia.org/wiki/List_of_Linux_supported_computer_architectures

Ubiquité : Fonctionne sur le Superdome X BL920c 460 threads 16To de RAM et sur un téléphone Android ou un GPS Tomtom (28 architectures de CPU prises en charge), des routeurs, des box ADSL/Vidéos... Il est utilisé dans des voitures, la navette spatiale internationale, 80 % des marché financiers, 100 % des machines du top500.org et il y a 1.3 Million de périphériques Android activaté par jour. http://en.wikipedia.org/wiki/Linux-powered_device

Valeur : En 2011, l'effort de développement du noyau Linux était estimé à environ 3 milliards de dollar. En 2015, à 5 milliards .

Linux ?

Page 19: Introduction aux logiciels libres et à Linux

11/01/2018

Ensemble coherent de paquets (1k-30k) pris dans les projets pères Gestionnaire de paquets Outil de contrôle Programme d'installation Scripts de démarrage Outils adhoc Mise à jour fonctionnelles Mise à jour de sécuritéGéré par une communauté

ou une entité commerciale (certification matérielle, LTS, support)

Distribution Linux : un projet en soi

Page 20: Introduction aux logiciels libres et à Linux

11/01/2018 20

1984 – GNU/FSF Project - R. Stallman

1991 - Linux L. Torvalds

1996 – SuSE & Yast – Florian La Roche

Evolution des distributions Linux

1993 – Slackware – Patrick Volkerding

1993 – Red Hat LinuxMarc Ewing

1997 – Red Hat Package ManagerErik Troan & Mark Ewing

1993 – Debian Package

2003 – YUM - Seth Vidal

1996 – Debian GNU/LinuxIan Murdock

2003 – Fedora Warren Togami

1998 – Advanced Packaging ToolBrian White

2004 – UbuntuMark Shtuttleworth

1992 – SLS – Peter Mc Donald

2001 – SLES 2002 – RHEL

2005 – OpenSUSE

2010 – MageiaAnne Nicolas

2015 – DNF

Page 21: Introduction aux logiciels libres et à Linux

11/01/2018

Linux Distribution Relationships

Page 22: Introduction aux logiciels libres et à Linux

L'engagement de HPE

Page 23: Introduction aux logiciels libres et à Linux

HPE participe à l'écosystème libre de diverses manières

Deploiement interne

Partnerariat Embarqué

Contribution de propriété

intellectuelle

Participation Aide aux clients

Page 24: Introduction aux logiciels libres et à Linux

Coûts moindres : Faire plus avec moins

Gestion des risques

Innovation rapide

Améliorer agilité et flexibilité

Accélérer et simplifier les services

Impératifs des Enterprises Tendances

Générer de la croissance

Satisfaire les clients

Réagir à la compétition

S'adapter aux changements marché

Oeuvrer dans un écosystème de

standards ouverts

Big Data

Cloud

Mobilité

Securité

Social

Internet of Things

Nous sommes à un point d'inflexion de l'informatique

NouveauBusiness

Page 25: Introduction aux logiciels libres et à Linux

Notre stratégie

25

We makeHybrid IT simple

We have the expertiseto make it happen

We power theIntelligent Edge

Campus & Branch Industrial Internet of Things

Traditional Data Center

Software-defined Infrastructure and Private Cloud

Multi-cloud Partnerships

Advisory & Professional Services

TechnicalServices

IT ConsumptionModels

Traditional Data Center Private Cloud

Managed Cloud Services Public Cloud

HPE est le partenaire de confiance pour le Libre

4500+ spécialistes Open Source

Page 26: Introduction aux logiciels libres et à Linux

Les contributions au Logiciel Libre

I think that many people assume, wrongly, that a company exists simply to make money. While this is an important result of a company’s existence, we have to go deeper and find the real reasons for our being. As we investigate this, we inevitably come to the conclusion that a group of people get together and exist as an institution that we call a company so they are able to accomplish something collectively which they could not accomplish separately. They are able to do something worthwhile — they make a contribution to society (a phrase which sounds trite but is fundamental).

David Packard, March 8, 1960

Page 27: Introduction aux logiciels libres et à Linux

Cycles de vie

Page 28: Introduction aux logiciels libres et à Linux

Utilisation du noyau Linux dans les distributions

2.6.35 2.6.36 2.6.37 2.6.38

Fedora 14

(2011-10)

RHEL 6 GA(2010-11)

RHEL 6.1(2011-05)

2009-12 2010-08 2010-10 2011-01 2011-03 2011-05 2011-07 2012-01 2012-05 2013-06 2013-11 2014-03 2014-10

2.6.39 3.0 3.2 3.4 3.10 3.12 3.14 3.17

Ubuntu 10.10 Ubuntu 11.04 Ubuntu 11.10 Ubuntu 12.04

LTS

Ubuntu 13.10 Ubuntu 14.04

LTS

Ubuntu 14.10

Debian 7

2013-05

RHEL 6.2(2011-12)

RHEL 6.3(2012-06)

RHEL 6.5(2013-11)

RHEL 6.6(2014-10)

RHEL 7.0(2014-06)

Fedora 19

(2013-07)

3.9

Fedora 14

(2010-11)

Fedora 15

(2011-05)

Fedora 17

(2012-05)

Fedora 20

(2013-12)

Debian 6

2011-02

SLES 11 SP1

2010-06

SLES 11 SP2

2012-02

SLES 11 SP3

2013-07

SLES 12

2014-10

2.6.32

OpenSUSE 11.4

2011-03

OpenSUSE 12.2

2012-09

OpenSUSE 13.1

2013-11

OpenSUSE 13.2

2014-11

Page 29: Introduction aux logiciels libres et à Linux

Exemple de complexité d'alignement de cycle de vie

45nm 32nm 22nmtick tock

Xeon 5500(Nehalem)

Xeon 5600(Westmere)

Xeon 2600 (Sandy-Bridge)

Broadwell / Skylake

Xeon 5400Xeon 5200

G6G6wG7

2009 2010 2011 Future

Gen8

G6 long-life

RHEL 55.5y full support 1.5y on hw, sw, bugs 3.5y on xxxx

5.5

+3y LTS

4.8

RHEL 4

2012

RHEL 7

2013

tick ticktock tock

2014

Xeon 2600 v2 (Ivy Bridge)

Gen9

RHEL 6

Cf: https://access.redhat.com/site/support/policy/updates/errata/

2015

Xeon 2600 v3 (Haswell)

tick

Page 30: Introduction aux logiciels libres et à Linux

11/01/2018 Private | Confidential | Internal Use Only

”Changes are never easy to make. There is comfort and safety in tradition, but change must come, no matter how painful or expensive it may be.”

Bill Hewlett

[email protected](Open Source and Linux Technology Strategist

at the WW Customer Innovation Center)

http://downloads.linux.hpe.com/

Linus Torvalds, Richard Stallman, Eric Raymond, Nat Makarevitch, René Cougnenc, Eric Dumas, Rémy Card, Bdale Garbee, Bryan Gartner, Craig Lamparter, Lee Mayes, Gallig Renaud, Andree Leidenfrost, Phil Robb, Bob Gobeille, Martin Michlmayr among others, for their work and devotion to the Open Source Software cause... and my family for their patience :-)

MERCI !