Banana Pi : changer la partition de boot

Hello à toutes et tous.
Je travaille sur une BananaPi ( sous debian).
Actuellement sur la carte SD, j’ai deux partitions:
-1 fat 32 qui sert à booter.
-1 ext4 la parition root . (/dev/mmcblk0p2)

Le script qui gère le boot de ma carte contient ce code ;

 UÐ?,  L        _E#Ö                                   D    
#--------------------------------------------------------------------------------------------------------------------------------
# Boot loader script to boot with different boot methods for old and new kernel
# Credits: https://github.com/igorpecovnik - Thank you for this great script!
#--------------------------------------------------------------------------------------------------------------------------------
if load mmc 0:1 0x00000000 uImage-next
then
# mainline kernel >= 4.x
#--------------------------------------------------------------------------------------------------------------------------------
setenv bootargs console=ttyS0,115200 console=tty0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
load mmc 0:1 0x49000000 dtb/${fdtfile}
load mmc 0:1 0x46000000 uImage-next
bootm 0x46000000 - 0x49000000
#--------------------------------------------------------------------------------------------------------------------------------
else
# sunxi 3.4.x
#--------------------------------------------------------------------------------------------------------------------------------
setenv bootargs console=ttyS0,115200 console=tty0 console=tty1 sunxi_g2d_mem_reserve=0 sunxi_ve_mem_reserve=0 hdmi.audio=EDID:0 disp.screen0_output_mode=EDID:1680x1050p60 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
setenv bootm_boot_mode sec
load mmc 0:1 0x43000000 script.bin
load mmc 0:1 0x48000000 uImage
bootm 0x48000000
#--------------------------------------------------------------------------------------------------------------------------------
fi

Pour mon projet, j’ai ajouté une partition ext4 (meme caracterisque que celle existante) et elle est nommée /dev/mmcblk0p3.
Par se faire, j’ai créé une partition ext4 avec gparted et ensuite j’ai fait un dd if=/dev/mmcblk0p2 of=/dev/mmcblk0p3 Bas=10MB

Dans le script qui gère le boot, j’ai vu un bout de code ====>root=/dev/mmcblk0p2
J’ai essayé de remplacer par l’autre partition mais ça ne fonctionne pas.
Si quelqu’un a une petite idée ça serait fort sympathique.
:slight_smile:
Dans le code, il parle de mmc 0:1, mais je n’arrive pas a voir à quoi ça correspond. Est la position de là partition sur la carte sd?
Merci d’avance

Ca m’a l’air.
Ca mérite d’être testé en remplaçant 0:1 par 0:2:
Mais bon, le bout de code que tu as cité est mal mis en forme, c’est trop dur à lire.
Pour mettre en forme un bloc de code ou un contenu de fichier, tu peux l’encadrer par 3 backquote (`=AltGR7) avant et aprés.

Merci pour ta réponse :slight_smile:
Ce soir en rentrant je remettrai le code proprement.
Je v us faire une copie de ma sd avant de me relancer dans l’aventjre, pour éviter de tout refaire si ça plante lol

Bonjour domoticity

Je me suis permis de remettre en forme le bloc de texte contenu dans ton premier message de ce fil de discussion.
Mais j’ai laissée telle quelle la première ligne.


En bas à droite de ton message, il y a une icône représentant un crayon,
en cliquant dessus, tu pourra voir les lignes que j’ai ajouté avant et après ton bloc de texte

Hello
Je te remercie beaucoup.
C’est beaucoup plus lisible :slight_smile:

Mauvais titre : visiblement tu veux changer la partition racine, pas la partition de boot.

Donc tu as cloné la partition sur le même support de stockage. C’est une mauvaise idée car les deux partitions ont le même UUID. Pour rappel, un des U dans UUID veut dire “unique”.

Cette phrase ne contient aucune information. Que se passe–t-il ?

Bonjour .
Merci pour ta réponse.
En effet je me suis mal exprimé: c’est bien la partition racine que je souhaite changer.
Je n’y connais pas grand chose en partition et je débute en Linux. J’apprends en cherchant sur internet et grâce à des forums et des personnes comme toi qui prennent le temps de me répondre :slight_smile:
En effet j’ai cloné ma partition racine.
Le problème avec les os des bananapi et autres cartes du genre, ce sont des img toutes faites donc je pense que l’uuid Ne change pas.
Que le conseillerais tu?
Dans ma deuxième partition racine, je n’ai pas besoin de grand chose: serveur web,du php5 et c’est tout.

Tu as oublié le plus important : que se passe-t-il ?

bonsoir,
l’ojectif, c’est d’utiliser un disque sur le port sata?

J’ai une erreur de lancement du script qui sert a booter si j’ai bien traduit lol
je refais l’expérience ce soir et te donne le message d’erreur exacte

bonsoir
non tout sur la meme carte sd.
Pour mon projet je suis limité à la SD.

Je ne connais pas ce chargeur d’amorçage, mais si tu n’as fait que modifier la valeur du paramètre root passé au noyau, ce serait étonnant. Le chargeur n’interprète pas les paramètres du noyau, il ne fait que les passer. C’est le noyau (ou d’autres programmes lancés par lui) qui les interprète.

D’autre part je doute qu’il faille modifier autre chose car le montage de la racine ne concerne que le noyau et lui seul, pas le chargeur d’amorçage.

IMG_0670

IMG_0671

Voila ce que j’obtiens.
Je cherche des informations sur internet mais je n’arrive pas encore à tout comprendre.
donc des fois je fais des tests en espérant que ça réussisse :stuck_out_tongue:

Et cela juste en modifiant mmcblk0p2 en mmcblk0p3 ?
Et si tu remets mmcblk0p2, ça démarre ?

Juste en modifiant /dev/mmcblk0p2 vers 3.
Et quand je remets à l’initial, j’ai toujours le même symptôme.

Tu as peut-être modifié autre chose en même temps.

Je ne pense pas mais je vais te décrire comment je modifie le fichier boot.

    mount -t vfat /dev/mmcblk0p1 /mnt/boot
nano /mnt/boot/boot.scr
nano /mnt/boot/boot.cmd

Dans les fichiers boot.scr et cmd je modifie la partition
Aux deux endroits où elle est présente.

Deux fichiers ? Au début, tu parlais d’un script.

Le script utilisé par la carte est boot.scr, d’après ce que j’ai pu lire lors du démarrage,
j’ai quand même modifié le boot.cmd pour voir si ça changeait quelquechose.

Si je comprends bien ce que tu as montré plus haut est le contenu de boot.scr. Que contient boot.cmd ?