Chargement...
 
[Voir/Cacher menus de gauche]
[Voir/Cacher menus de droite]

Debian
Imprimer


Debian GNU/Linux est une des plus grandes distributions "historiques" Linux. Ce système d'exploitation existe depuis 1993.

Presque entièrement libre et connue pour faire le moins de compromis possible, elle a donc la faveur des fervents défenseurs du Logiciel Libre smile.

Non commerciale, cette distribution respecte un "contrat social Debian" et respecte les "principes du logiciel libre selon Debian". Le fonctionnement interne est régi par une constitution. Un système de vote par pondération permet de prendre les décisions concernant le projet. Le développement est communautaire. Utiliser Debian c'est donc aussi souvent adopter une certaine philosophie.


Liens :

Une formation Debian pour les débutants, très claire : http://formation-debian.via.ecp.fr/ . Image

Se procurer Debian : http://www.debian.org/distrib/ . Image

Pour vérifier que votre matériel sera bien reconnu par Debian, tapez lspci -n dans un terminal (avec un live CD d'une distribution Linux si vous êtes sous Windows) et recopiez le résultat sur ce site : http://kmuto.jp/debian/hcl/ . Image


1. Les différentes versions de Debian


Il y a trois branches dans Debian :

Sid : (ou expérimental) c'est la branche "Unstable", c'est à dire instable, constamment en développement.

Testing : (ou stretch) c'est la "préparation" de la future branche stable.

Stable : la distribution "stable" contient la dernière distribution officiellement sortie de Debian.

Lorsqu'un développeur Debian crée une nouvelle version d'un paquet, celle ci entre dans Sid. Si ce paquet ne présente aucun bogue grave pendant une durée déterminée, il est alors inclus dans Testing.

Après une période variable qui peut aller de un a deux ans, voire plus, Testing est figée, c'est à dire que les paquets venant de Sid n'y entrent plus. Les bogues restant sont corrigés et Testing est stabilisée, elle devient alors Stable.

La sortie de Stable n'est donc effectuée que lorsque les développeurs estiment qu'elle est vraiment prête. Il n'y a pas de date fixe, c'est la raison pour laquelle une version de Stable est vraiment... stable. Voir : https://www.debian.org/releases/index.fr.html . Image


2. Quelle branche de Debian choisir pour la MAO?


En fait tout dépend de vos besoins. Sid est instable dans le sens où les paquets de logiciels changent tout le temps, mais elle peut être par période, tout a fait fonctionnelle, et de fait une grosse partie des utilisateurs de Debian s'en servent au quotidien. Mais on n'est jamais à l'abri d'un problème momentané. Si par exemple, par manque de chance, une nouvelle version de jackd est boguée pendant une durée indéterminée, ou qu'Ardour ne peut être lancé pour cause de problème de dépendances, cela peut être problématique. Cette branche demande un plus gros travail d'administration de sa machine et les mises à jour sont très fréquentes, pour ne pas dire quotidiennes.

Sauf cas particulier, Testing est déconseillée par la documentation officielle puisqu'elle dépend de l'arrivée des paquets en provenance de Sid. Il se peut donc qu'il y ait des conflits ou que la branche ne soit pas complète en tant que système d'exploitation.

Mais ce problème peut être résolu par l'étiquetage de paquets . C'est à dire qu'à l'aide d'un fichier de préférences, on peut indiquer au système de gestion des paquets (APT pour Advance Packages Tools) dans quels dépôts (et donc quelles branches) aller piocher tel ou tel paquet, ou encore donner des priorités à telles branches, etc... et ce, afin d'éviter les conflits de versions, ou encore de se faire une distribution sur mesure.

Ainsi, par exemple, on peut très bien avoir une Testing qui pioche dans Sid les paquets qui lui manque pour être complète.

Ceci dit, Bien que la fonction de pinning d'APT décrite dans apt_preferences (5) soit puissante, ses effets peuvent être difficiles à comprendre et à gérer. Vous devriez la considérer comme une Fonction Avancée. C'est pas moi qui le dit, c'est la doc officielle...

Je vous conseille donc d'utiliser l'actuelle stable et donc d'installer la version 10, Buster (au 24/01/2021) si vous voulez utiliser Debian pour faire de la MAO.
(Le tutoriel Installation d'une Debian Jessie dédiée à la MAO peut vous aider à le faire.)

Sinon, vous pouvez toujours utiliser LibraZiK qui est elle, basée sur Debian Stable.


3. Configurer l'accès au temps-réel pour les applications audio (JACK)

Si vous avez jack1 d'installé :
dpkg-reconfigure -p high jackd

Si vous avez jack2 :
dpkg-reconfigure -p high jackd2


Plusse d'info : voir la page PAM.


4. Noyaux pour faire de la MAO avec Debian


À partir du noyau 2.6.39, il n'y a plus forcément besoin d'appliquer le patch RT pour faire du noyau linux un noyau RT afin de faire de la MAO.


4.1. Jessie


Il suffit d'ajouter les dépôts "Debian backport"s à votre sources.list :
deb http://http.debian.net/debian jessie-backports main


Puis d'installer le noyau 2.6.39 (ou supérieur) disponible dans ces dépôts.
# aptitude update
# aptitude install -t jessie-backports linux-image-2.6.39-bpo.2-amd64


Ou l'équivalent pour i386. Taper aptitude search linux-image dans un terminal vous fournira une liste des noyaux disponibles.


4.2. Testing / sid


Le noyau de base des dépôts devrait fonctionner, il n'y a rien de spécial à faire.



4.3. Compilation d'un noyau RT avec la méthode Debian


Si malgré tout vous voulez vous compiler un noyau RT, libre à vous.

Attention! dans ce qui suit, pour les lignes de commandes, si elles sont précédées d'un $, cela signifie qu'elles doivent être effectuées en utilisateur normal, # si elles doivent être effectuées en root. Vous ne devez pas recopier le symbole $ ou # dans votre terminal, mais uniquement ce qui suit.



- Commençons par installer les paquets nécessaires ou utiles pour la compilation d'un noyau sous Debian.
# aptitude install make build-essential kernel-package fakeroot libncurses5-dev bzip2 debconf-utils dpkg-dev debhelper



- Ensuite il vous faut les sources du noyau et le patch temps réel. Les patch RT se trouvent à cette adresse Image pour les plus recents, et ici pour les plus anciens. Pour les sources du noyau, vous les trouverez ici

Pour l'exemple nous allons compiler un noyau 2.6.31.12-rt20.


- Nous téléchargeons donc les sources du noyau linux-2.6.31.12.tar.bz2 et le patch RT patch-2.6.31.12-rt20 . Image


- Nous allons décompresser les sources :

J'utilise le paquet unp Image pour décompresser les sources. C'est un petit script en perl qui permet de décompresser des archives en ligne de commande et qui est très pratique.
# aptitude install unp
$ unp linux-2.6.31.12.tar.bz2



- Nous allons renommer le répertoire que contenant les sources qui viennent d'être décompressées, le nom dépendra bien sur du patch appliqué. Par exemple linux-2.6.31.12-rt20 dans notre cas.
$ mv linux-2.6.31.12 linux-2.6.31.12-rt20



- Nous allons nous placer dans le répertoire de ces sources :
$ cd linux-2.6.31.12-rt20



- Nous allons maintenant patcher les sources avec le patch temps réel qui se situe dans le répertoire juste au dessus :
$ bzcat ../patch-2.6.31.12-rt20.bz2 | patch -p1



- À ce stade, je vérifie que le fichier Makefile qui se trouve dans le répertoire des sources a bien été édité pour changer le nom de mon futur noyau.
$ less Makefile


Au début du Makefile il y a ces lignes :

VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 31
EXTRAVERSION =


Il faut que la ligne EXTRAVERSION ait été éditée ainsi dans notre cas :
EXTRAVERSION =.12-rt20


Si ce n'est pas le cas, j'édite moi-même avec un éditeur de texte et je sauve.


- Ensuite nous allons configurer le noyau (voir plus haut pour plus de précisions) :
$ make menuconfig


Vous vous retrouvez devant un menu dans votre terminal dans lequel vous allez naviguer avec les flèches haut et bas. Barre d'espace pour sélectionner ou de-sélectionner une option. Entrée pour entrer dans un sous-menu.

Allez dans Processor type and features, vérifiez que Processor family est celui de votre processeur.
Plus bas, vérifiez que le Preemption Mode est Complete Preemption (real time)
Encore plus bas vérifiez que le Timer frequency est à 1000 HZ

Avec les flèches gauche-droite allez sur Exit pour revenir dans le répertoire plus haut avec Entrée. Refaites Exit -> Entrée pour revenir au menu principal.


- Si vous avez une carte wifi, vous pouvez vérifier qu'elle sera bien supportée dans Networking -> Wireless, il doit y avoir un <M> devant Generic IEEE 802.11 Networking Stack
Remontez et allez dans Device Drivers -> Network device support (qui doit être activé aussi avec * devant) -> Wireless LAN, activez Wireless LAN (IEEE 802.11) et trouvez le module dont vous avez besoin.


- Si vous préférez une méthode plus graphique pour choisir les options du noyau, installez libqt3-mt-dev :
# aptitude install libqt3-mt-dev


Et à la place de make menuconfig, faites :
$ make xconfig


Vous pourrez utiliser la souris et avoir des explications sur les options choisies.

Mes connaissances en compilation de noyau s'arrêtant là pour l'instant, je ne peux guère vous donner plus de conseils. Mais c'est intéressant de creuser la question afin de pouvoir se faire un noyau sur mesure. Je vous rappelle que sur la page Compiler un noyau 2.6RT de LinuxMAO, il y a de nombreux conseils pour optimiser votre noyau. Voir également : Tuto Compiler un noyau Temps-Réel.

Sinon vous trouverez des informations utiles sur ces différentes pages :


Juste une dernière chose, il semble que pour pouvoir installer les drivers propriétaires nvidia par la suite, il faille désactiver Virtualization dans le menu principal ainsi que Paravirtualized guest support dans la section Processor type and features.


- Enfin la compilation en elle même qui va durer un petit moment. Cela dépend de votre processeur en fait.
$ make-kpkg clean
$ time fakeroot make-kpkg --initrd --revision youki1 kernel_image kernel_headers


Pour l'option --revision vous mettez ce que vous voulez bien sur. Mais il faudra qu'il contienne un nombre, par exemple --revision batman6 si c'est la 6e version de ce noyau que vous compilez. Cette option est de toutes façons, facultative.


Si vous utilisez un multi-core, éditez le fichier /etc/kernel-pkg.conf pour y ajouter la ligne suivante :
CONCURRENCY_LEVEL=nombre de processeurs a utiliser



Si tout se passe bien à la fin de la compilation, vous allez vous retrouver avec un paquet .deb linux-image et un paquet .deb linux-headers dans le répertoire au dessus de celui où vous êtes. Il n'y a plus qu'à les installer.

$ su
# cd ..
# dpkg -i linux-image-2.6.31.12-rt20_youki1_amd64.deb linux-headers-2.6.31.12-rt20_youki1_amd64.deb


Il ne vous reste plus qu'à redémarrer pour tester votre nouveau noyau.




Pour effectuer la compilation à partir des sources d'un noyau patché Debian.


Le seul problème est qu'il vous faudra vous assurez qu'un patch RT est compatible avec les sources du noyau Debian que vous souhaitez utiliser.

Pour voir les sources disponibles dans votre sources.list tapez aptitude search linux-source. Par exemple chez moi (dépôts Debian et Pengutronix dans mon sources.list) :

Cliquez ici pour dérouler
$ aptitude search linux-source
v   linux-source                 -
p   linux-source-2.6             - Linux kernel source for Linux 2.6 (meta-package)
v   linux-source-2.6-rt          -
p   linux-source-2.6.26          - Linux kernel source for version 2.6.26 with Debian patches
p   linux-source-2.6.29-rt1      - Linux kernel source for version 2.6.29-rt1 with Debian patches
p   linux-source-2.6.29-rt2      - Linux kernel source for version 2.6.29-rt2 with Debian patches
p   linux-source-2.6.29-rt3      - Linux kernel source for version 2.6.29-rt3 with Debian patches
p   linux-source-2.6.29.1-rt4    - Linux kernel source for version 2.6.29.1-rt4 with Debian patches
p   linux-source-2.6.29.1-rt5    - Linux kernel source for version 2.6.29.1-rt5 with Debian patches
p   linux-source-2.6.29.1-rt6    - Linux kernel source for version 2.6.29.1-rt6 with Debian patches
p   linux-source-2.6.29.1-rt7    - Linux kernel source for version 2.6.29.1-rt7 with Debian patches
p   linux-source-2.6.29.1-rt8    - Linux kernel source for version 2.6.29.1-rt8 with Debian patches
p   linux-source-2.6.29.1-rt9    - Linux kernel source for version 2.6.29.1-rt9 with Debian patches
p   linux-source-2.6.29.4-rt18   - Linux kernel source for version 2.6.29.4-rt18 with Debian patches
p   linux-source-2.6.29.4-rt19   - Linux kernel source for version 2.6.29.4-rt19 with Debian patches
p   linux-source-2.6.29.5-rt20   - Linux kernel source for version 2.6.29.5-rt20 with Debian patches
p   linux-source-2.6.29.5-rt21   - Linux kernel source for version 2.6.29.5-rt21 with Debian patches
p   linux-source-2.6.29.5-rt22   - Linux kernel source for version 2.6.29.5-rt22 with Debian patches
p   linux-source-2.6.29.6-rt23   - Linux kernel source for version 2.6.29.6-rt23 with Debian patches
p   linux-source-2.6.29.6-rt24   - Linux kernel source for version 2.6.29.6-rt24 with Debian patches
p   linux-source-2.6.30          - Linux kernel source for version 2.6.30 with Debian patches
p   linux-source-2.6.31          - Linux kernel source for version 2.6.31 with Debian patches
p   linux-source-2.6.31-rt10     - Linux kernel source for version 2.6.31-rt10 with Debian patches
p   linux-source-2.6.31-rt11     - Linux kernel source for version 2.6.31-rt11 with Debian patches
p   linux-source-2.6.31.1-rt12   - Linux kernel source for version 2.6.31.1-rt12 with Debian patches
p   linux-source-2.6.31.12-rt20  - Linux kernel source for version 2.6.31.12-rt20 with Debian patches
p   linux-source-2.6.31.12-rt21  - Linux kernel source for version 2.6.31.12-rt21 with Debian patches
p   linux-source-2.6.31.2-rt13   - Linux kernel source for version 2.6.31.2-rt13 with Debian patches
p   linux-source-2.6.31.4-rt14   - Linux kernel source for version 2.6.31.4-rt14 with Debian patches
p   linux-source-2.6.31.4-rt15   - Linux kernel source for version 2.6.31.4-rt15 with Debian patches
p   linux-source-2.6.31.5-rt18   - Linux kernel source for version 2.6.31.5-rt18 with Debian patches
p   linux-source-2.6.31.6-rt19   - Linux kernel source for version 2.6.31.6-rt19 with Debian patches
p   linux-source-2.6.32          - Linux kernel source for version 2.6.32 with Debian patches
p   linux-source-2.6.33          - Linux kernel source for version 2.6.33 with Debian patches
p   linux-source-2.6.33-rt3      - Linux kernel source for version 2.6.33-rt3 with Debian patches
p   linux-source-2.6.33-rt4      - Linux kernel source for version 2.6.33-rt4 with Debian patches
p   linux-source-2.6.33-rt5      - Linux kernel source for version 2.6.33-rt5 with Debian patches
p   linux-source-2.6.33.3-rt18   - Linux kernel source for version 2.6.33.3-rt18 with Debian patches
p   linux-source-2.6.33.3-rt19   - Linux kernel source for version 2.6.33.3-rt19 with Debian patches
p   linux-source-2.6.33.4-rt20   - Linux kernel source for version 2.6.33.4-rt20 with Debian patches
p   linux-source-2.6.33.4-rt21   - Linux kernel source for version 2.6.33.4-rt21 with Debian patches
p   linux-source-2.6.33.5-rt22   - Linux kernel source for version 2.6.33.5-rt22 with Debian patches
p   linux-source-2.6.33.5-rt23   - Linux kernel source for version 2.6.33.5-rt23 with Debian patches
p   linux-source-2.6.33.5-rt24   - Linux kernel source for version 2.6.33.5-rt24 with Debian patches
p   linux-source-2.6.33.5-rt25   - Linux kernel source for version 2.6.33.5-rt25 with Debian patches
p   linux-source-2.6.33.6-rt26   - Linux kernel source for version 2.6.33.6-rt26 with Debian patches
p   linux-source-2.6.33.6-rt27   - Linux kernel source for version 2.6.33.6-rt27 with Debian patches
p   linux-source-2.6.33.6-rt28   - Linux kernel source for version 2.6.33.6-rt28 with Debian patches
p   linux-source-2.6.33.7-rt29   - Linux kernel source for version 2.6.33.7-rt29 with Debian patches
i   linux-source-2.6.35          - Linux kernel source for version 2.6.35 with Debian patches




Pour installer les sources voulues # aptitude install le_nom_du_paquet_sources_voulues, par exemple # aptitude install linux-source-2.6.35.

Ces sources seront téléchargées dans /usr/src/, vous pouvez copier ces sources ailleurs pour les compiler. $ cp /usr/src/linux-source-2.6.35.tar.bz2 /home/votre_utilisateur/ par exemple. Vous n'avez plus qu'à appliquer la méthode de compilation expliquée dans le paragraphe précédent. Le résultat sera peut-être plus aléatoire, il faudra peut-être essayer différents patchs.

Vous pouvez aussi vous contenter de re-compiler un noyau déjà patché RT, comme les sources du noyau pengutronix par exemple. Dans ce cas, pas besoin d'appliquer le patch RT, il l'est déjà.




5. Liens


Vous trouverez aussi un tutoriel pour créer un Live CD/USB Debian optimisé MAO sur la page live-build.

Voir aussi ce Wiki en allemand dédié à la MAO sous debian : http://de.musix-wiki.org .

Voir également : debian 8.6 jessie MAO.


Documentation [Afficher / Cacher]

Faire un don
[Afficher / Cacher]

Connexion
[Afficher / Cacher]



Mégaphone [Afficher / Cacher]

olinuxx, 11:48, ven. 15 mars 2024: Bonjour et bienvenue à Jerry cool
calixtus06, 18:03, mer. 13 mars 2024: Bonjour et bienvenue à tanguero :-)
olinuxx, 11:01, dim. 10 mars 2024: Bonjour et bienvenue à lolo cool
bda, 16:59, sam. 09 mars 2024: Chapeau pour l'édito. Vous êtes au top les gars :-)
allany, 07:20, jeu. 07 mars 2024: Ça ne fait jamais de mal, c'est l'éditorial ! [Lien]
olinuxx, 19:52, mer. 06 mars 2024: Bonjour et bienvenue à TrkNrk cool
calixtus06, 11:17, mar. 05 mars 2024: Bonjour et bienvenue à D752 :-)
calixtus06, 18:59, lun. 04 mars 2024: Bonjour et bienvenue à Hborsa et Adjudandouille :-)
olinuxx, 18:34, jeu. 29 Feb 2024: Bonjour et bienvenue à anto45500 cool
jujudusud, 23:38, mar. 27 Feb 2024: Venez participer à la joute numéro 17 : [Lien]
calixtus06, 18:36, jeu. 22 Feb 2024: Bonjour et bienvenue à nikartri et rckloar :-)
calixtus06, 10:15, mer. 14 Feb 2024: Bonjour et bienvenue à smonff, Alphascorpii, tadumtss et letoII :-)