# [kernel] options de démarrage (démarrer dans un "chroot")

## math_roc

Bonjour, 

je suis entrain d'installer gentoo sur mon pc, j'ai déja linux installé, du coup j'utilise pas le livecd. Je suis donc entrain de l'installer en suivant la doc dans /mnt/gentoo, et ce coup çi, je fait jou-jou avec les ldflag, cflag, et je me fait un noyau a la main en enlevant pas mal de truc pr le rendre plus petit.

et ce que je voudrai faire, c dire a grub de démarrer avec comme root /mnt/gentoo (de /dev/hda2), pour l'instant, dans mon grub.conf, j'ai root=/dev/hda2, comment il faut que je modifie ça pr booter dans /mnt/gentoo? au lieu de la racine, histoire de pouvoir tester si cette install marche avant de virer tout le reste  :Wink: 

merci d'avance.

(j'espère avoir été clair)

----------

## Enlight

ça doit pas être compliqué, tu fais un petit script qui sera /chrootrc par exemple, de dans tu mets un truc genre :

```
chroot /mnt/gentoo

exec /sbin/init
```

un coup de chmod 744 /chrootrc, 

puis dans le grub.conf tu dupliques l'entrée de ton kernel actuel et sur la ligne kernel tu ajoutes un init=/chrootrc, ça devrait suffire.

edit : sinon tu peux aussi regarder du côté de user mode linux.

----------

## geekounet

 *Enlight wrote:*   

> ça doit pas être compliqué, tu fais un petit script qui sera /chrootrc par exemple, de dans tu mets un truc genre :
> 
> ```
> chroot /mnt/gentoo
> 
> ...

 

le chroot démarre un shell dans /mnt/gentoo, donc le exec /sbin/init ne s'executera que quand le chroot terminera. je dirai plutôt exec /bin/chroot /mnt/gentoo /sbin/init  :Wink: 

----------

## math_roc

chuper! dès que emerge world -uDNe est fini (-_-) je test ça ^^

----------

## Enlight

 *pierreg wrote:*   

>  *Enlight wrote:*   ça doit pas être compliqué, tu fais un petit script qui sera /chrootrc par exemple, de dans tu mets un truc genre :
> 
> ```
> chroot /mnt/gentoo
> 
> ...

 

C'est qu'il a raison le morveux  :Mr. Green:  (je me permets parceque je suis plus ancien, hein!   :Wink:  ) pis c'est toujours mieux que des chroot /mnt/gentoo << EOF, par contre faut qu'il réfléchisse bien à sont fstab étou...

----------

## geekounet

 *Enlight wrote:*   

>  *pierreg wrote:*    *Enlight wrote:*   ça doit pas être compliqué, tu fais un petit script qui sera /chrootrc par exemple, de dans tu mets un truc genre :
> 
> ```
> chroot /mnt/gentoo
> 
> ...

 

T'inquiète, je le prend bien ^^

----------

## Enlight

 *pierreg wrote:*   

> 
> 
> T'inquiète, je le prend bien ^^

 

Ouais ouais je parie que le traceroute est déjà lancé et la page mappy ouverte ^_^

----------

## geekounet

 *Enlight wrote:*   

>  *pierreg wrote:*   
> 
> T'inquiète, je le prend bien ^^ 
> 
> Ouais ouais je parie que le traceroute est déjà lancé et la page mappy ouverte ^_^

 

MDR  :Mr. Green: 

Vient sur Freenode que j'ai ton ip et demain j'arrive chez toi ^^

/me prépare sa batte ...

nanmého il va voir qui 'est le morveux !  :Laughing: 

----------

## math_roc

 *Enlight wrote:*   

> ...bla bla... bla... par contre faut qu'il réfléchisse bien à sont fstab étou...

 

c'est à dire? puisque c'est un chroot? il faut que je mette '/mnt/gentoo/' de partout?

zenfin, puisque je peux tester sans risque, on verra bien^^

----------

## Enlight

 *math_roc wrote:*   

>  *Enlight wrote:*   ...bla bla... bla... par contre faut qu'il réfléchisse bien à sont fstab étou... 
> 
> c'est à dire? puisque c'est un chroot? il faut que je mette '/mnt/gentoo/' de partout?
> 
> zenfin, puisque je peux tester sans risque, on verra bien^^

 

Surtout pas, dans le chroot, les adresses sont relatives /mnt/gentoo devient / point barre, après le truc c'est que pour / je pense qu'il ne faut rien mettre du tout, mais je suis pas sûr que baselayout n'apprécie, faudra que tu testes tu verras bien et tu nous diras.

@pierreg : pas d'accès IRC, de toute façon je suis pas chez moi là et encore moins le WE qui vient ;o)

----------

## math_roc

en gros je pense utilser ça:

```
/dev/hda1       /boot           ext2    defaults,noatime                1 2

/dev/hda2       /               ext3    noatime                         0 1

/dev/hda6       none            swap    sw                              0 0

none            /proc/sys/fs/binfmt_misc  binfmt_misc  defaults         0 0

```

pour l'instant j'en suis a "emerge: (59 of 87) sys-devel/gcc-4.1.1-r1 Compile", pas encore eut d'erreur de compile avec mes flags^^ *content*

je pense pas que  j'en arriverai a bout sur la batterie... faudra que je suspend puis que je continue demain  :Sad: 

edit: tiens, je viens de voir qu'il y a noatime pour /boot, et pourtant, elle est toujours monté au démarrage ...

----------

## Enlight

Ouh là mais attends ta gentoo chrooté elle est vraiment sur une partoche à part???? Parceque si c'est le cas je vois pas où était le prblème et pourquoi on s'emm.... avec un chroot, t'avais qu'à faire comme une install normale.

Sinon noatime, rien à voir avec montage auto ou pas, ça veut dire que lorsque l'access time d'un fichier est modifié (man stat, man touch) on ne considère pas l'inode comme dirty (i.e. bien que l'inode en cache soit différente de celle sur le disque, on ne la sync pas ça veut dire qu'on n'écrase pas la donnée on disk avec celle en cache)

----------

## math_roc

ben non justement, c'est sur la même parition.

Par contre, ça a pas l'air de marcher  :Sad: , il veut pas lancer le /chrootrc ...

j'me souviens plus de l'erreur qu'il dit, et j'ai la flemme re rebooter maintenant, donc je dis ça plus tard.

----------

## Enlight

T'as mis le sha-bang en début de code?

----------

## math_roc

hum effectivement, j'avais pi être oublié le #!/bin/sh -_-

enfin, voila ce que j'ai fait (par contre, j'ai du utiliser le livecd minimal):

un dossier /gentoos, dedans un dossier first (j'ai pas trop d'imagination) et j'y es déplacer /bin /dev /etc /lib /opt /root /sbin /sys /tmp /usr et /var la dedans.

aprés, j'ai déplcer /mnt/gentoo vers /gentoos/second/

et ensuite, des ln -s, du coup voila ce que j'ai à la racine now:

 *Quote:*   

> ls / -l
> 
> total 68K
> 
> lrwxrwxrwx  1 root root      18 Sep 11 00:05 bin -> gentoos/second/bin
> ...

 

vala, j'avais d'abord tester avec celle dans first, puis j'suis passé a second, now j'v pouvoir virer 'first'..

du coup, j'vais surement tenter paludis comme ça ^^

----------

