# [partitionnement]quelques questions

## Kevin57

Bonjour,

Je sais qu'il existe énormément de sujets là-dessus, mais j'ai juste une petite question parce que, en regardant mon partitionnement, je me suis rendu compte qu'il est un peu idiot, et j'ai aussi été surpris par quelques trucs. Pour commencer, voici mon partitionnement :

```
Kevin ~ # df -h

Sys. de fich.         Tail. Occ. Disp. %Occ. Monté sur

rootfs                 63G   13G   47G  21% /

/dev/root              63G   13G   47G  21% /

rc-svcdir             1,0M   92K  932K   9% /lib/rc/init.d

udev                   10M  288K  9,8M   3% /dev

none                  503M     0  503M   0% /dev/shm

/dev/sda4             158G   52G   99G  35% /home

```

Auquel on peut ajouter une partition d'environ 10 GO (remplie à 7GO) pour le / de Fedora.

Donc déjà j'ai une question : je vois que mon système Gentoo prend 13 GO sur le disque dur alors que Fedora (tous les deux KDE4) ne prend "que" 7GO, ce qui me surprend car je croyais que Gentoo était plus léger. Comment cela peut-il s'expliquer?

Et ensuite, je ne comprends pas à quoi correspondent les entrées "rc-svcdir", "udev" et "none", qui ne sont apparemment pas de "vraies" partitions... De même pour rootfs et /dev/root, c'est la même partition, non? Alors pourquoi apparait-elle en double?

Enfin, peut-être que je devrais revoir mon partitionnement (beaucoup de place perdue dans /), mais y a-t-il un gain (vitesse, etc) à séparer /boot ou encore portage de la partition /? Et aussi, tout est en ext3, est-ce que le passage à un autre système de fichier pourrait m'apporter quelque chose? Je pense notamment à un moyen d'accélérer la compilation, parce que mon processeur rame un peu (Core 2 Duo 2.00GHz, 800Mhz FSB, 2MB cache et RAM 1GB Dual Channel DDR2 667MHz [2x512MB]). Donc s'il y a un gain réel à tout reformater, il est possible que je le fasse un de ces jours, si par contre le gain est minime ou nul, je ne vais pas m'embêter pour l'instant, ce n'est pas la place qui manque!

Je vous remercie par avance de vos explications

Kevin

----------

## xaviermiller

Gentoo plus léger ?

En exécution, peut-être...

Mais que donne 

```
du -hs /usr/portage /var/db
```

Tu auras là la réponse  :Wink: 

EDIT: pour un usage domestique : /home à part, et tout le reste dans /

Peut-être un petit /boot en ext2, au cas où tu as choisi un filesystem non reconnu par Grub (btrfs par exemple)

----------

## Kevin57

En effet, c'est portage qui prend déjà pas mal de place :

```
Kevin ~ # du -hs /usr/portage/ /var/db/

5,4G    /usr/portage/

108M    /var/db/
```

Mais pourquoi en prend-il autant?

Et à quoi correspond /var/db?

 *Quote:*   

> Gentoo plus léger ? 
> 
> En exécution, peut-être...

 

Comment ça?

 *Quote:*   

> EDIT: pour un usage domestique : /home à part, et tout le reste dans / 
> 
> Peut-être un petit /boot en ext2, au cas où tu as choisi un filesystem non reconnu par Grub (btrfs par exemple)

 

Oui c'est une utilisation dommestique, donc je pense que je vais garder ce partitionnement tant que je n'ai pas besoin de plus de place, on verra bien après.

----------

## xaviermiller

Gentoo est une distribution à partir de sources, /usr/portage/ sans distfiles prend environ 500 Mo, et distfiles prend 1,2, 3 GO.

Tu peux nettoyer régulièrement distfiles en faisant 

```
eclean-dist -dp
```

 (enlève le "p" pour effectuer réellement l'opération)

----------

## Kevin57

OK merci, à quoi correspondent ces distfiles?

----------

## xaviermiller

ce sont les sources téléchargées pour compiler Gentoo.

----------

## Kevin57

OK c'est fait, merci. 2.6G tout de même!

Edit : est-ce que tu peux expliquer ce que tu voulais dire quand tu répondais à ma question sur la légèreté?

Edit 2 :  *Quote:*   

> Gentoo est une distribution à partir de sources, /usr/portage/ sans distfiles prend environ 500 Mo, et distfiles prend 1,2, 3 GO.

 

Pourtant même après avoir enlevé les distfiles, il me reste 2.8G pour /usr/portage.

Mais en fait, comment savoir ce qui prend autant de place dans mon /?

----------

## xaviermiller

L'argument "Gentoo est léger" ne veut rien dire... ça pèse combien, un byte ?  :Wink: 

Certains disent que Gentoo serait plus rapide à cause des USE et CFLAGS

En fait, Gentoo te permet de choisir d'activer ou désactiver certaines fonctionnalités, ce qui te permet d'avoir un système plus proche de ce que tu veux. En désactivant tout ce que tu ne veux pas, en configurant tout proprement, en choisissant le bon filesystem, paramètres de noyau, ton système peut sembler plus réactif, donc "plus léger".

Tu peux aussi mettre "USE=*" et là... tu voudras acheter un Cray  :Razz: 

----------

## Kevin57

OK merci pour les explications! 

Bon, sinon, j'ai regardé un peu quels dossiers prennent de la place et le plus gros est /usr (6.7G), sachant que /usr/portage a déjà 2.8G, et /var qui fait 2.5G, le reste se compte en M, voire en K, mais que contient /usr?

----------

## kwenspc

 *Kevin57 wrote:*   

> mais que contient /usr?

 

La plupart des applis autres que systèmes donc un sacré paquet...  :Wink: 

----------

## Kevin57

Ah ok, ce qui explique donc sa taille importante!

Et une dernière question, si je reformatais mon / en autre chose que ext3, est-ce que j'aurais un vrai gain de vitesse ou est-ce que ça ne changerait rien?

Edit : et si /usr contient toutes les application, sauf les systèmes, où sont les applications système? Dans /bin et /sbin?

----------

## Leander256

Il y aussi les sources des noyaux dans /usr/src et pour peu que tu mettes à jour régulièrement ton système, tu dois en avoir une tripotée.

Sinon un autre avantage d'un /boot séparé c'est d'avoir tous les noyaux de toutes les distribs à un seul endroit. Ce qui n'est pas forcément pratique avec celles qui éditent automatiquement le grub.conf.

Les performances des systèmes de fichiers étant de grands sujets trollesques je ne me risquerai pas à dire que "x est meilleur que y". Selon l'usage que tu en fais, selon la taille de la partition et celle des fichiers, selon les options de montage, ça peut beaucoup varier. En plus de ça les systèmes de fichier plus rapides consomment généralement plus de ressources (CPU, RAM), mais pas toujours, sinon ce serait trop simple. Y a-t-il une opération particulière que tu trouves lente avec ext3?

----------

## Kevin57

J'ai bien pensé au /usr/src mais je le nettoie régulièrement, il ne me restait que 400M de deux vieux noyaux + 600M pour l'actuel. Mais c'est vrai que comme je mets mon système souvent à jour (tous les jours), ces fichiers ont tendance à s'accumuler, malgré le --depclean qui désinstalle les anciennes sources.

Ce que je trouve lent (mais je pense que ça vient plutôt de ma RAM assez limitée) sous Gentoo en ext3, c'est la compilation (ce qui n'est pas si grave vu que ça ne bloque pas le systène). Mais je me renseignais parce que j'ai aussi un netbook avec Arch, aussi en ext3, qui a peu de RAM et qui est très lent à ouvrir des softs comme OpenOffice, ou simplement thunar (en fait il est lent à tout faire, seule la console est assez réactive!), donc je me demandais si le système de fichiers pouvait jouer.

----------

## xaviermiller

Salut,

Un emerge --depclean n'efface pas les fichiers compilés (.o & co). Il vaut mieux effacer à la main (rm -rf) ce qui est inutile dans /usr/src et /lib/modules

Ton netbook a un disque dur ou de la SSD ? Si c'est de la SSD, passe-la en EXT2, j'ai vu une énorme différence en passant de EXT4 à EXT2 !

----------

## Kevin57

Mais comment je sais ce qui est inutile?  :Confused:  Pour /usr/rsc je sais, je supprime régulièrement tous les anciens noyaux, mais /lib/modules je ne connais pas...

Pour le netbook, je pense qu'il s'agit d'un DD, dans le détail c'est écrit "Disque dur 1,8" P-ATA 20 Go, mais je pense que la lenteur est due à deux choses : Processeur AMD Geode LX 800 et 512 Mo de RAM DDR.

----------

## xaviermiller

Oui, c'est un ARM... pas rapide, mais suffisant pour surfer  :Wink: 

Pour les modules, tu enlèves toutes les anciennes versions (celles qui ne sont pas dans "uname -k")

----------

## Kevin57

Ah oui, je n'avais jamais vu que dans /lib/modules on retrouve le détail de tous les anciens kernels. Mon /lib/modules est composé de 

```
Kevin ~ # du -hs /lib/modules/*

7,9M    /lib/modules/2.6.30-gentoo-r5

7,9M    /lib/modules/2.6.30-gentoo-r6

11M     /lib/modules/2.6.31-gentoo

11M     /lib/modules/2.6.31-gentoo-r1

11M     /lib/modules/2.6.31-gentoo-r2

11M     /lib/modules/2.6.31-gentoo-r3
```

Donc je peux supprimer tout ce qui correspond aux anciens kernels? Enfin ça reste des petits dossiers tout de même mais je vais m'en occuper.

PS : uname -k ne marche pas (option invalide).

----------

## kwenspc

 *XavierMiller wrote:*   

> Oui, c'est un ARM... pas rapide, mais suffisant pour surfer 

 

le geode un arm? ça me ferait mal. http://fr.wikipedia.org/wiki/Geode

et oui c'est pas puissant... un ARM à la place il poutrerait!

----------

## xaviermiller

Au temps pour moi... j'ai appris quelque chose.

Et en effet, M$ a pas mal manoeuvré autour de OLPC, basé sur Géode...

----------

## Kevin57

En fouillant un peu, je viens de me rendre compte que mon /var/tmp fait 2GO à lui tout seul, principalement /var/tmp/ccache, regardez vous-même :

```
Kevin ~ # du -hs /var/tmp/*

4,0K    /var/tmp/binpkgs

1,9G    /var/tmp/ccache

484K    /var/tmp/crash20090926131150.txt

624K    /var/tmp/crash20091014222844.txt

11M     /var/tmp/kdecache-kevin_gentoo

3,8M    /var/tmp/kdecache-root

142M    /var/tmp/portage
```

Et le détail de ccache :

```
evin ~ # du -hs /var/tmp/ccache/*

105M    /var/tmp/ccache/0         

123M    /var/tmp/ccache/1         

116M    /var/tmp/ccache/2         

117M    /var/tmp/ccache/3         

104M    /var/tmp/ccache/4         

117M    /var/tmp/ccache/5         

117M    /var/tmp/ccache/6         

125M    /var/tmp/ccache/7         

109M    /var/tmp/ccache/8         

117M    /var/tmp/ccache/9         

128M    /var/tmp/ccache/a         

122M    /var/tmp/ccache/b         

126M    /var/tmp/ccache/c         

76K     /var/tmp/ccache/conftest.tmp.tux.5296.i

129M    /var/tmp/ccache/d                      

1,7M    /var/tmp/ccache/dbusexport.tmp.Kevin.21075.ii

1,7M    /var/tmp/ccache/dbusmodeli.tmp.Kevin.21066.ii

1,5M    /var/tmp/ccache/dbusstatem.tmp.Kevin.21082.ii

532K    /var/tmp/ccache/dynamic-de.tmp.tux.23399.i   

612K    /var/tmp/ccache/dynany.tmp.tux.23386.i       

121M    /var/tmp/ccache/e                            

104M    /var/tmp/ccache/f                            

4,0M    /var/tmp/ccache/fmshimp.tmp.Kevin.14121.ii   

2,8M    /var/tmp/ccache/msashape.tmp.Kevin.14183.ii  

632K    /var/tmp/ccache/nfsubs.tmp.Kevin.30176.ii

480K    /var/tmp/ccache/numsys.tmp.Kevin.30185.ii

1,1M    /var/tmp/ccache/paragrph.tmp.Kevin.14196.ii

656K    /var/tmp/ccache/rbnf.tmp.Kevin.30182.ii

4,0K    /var/tmp/ccache/stats

0       /var/tmp/ccache/tmp.cpp_stderr.Kevin.30176

4,0K    /var/tmp/ccache/tmp.hash.Kevin.13159.gcno

4,0K    /var/tmp/ccache/tmp.hash.Kevin.25609.gcno

4,0K    /var/tmp/ccache/tmp.hash.Kevin.2706.gcno

4,0K    /var/tmp/ccache/tmp.hash.Kevin.32496.gcno

4,0K    /var/tmp/ccache/tmp.hash.tux.11771.gcno

4,0K    /var/tmp/ccache/tmp.hash.tux.18487.gcno

4,0K    /var/tmp/ccache/tmp.hash.tux.21549.gcno

4,0K    /var/tmp/ccache/tmp.hash.tux.29877.gcno

4,0K    /var/tmp/ccache/tmp.hash.tux.31140.gcno

0       /var/tmp/ccache/tmp.stderr.Kevin.30176

0       /var/tmp/ccache/tmp.stderr.Kevin.30182

0       /var/tmp/ccache/tmp.stdout.Kevin.30176

0       /var/tmp/ccache/tmp.stdout.Kevin.30182
```

A quoi servent ces fichiers? Théoriquement, ils doivent venir de ccache, mais quand je fais ccache -s, j'ai ccache directory : /root/.ccache. Donc je ne vois pas bien d'où vient ce /var/tmp/ccache...

Merci d'avance pour vos lumières

Kevin57

Edit : je viens de voir dans la doc (pourtant j'avais lu avant de poster) l'explication pour /var/tmp/ccache vs. $home/.ccache, mais est-ce que je peux supprimer ces données? A quoi servent-elles exactement, j'ai du mal à comprendre...  :Confused: 

----------

## kwenspc

Vouloir Gentoo ET qu'il soit léger sur le disque c'est un peu antinomique. Pour pouvoir installer des applis gentoo a besoin d'un set conséquent d'outil, d'avoir des libs au format .a/.la statiques etc... Gentoo prendra toujours beaucoup plus de place qu'une autre distros, à applications installées égales bien entendue. 

Pour ton ccache ça c'est optionnel, il te suffit de l'inhiber et de virer le /var/tmp/ccache

----------

## Kevin57

Merci pour ces explications. Je ne cherche pas forcément à rendre Gentoo léger, juste à comprendre pourquoi il prend tant de place (donc merci pour l'explication!) et à supprimer ce qui ne sert à rien!

----------

## Biloute

Pour gagner de la place je fais carrément

```
# rm /usr/portage/distfiles/*
```

Parce que à partir du moment où je vais compiler une seule fois l'ébuild et que j'ai toujours une connexion internet sous la main (si je l'efface, je peux toujours la retélécharger en cas de pepin) je n'ai plus besoin des sources.

Pour les kernel c'est que une fois ta mise à jour terminé et vérifié, tu dois faire un

```
emerge -P gentoo-sources
```

Ca va t'effacer les bases de tes vieux kernel mais ils seront toujours là et opérationnels (ca empeche juste la manip du make menuconfig). Pour qu'ils ne soient plus opérationnels et supprimés il faut un

```
rm -r /usr/src/linux-2.6.29-gentoo-r5 && rm -r /lib/modules/2.6.29-gentoo-r5
```

Et même si tu veux pousser le vice jusqu'au bout tu peux faire un

```
emerge -C gentoo-sources
```

 tu vas gagner 500Mo, le kernel que tu as compilé sera toujours opérationnel avec ses modules.

Pour ton partionnement le plus important est d'avoir /boot /swap et / au début du disque puisque plus tu t'éloigne du début et plus l'accés est lent.

Il va falloir penser aussi à changer de fs car ext3 arrive en fin de vie depuis qu'il est remplacé par ext4.

Pour gagner de la place tu peux aussi exlure des catégories comme par exemples /usr/portage/games-* et /usr/portage/sci-* en plus ça raccourci la durée des rsync à voir ici

Pour ccache, quand on compile, il enregistre les paramètres de compilation dans /tmp/ comme ça si tu recompile un paquet en changant un use alors il va reprendre l'ancienne compilation au lieu de recommancer une compilation entière.

/var/db est un fichier consulté par portage, ça liste tous les paquets installés.

----------

