URL: https://linuxfr.org/users/ecolbus/journaux/annonce-manux-0-0-4 Title: Annonce : Manux 0.0.4 Authors: Emmanuel Colbus Date: 2014年02月21日T18:33:08+01:00 License: CC By-SA Tags: manux_os, système_d'exploitation, sécurité, pas_libre, licence, juridique et debian Score: 52 Bonjour tout le monde! Je voudrais profiter de ce journal pour vous annoncer que mon projet personnel, [Manux](http://www.manux.info), vient de passer en version 0.0.4. Pour rappel, Manux est un petit système d'exploitation nativement binairement compatible avec Linux, mais conçu pour encaisser les exploits jour zéro. Son noyau a été entièrement écrit par mes soins, sans reprendre la moindre ligne de Linux (ou de qui que ce soit d'autre), et tant son architecture noyau que son architecture de l'espace utilisateur sont originales. Pour l'instant, il reste très limité (mode texte seulement, toutes les sécurités ne sont pas en place, pas de pile réseau, et pas de gestion de l'UEFI), mais il fonctionne; d'ailleurs, je tape ce message dessus (mais je le posterai depuis Linux). Les principaux changements, depuis la version 0.0.1, sont : - diverses améliorations dans la gestion des disques durs, en matière de prise en charge comme de débit; - la gestion du pavé numérique du clavier; - l'amélioration de l'affichage à l'écran; - la traduction de la totalité du code source en anglais (bon, ça, c'était assez long); - la création de deux nouvelles cartes du clavier, une anglaise et une allemande. Cela dit, comme je n'ai pas de clavier de ce type, je ne les ai testées que de façon très superficielle; - diverses corrections de bogues, à droite et à gauche (et devant et derrière et ailleurs et... Oui, bon, d'accord, il y en avait un certain nombre, et il en reste certainement encore.) Très peu de nouvelles fonctionnalités sont disponibles; jusqu'à présent, j'ai préféré me concentrer sur la traduction et l'amélioration de l'existant. Côté stabilité, je trouve que c'est plutôt réussi : pour donner une idée, sur mon autre machine, j'ai une Debian stable, et sur les derniers mois, si j'excepte les plantages dus directement au développement du système (du genre un patch_kernel mal inspiré), j'ai eu nettement plus de plantages avec la Debian qu'avec Manux. (Bien sûr, la majorité des plantages de la Debian étaient dus à des bogues dans des fonctionnalités que je n'ai pas... Mais le fait demeure.) Pour ceux que cela intéresse, le code source est disponible à l'adresse , et l'installeur à l'adresse . Pour l'essayer, détarez l'installeur, puis, en root, tapez : ```text root@linux:# cd installer root@linux:# ./installer --device /dev/sdaX --username XXX --lang [--hostname XXX] ``` La langue n'est pas entièrement implémentée; pour l'instant, elle ne sélectionne que la carte du clavier. En ce qui concerne la partition /dev/sdaX, donnez-lui simplement une partition (LIBRE!) de quelques Go du disque dur (4Go suffisent amplement). Ensuite, si c'est votre première installation de Manux, il vous faut créer une entrée pour grub, comme précisé dans le document ./docs/fr/grub2 (ou grub1) de l'installeur. Cela fait, éteignez électriquement votre ordinateur (oui, éteignez, pas de reboot), puis redémarrez-le, choisissez "Manux" dans le menu de grub, puis laissez-le faire... En effet, contrairement aux autres systèmes d'exploitation actuels, à l'installation, Manux a besoin d'un véritable bootstrap. Si vous êtes curieux, vous pouvez regarder le script qui s'en charge, à savoir /packages/core/0.0.1/bootstrap/0.0.1/main/meta/install, mais si vous voulez le modifier, je vous préviens qu'un script shell qui s'exécute dans un système d'exploitation non opérationnel, ce n'est pas exactement la chose la plus triviale qui soit. Selon les machines, cette phase peut durer de 5 à 20 minutes environ; cela dépend avant tout de la vitesse du disque dur. Cela fait, vous devriez arriver à un écran qui ressemble à ça : ```text orion tty1 login: ``` Tapez votre login, choisissez un mot de passe, et voilà! Ensuite, si vous voulez accéder à votre homedir linux, et que la partition correspondante est en ext2 (y compris ext3, qui n'est techniquement qu'une variante d'ext2), tapez par exemple : ```text ecolbus@orion:[]$ mkdir mnt10 ecolbus@orion:[]$ mknod hd0,10 b 0 0 ``` (en supposant que votre /home soit sur la partition que Linux appelle /dev/sda11). Ext2 est malheureusement le seul système de fichiers que Manux sache actuellement monter. ```text ecolbus@orion:[]$ admin ecolbus@orion:[]# smount -t ext2 hd0,10 mnt10 ecolbus@orion:[]# unadmin ecolbus@orion:[]$ ``` Les commandes "admin" et "unadmin" changent votre PATH et votre prompteur, mais c'est tout. Elles ne servent qu'à éviter des fautes de frappe dangereuses. Quant à smount, il s'agit d'une petite adaptation du "mount" Linux. ```text ecolbus@orion:[]$ cd mnt10/home/ecolbus ecolbus@orion:[]$ ls ``` Ici, vous verrez le contenu de votre homedir Linux. Si vous avez aussi téléchargé et détaré les sources de Manux, vous pouvez y faire un tour : ```text ecolbus@orion:[]$ cd manux ecolbus@orion:[]$ ./make # [ Autorecompilation du noyau et des principaux binaires... ] ecolbus@orion:[]$ admin ecolbus@orion:[]# ./scripts/update_kernel -v # [Mise à jour dynamique du noyau] ecolbus@orion:[]# unadmin ecolbus@orion:[]$ vim ./kernel/ext2/main.c ecolbus@orion:[]$ ./make ext2 # [Recompilation d'ext2...] # Juste pour la démonstration : ephemodules/misc/hw est un module # éphémère du noyau qui affiche simplement "Hello, World!" à chaque # fois qu'on fait un appel-système test_sys(2) : ecolbus@orion:[]$ ./make ephemodules/misc/hw ecolbus@orion:[]$ admin ecolbus@orion:[]# patch_kernel ext2 ecolbus@orion:[]# patch_kernel ephemodules/misc/hw ecolbus@orion:[]# test_sys Hello World! 0 # A la fin, pour éteindre la machine : ecolbus@orion:~$ admin ecolbus@orion:~# exec init 0 ``` Et voilà! Si vous avez aussi envie d'installer les binaires du noyau que vous avez recompilés, vous avez plusieurs solutions : - Vous pouvez tricher un peu, et mettre des commandes /sbin/patch_kernel XXX dans votre .bash_login (bouh, pas très propre ça!); - Vous pouvez tricher plus finement, et copier vos binaires à la place de ceux situés dans /packages/core/0.0.1/a0/0.0.4/main/root/boot/ ; évidemment, là, gare à vous s'ils ne marchent pas! - Enfin, vous pouvez suivre la procédure complète : télécharger les sources globales (manux+std.tar.gz), aller dans manux+std/installer, faire un ./mkall, et ensuite, refaire une installation complète depuis Linux (utilisez simplement le programme manux+std/installer/installer au lieu du ./installer habituel). Mais, et pour répondre à une question qui m'a été posée à plusieurs reprises, non, il n'est pas possible de faire une installation manuelle d'après les sources comme avec Linux. En effet, le bootstrap est indispensable, sans quoi la quasi-totalité des binaires demeureront inutilisables; et faire ce bootstrap manuellement... Disons que, taper des commandes shell quasiment à l'aveugle, et alors que même les programmes de /bin et les fichiers de /dev ne sont pas encore disponibles, ça me semble aussi pénible que complexe, et ce pour un résultat assez inintéressant. Voilà! Si vous avez d'autres questions, n'hésitez pas! Emmanuel

AltStyle によって変換されたページ (->オリジナル) /