Dual-boot Stretch/Testing

Bonsoir à tous,

Je suis confronté à des problèmes de compatibilité sur les librairies QT4/QT5, Arduino et d’autres.
La solution la plus simple serait de faire un dual-boot Stretch/Testing

Si je crée une partition de 20Go sur mon SSD, je suppose que je pourrai faire ce dual-boot non?
Je peux le faire sur la partition étendue ou il faut que je créée une deuxième partition primaire?
( sachant que la version Stretch sera vraiment light, uniquement pour pouvoir utiliser 2/3 logiciels )

Peux-tu poster la sortie de « lsblk » et « fdisk -l » ?

Pub gratuite : si tu avais utilisé LVM pour l’installation, tu n’aurais pas à te poser ce genre de questions.

Et dans la série « dis-moi de quoi tu as besoin, je te dirai comment t’en passer », un conteneur, une machine virtuelle voire un simple chroot ne pourrait pas faire l’affaire ?

salut
peux-tu expliquer ta solution « avec chroot » , stp

NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda       8:0    0 223,6G  0 disk 
├─sda1    8:1    0  23,3G  0 part /
├─sda2    8:2    0     1K  0 part 
├─sda5    8:5    0  19,5G  0 part /var
├─sda6    8:6    0   3,9G  0 part [SWAP]
├─sda7    8:7    0   2,9G  0 part /tmp
├─sda8    8:8    0  48,8G  0 part /home
├─sda9    8:9    0   9,8G  0 part /Dossiers-anne
└─sda10   8:10   0 115,3G  0 part /Dossiers-francois

Docker me parait une bonne solution, je l’ai installé en suivant les instructions sur le site.
Mais impossible de le lancer, je ne l’ai ni dans le menu applications ni en ligne de commande… :frowning:

Avec un tel découpage, ça aurait vraiment été une bonne idée d’utiliser LVM au lieu de partitions.
Je suppose que tu envisages de réduire sda10 qui est une partition logique. Il n’est pas nécessaire d’installer le système dans une partition principale, donc autant créer une nouvelle partition logique, une de plus ou une de moins…

Précautions à prendre lors de l’installation si tu choisis cette voie :

  • Ne pas laisser l’installateur utiliser la partition de swap (marquer : ne pas utiliser) sinon elle sera reformatée avec un nouvel UUID et le système actuel ne la reconnaîtra pas, causant délai au démarrage et impossibilité d’hiberner.
  • Ne pas utiliser la partition /home existante, vu l’écart de version les fichiers de configuration utilisateur risquent de ne pas être compatibles.
  • Ne pas installer GRUB dans le MBR sinon il remplacera l’actuel. L’installer dans le secteur d’amorce de la nouvelle partition. Ça ne servira à rien pour l’amorçage lui-même, assuré par le GRUB existant, mais sera utile pour la bonne détection des paramètres de démarrage lors de l’ajout automatique des entrées de menu du GRUB existant par update-grub.
  • Après l’installation, redémarrer sur l’autre système (ce sera le seul choix de toute façon), vérifier que GRUB_DISABLE_OS_PROBER=false est présent et non commenté dans /etc/default/grub, et exécuter update-grub pour ajouter le nouveau système au menu de GRUB.

Concernant docker, je ne le connais pas du tout et je ne peux pas t’aider. Ouvre une nouvelle discussion si tu veux poursuivre dans cette direction.

Le principe consiste à installer un système minimal dans un répertoire avec debootstrap ou équivalent puis à exécuter un shell ou autre programme en prenant ce répertoire comme racine avec la commande chroot ou une de ses variantes (schroot…). N’ayant jamais utilisé debootstrap directement (seulement implicitement à travers l’installateur), je ne peux pas être plus précis mais le manuel d’installation de Debian y consacre un paragraphe.

  • Ne pas installer GRUB dans le MBR sinon il remplacera l’actuel. L’installer dans le secteur d’amorce de la nouvelle partition. Ça ne servira à rien pour l’amorçage lui-même, assuré par le GRUB existant, mais sera utile pour la bonne détection des paramètres de démarrage lors de l’ajout automatique des entrées de menu du GRUB existant par update-grub.

ça se fait lors de l’installation ou c’est une commande spécifique?

Le principe consiste à installer un système minimal dans un répertoire avec debootstrap ou équivalent puis à exécuter un shell ou autre programme en prenant ce répertoire comme racine avec la commande chroot ou une de ses variantes (schroot…). N’ayant jamais utilisé debootstrap directement (seulement implicitement à travers l’installateur), je ne peux pas être plus précis mais le manuel d’installation de Debian y consacre un paragraphe.

J’ai essayé cette voie mais chroot n’existe pas dans testing, et avec schroot ça me retourne:

root@Bookworm:/# schroot /mnt/stretch /bin/bash
E: default: Chroot not found

Lors de l’installation quand ça demande où installer GRUB.

Ça m’étonnerait, il fait partie du paquet coreutils. Le $PATH est complet ?

J’ai passé une heure à comprendre le PATH, du coup j’ai du mieux.
Mais quand je lance chroot j’ai ce message:

root@Bookworm:/home/francois# chroot /mnt/stretch
chroot: impossible d’exécuter la commande « /bin/bash »: No such file or directory

Est-ce que tu as bien installé un système dans /mnt/stretch avec debootstrap ? As-tu vérifié son contenu ?

Si oui, pourquoi cet emplacement ? En principe /mnt est réservé aux montages temporaires de systèmes de fichiers par l’administrateur et n’a pas vocation à accueillir des fichiers ni des montages permanents. Si tu as fait un montage, de quoi et pour quelle raison ? Il n’était pas nécessaire de créer un système de fichiers dédié pour une installation utilisée uniquement en chroot.

oui et voilà son contenu:

root@Bookworm:/mnt/stretch# ls -l
total 84
drwxr-xr-x   2 root root  4096 11 févr. 12:05 bin
drwxr-xr-x   2 root root  4096 10 juil.  2020 boot
drwxr-xr-x   2 root root  4096 11 févr. 17:51 debootstrap
drwxr-xr-x  19 root root  3540 11 févr. 18:50 dev
drwxr-xr-x  50 root root  4096 11 févr. 12:05 etc
drwxr-xr-x   2 root root  4096 10 juil.  2020 home
drwxr-xr-x   2 root root  4096 10 juil.  2020 lib
drwxr-xr-x   2 root root  4096 11 févr. 12:05 lib64
drwx------   2 root root 16384 11 févr. 11:53 lost+found
drwxr-xr-x   2 root root  4096 11 févr. 12:04 media
drwxr-xr-x   2 root root  4096 11 févr. 12:04 opt
dr-xr-xr-x 262 root root     0 11 févr. 17:56 proc
drwx------   2 root root  4096 10 juil.  2020 root
drwxr-xr-x   4 root root  4096 11 févr. 12:04 run
drwxr-xr-x   2 root root  4096 11 févr. 12:05 sbin
drwxr-xr-x   2 root root  4096 11 févr. 12:04 srv
drwxr-xr-x   2 root root  4096 10 juil.  2020 sys
drwxrwxrwt   2 root root  4096 11 févr. 12:05 tmp
drwxr-xr-x  10 root root  4096 11 févr. 12:04 usr
drwxr-xr-x  11 root root  4096 11 févr. 12:04 var

Je le monterai ailleurs s’il le faut, mais pour l’instant j’aimerais comprendre pourquoi ça ne marche pas

Que dit

ls -l /mnt/stretch/bin/bash && file /mnt/stretch/bin/bash
root@Bookworm:/mnt/stretch# ls -l /mnt/stretch/bin/bash && file /mnt/stretch/bin/bash
-rwxr-xr-x 1 root root 1099016 15 mai    2017 /mnt/stretch/bin/bash
/mnt/stretch/bin/bash: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=4be0cc32aba02ec4e0f010047be5ae9dee756960, stripped

Le fichier est bien là avec les bonnes permissions. Même vérification avec /mnt/stretch/lib64/ld-linux-x86-64.so.2 et sa cible.

Conclusion?

A quel propos ? Je ne vois pas le retour des commandes avec ld-linux.

Tu m’as demandé des commandes avec ld-linux? :thinking:

Oui, deux messages plus haut.

J’avais pas compris que c’était une question.

root@Bookworm:/mnt/stretch# ls -l /mnt/stretch/lib64/ld-linux-x86-64.so.2 && file /mnt/stretch/lib64/ld-linux-x86-64.so.2
lrwxrwxrwx 1 root root 32  6 févr.  2019 /mnt/stretch/lib64/ld-linux-x86-64.so.2 -> /lib/x86_64-linux-gnu/ld-2.24.so
/mnt/stretch/lib64/ld-linux-x86-64.so.2: broken symbolic link to /lib/x86_64-linux-gnu/ld-2.24.so

Continue avec la cible /mnt/stretch/lib/x86_64-linux-gnu/ld-2.24.so.

root@Bookworm:/home/francois# ls -l /mnt/stretch/lib64/ld-2.24.so && file /mnt/stretch/lib64/ld-2.24.so
ls: impossible d'accéder à '/mnt/stretch/lib64/ld-2.24.so': Aucun fichier ou dossier de ce type