# [INITRAMFS] Installation système minimal Initramfs + busybox

## tuxisageek

Bonjour à tous,

Voilà mon problème: 

1) J'ai un client léger HP T 5720 (AMD Geode 1500 + 1 Go de Ram avec une Archlinux (awesome + chromium+ urxvt + vim + serveur web, enfin le minimum pour développer) sur une clé de 16 Go, cependant mon système rame car je suis toujours en attente sur les entrées/sorties (70 % dans la commande top). 

2) Pour remédier à ça j'ai cherché du côté des distribution ultra légère genre toutou linux etc, cependant elle ne me corresponde pas. Une qui est pas mal avec un cookbook est Slitaz.

3) J'ai pensé alors qu'étant ancien utilisateur de Gentoo, ça serai parfait pour construire un système minimal rapide et petit en taille pour le mettre dans l'Initramfs pour qu'il soit en RAM et ultra rapide avec un busybox.

4) J'ai téléchargé les paquets et commencé ma compilation.

5) J'ai commencé l'écriture d'un script à base de qdepends et equery en dephgraph et files pour obtenir les dépendances des paquets en fonction des usesflags sans arriver à des paquets de bases genre bash et tout ça puisque je serai sur busybox qui possède le minimum pour un shell. 

Ce script me permet de trouver les chemins des fichiers des paquets pour les copier dans une dossier qui sera la racine de l'initramfs.

Ma question est: pensez vous que je pourrai faire tenir un awesome avec chromium, urxvt, vim, mplayer, apache, mysql, php, phpmyadmin dans l'initramfs pour qu'elle fasse max 700 Mo ?

Connaissez vous d'autres outils plus pratique pour trouver les dépendances en fonction des usesflags (equery depgraph n'en tient pas compte) des paquets et leurs fichiers.

En faite mon idée serait de faire comme une Slitaz mais avec une Gentoo pour avoir un système robuste, rapide et avec les dépendances correctement gérés.

(L'idée d'utiliser un client léger comme système principal, c'est d'une part que ça consomme beaucoup moins, ça fait pas de bruit  :Smile: , ça prends pas de place)

Voilà j'espère avoir été clair et merci d'avance à tout ceux qui vont prendre la peine de lire mon petit post et d'essayer de m'aider   :Very Happy: Last edited by tuxisageek on Fri Jul 29, 2011 10:16 pm; edited 2 times in total

----------

## Akkara

Moved from Installing Gentoo to French.  Better chance of reply here.

----------

## xaviermiller

Bonjour,

Essaie de monter un système minimal en RAM, vu que tu as "pas mal" de RAM.

Un bon exemple : une clef de 256 MO avec SystemRescueCD chargé en RAM.

----------

## tuxisageek

Bonsoir, 

Tout d'abord merci d'avoir répondu aussi vite  :Smile: . 

Par système en ram tu parles de copier une racine de gentoo complète dans la ram ? 

C'est sûr que pour la maintenance et l'installation c'est plus facile mais j'ai peur que ça prenne trop de place et ça m'oblige à garder tous les outils de maintenance genre gcc, portage etc...

J'ai choisis Gentoo entre autre pour gagner de la place grâce à une utilisation fine des useflags. 

Il me semble aussi que les systèmes tel que SystemRescueCD sont des images compressées genre squashfs mais là aussi pour éviter de charger le système pour la décompression à chaque lecture de l'image, je préférerai avoir un initramfs comme ça il y a qu'une décompression au chargement du système.

J'avais également fait un essai sur ma tour fixe j'avais mis 6 Go de RAM et je copiais ma racine dans un système de fichiers en mémoire et je bootais dessus. Là il y a pas une si grande différence je trouve, le noyau Linux utilise très bien le cache du disque en générale donc qu'on lise en mémoire ou sur le disque ben c'est à peu près pareil.

Par contre sur mon client léger une clé usb c'est trop limite.

En faite il faudrait presque partir sur une mini système ou micro système genre de l'embarqué mais là aussi j'ai pas trouvé grand chose sur les projets Gentoo embedded/

----------

## xaviermiller

Salut,

Ton problème est lié aux I/O, et il faut les réduire au minimum. Ou hacker ta machine en remplaçant la carte-mémoire pourrie par un vrai disque dur (j'ai fait cette manipulation sur un Acer Aspire One).

Je ne pense pas que ce soit une bonne idée de compiler sur ta machine, je te conseille de générer des paquets binaires sur une autre machine, voire même un chroot, que tu prépares ensuite sur un squashfs, tel un livecd (il y a un article sur le wiki Gentoo).

PS: pourrais-tu aussi mettre ton titre en conformité avec les règles du forum francophone ? merci d'avance.

----------

## tuxisageek

Bonjour,

Je vais paraître bête mais je n'arrive pas à trouver les règles concernant les titres des threads pour le francophone. (J'ai regardé dans la FAQ etc mais pas trouvé).

Concernant la compilation, je l'a fais sur mon fixe (Core2Duo e7300) sinon je n'en finirai pas de compiler ^^ et puis le pauvre petit AMD Geode souffrirai.

En faite il y a une possibilité concernant le matériel, dans le HP T 5720 il y a une carte mémoire qui contient un XP embedded monté sur un port IDE de portable, j'ai également un disque dur qui irai bien dessus mais pas la nappe qui est spécifique aux ports IDE de portable. C'est à essayer puisque j'aurai peut être plus de performance grâce au cache du disque et du noyau (même si le disque est en 5400 tr/min).

En faite je penses que ma clé a beaucoup de mal à lire et écrire en même temps et que ça me casse complètement le débit, des fois je suis figé pendant un moment.

Concernant mon idée de initramfs, je vais continuer mon script, essayer aussi de faire un squashfs pour voir la différence de performance et je posterai mon script même si il est mal écrit, ça pourra toujours servir à quelqu'un. Au moins l'idée pourra être utile.

Voilà je vais faire des essais et je vous tiens au courant.

----------

## xaviermiller

Salut,

Inspire-toi de ceci http://en.gentoo-wiki.com/wiki/Build_Your_Own_LiveCD_or_LiveDVD

C'est pour un LiveCD, mais la manipulation est à 90% identique à ce que tu veux faire.

----------

## tuxisageek

Oui j'avais déjà vu ce sujet un coup, c'est super complet et hyper intéressant, je vais me pencher dessus ^^.

Merci bien en attendant, je donnerai bientôt des nouvelles.

Bonne journée   :Smile: 

----------

## guilc

Rien a ajouter à l'objectif de réduire les I/O, juste : peux-tu mettre ton titre du topic en conformité avec les conventions de notre forum s'il te plait ? Merci ;=

----------

## tuxisageek

Bonsoir,

Oui le but en gros c'est de réduire les temps d'accès. Je fais des essais en ce moment même.

Je viens de modifier le titre, j'espère que cette fois ci il est valide  :Smile:  et qu'il décrit précisément mon problème, encore merci à tous pour vos idées ^^.

----------

## barul

Ton titre est en effet valide, tu n'as plus rien à craindre des deux méchants !  :Smile: 

----------

