Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#26 Le 24/11/2023, à 18:20

geole

Re : [En test] Script installation de REFIND

Bonjour
Nouvelle version du script    avec les évolutions suivantes:
1) La version refind 0.13.3.1 est remplacée par la version 0.14.0.2.
2 La commande bootctl est remplacée par la commande  mokutil afin de permettre le fonctionnement en  version 23.10.
3) La commande efibootmgr est installé si absente
Voici le nouveau script testé en 22.04 et en 23.10 pour la partie non-secure et simulée pour la partie secure  certainement à cause de cette réponse.

root@ubuntu:~# mokutil --sb-state
SecureBoot disabled
Platform is in Setup Mode
root@ubuntu:~#
## Procédure pour installer refind (à la place du fichier de boot de windows) devant être lancée sous root. Testée en  version 22.04 le 17/05/2022 puis le  25/11/2023 pour la version 23.10
## création du fichier d'exécution. 
cat >reparer.sh<<"REPARE"
#!/bin/bash
ERR="Appuyer sur la touche \e[1mEntrée\e[0m pour"
PDM="/boot/efi" # définir le point de montage
Stock=$PDM/EFI/refind  ### Le lieu de stockage.
## Est-on bien l'utilisateur root.
if [ $UID != 0 ]; then
   echo -e "\n\a\E[31mVous devez être l'utilisateur root pour exécuter ce script.\E[0m\nPour devenir root, veuillez frapper les deux mots de la ligne ci-dessous.\n\E[0m\E[34;47msudo -i\E[0m\nAppuyer sur la touche entrée. Puis saisissez votre mot de passe. Vous pourrez alors relancer le script en refaisant le 'coller'.\n"
exit 1 ; fi
### Est-on bien  dans# une session EFI?
if [ ! -d /sys/firmware/efi ]; then
   echo -e "\n\a\E[31mSession non-EFI.... Refind ne sait pas gérer. Abandon.\n\E[0m"
exit 2 ; fi
## Le répertoire de boot est-il absent? 
if [ ! -d  $PDM/EFI ]; then
   echo Montons la partition EFI  
   PartEFI=$(blkid | grep ' TYPE="vfat" ' | head -1 | cut -d: -f1 ) && echo $PartEFI
   mkdir -p $PDM
   mount -v $PartEFI  $PDM
else
   PartEFI=$(mount | grep 'on /boot/efi' | head -1 | cut -d' ' -f1 ) && echo $PartEFI
fi
ls $PDM/EFI
mkdir -pv $Stock  $PDM/EFI/Boot 2>/dev/null
if test -z $(which mokutil); then apt install -y mokutil ; fi
SEC=$(mokutil --sb-state 2>/dev/null |grep SecureBoot |cut -d" " -f2) && echo $SEC  ### Au lieu de bootctl ##  mokutil --sb-states=>SecureBoot enabled
if [  ! -f $Stock/refind.conf ]; then 
   BETA=0.14.0.2 # au lieu de  0.13.3.1
   echo -e "\nLe fichier standard de  boot  de refind a la version 0.13.2-1 Nous allons télécharger la version BETA $BETA chez le constructeur....\n"
   wget https://freefr.dl.sourceforge.net/project/refind/$BETA/refind-bin-$BETA.zip
   unzip refind-bin-$BETA.zip 1>/dev/null
   cp     refind-bin-$BETA/refind-install        $Stock 
   if [ $SEC = "disabled" ];then 
      ./refind-bin-$BETA/refind-install  --alldrivers --yes
       MSG="Installation du logiciel standard terminée."
   fi
   if [ $SEC = "enabled" ];then
      echo installation du logiciel
      ./refind-bin-$BETA/refind-install --shim /usr/lib/shim/shimx64.efi.signed --alldrivers --yes
      ### Vérifions que les fichiers de boot choisis pour l'installation sont signés. 
      #echo sbverify --list $Stock/shimx64.efi        && sbverify --list $Stock/shimx64.efi.signed
     # echo sbverify --list $Stock/grubx64.efi        && sbverify --list $Stock/grubx64.efi
      #echo sbverify --list $Stock/drivers_x64/ext4_x64.efi        && sbverify --list $Stock/drivers_x64/ext4_x64.efi 
      MSG="Installation du logiciel sécurisé terminée." 
   fi
else
  echo -e "\nrEFInd est probablement déjà installé.\n"; exit 3 ; fi
if test -z "$MSG"; then
   echo -e "\nType de securité inconnu. Rien n'est fait.\n"
exit 4 ; fi
if test -z $(which efibootmgr); then apt install -y efibootmgr ; fi
efibootmgr -v  
#### Cette partie est prévue indépendante au cas où la commande efibootmgr fasse bloquer l'installation pendant une mise à jour de RAM non supportée
echo Refind va être déplacé dans le répertoire de boot
if [  ! -f $PDM/EFI/Boot/BKbootx64.efi ]; then
   mkdir  $PDM/EFI/Boot 2>/dev/null
   cp -v  $PDM/EFI/Boot/bootx64.efi  $PDM/EFI/Boot/BKbootx64.efi 2>/dev/null
fi
cp -r $Stock/* $PDM/EFI/Boot
if [ $SEC = "enabled" ]; then
   #cp -v  $PDM/EFI/Boot/shimx64.efi.signed  $PDM/EFI/Boot/bootx64.efi
    cp -v  $PDM/EFI/Boot/shimx64.efi         $PDM/EFI/Boot/bootx64.efi
else
   cp -v  $PDM/EFI/Boot/refind_x64.efi         $PDM/EFI/Boot/bootx64.efi
fi
echo -e "\nRefind a été installé de façon normale. Si vous souhaitez qu'il remplace le logiciel de boot de windows, appuyez sur la touche \e[1mEntrée\e[0m  pour valider. Sinon faites \e[1mCtrl c\e[0m pour ne pas  continuer. \n\a\E[31mIl faut d'abord booter et s'être aperçu que le boot refind ne fonctionne pas pour décider de remplacer ou recréer la structure de boot de windows. \E[0m\n\n"
read
## windows est-il absent?
if [ ! -f $PDM/EFI/Microsoft/Boot/bootmgfw.efi ]; then
   echo -e "\nLe boot de windows est absent. Il est possible qu'il existe plusieurs partitions de boot. Il est aussi possible que vous l'ayez volontairement supprimé.\E[31m Mais si cet ordinateur est bridé, sa présence est nécessaire. Nous allons le récréer correctement. Appuyez sur la touche \e[1mEntrée\e[0m  pour accepter cette création. Sinon faites \e[1mCtrl c\e[0m pour ne pas  continuer."
   read
   mkdir -p  $PDM/EFI/Microsoft/Boot
   touch $PDM/EFI/Microsoft/Boot/bootmgfw.efi
fi
if [ ! -f $PDM/EFI/Microsoft/boot/bkbootmgfw.efi ]; then
   echo le fichier de duplication  du vrai fichier de boot de windows est absent, on va le créer.
   cp -v   $PDM/EFI/Microsoft/Boot/bootmgfw.efi  $PDM/EFI/Microsoft/Boot/bkbootmgfw.efi
fi
## On va faire une entrée en structure windows.
MAJ=$(grep  "\\\EFI\\\Microsoft\\\Boot\\\bkbootmgfw.efi" $PDM/EFI/refind/refind.conf)  
 if test -z "$MAJ"; then
   cat >>"$PDM"/EFI/refind/refind.conf<<EOF
menuentry "Mon Windows 10" {
icon \EFI\refind\icons\os_win.png
loader \EFI\Microsoft\Boot\bkbootmgfw.efi    }
EOF
   echo Mise à jour du fichier de configuration de refind faite.
fi 
cp -r $PDM/EFI/Boot/* $PDM/EFI/Microsoft/Boot # Transférons le répertoire complet.
#Mettre le fichier de boot standard à la place de celui de windows préventivement sauvé.
cp  -v $PDM/EFI/Microsoft/Boot/bootx64.efi $PDM/EFI/Microsoft/Boot/bootmgfw.efi
md5sum  $PDM/EFI/Microsoft/*/*.efi $PDM/EFI/*/*.efi | sort 
echo -e "Souvenez-vous qu'une \e[1mgrosse mise à jour de windows\e[0m oblige à recommencer cette procédure." $MSG      
REPARE
chmod  +x reparer.sh
./reparer.sh
#### FIN **** 

Dernière modification par geole (Le 10/11/2024, à 14:45)


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#27 Le 24/11/2023, à 19:35

Watael

Re : [En test] Script installation de REFIND

salut,

- touch ne sert à rien.
- un ligne d'un script devrait ne pas excéder 80 caractères.
- les variables doivent toujours être entre guillemets. TOUJOURS ! à moins de savoir pourquoi. big_smile
- un seul md5sum pour tous les fichiers.


Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#28 Le 12/10/2024, à 10:05

geole

Re : [En test] Script installation de REFIND

Bonjour
Nouvelle version du script    avec les évolutions suivantes:
La version refind  0.14.0.2.  est remplacée par la version 0.14.2.     Le traitement des fichiers secure est supprimé car inutile.
Si  le sécureboot est activé,  refind est dupliqué dans UBUNTU

Le script  est testé en 24.10 pour la partie non-secure ( 12/10/2014)  et  aussi   pour la partie secure  (09/11/2024).
Le script est obbligatoirement à utiliser pour une installation 24.10 car les drivers  fournis par l'installation standard ne savent pas lire une partition EXT4 nouvellement foumatée. Il faut une verstion supérieure de drivers.

## Procédure pour installer refind (à la place du fichier de boot de windows) devant être lancée sous root. Testée en  version 22.04 le 17/05/2022 puis le  25/11/2023  pour la version 23.10 puis les 12/10/2024 et 09/11/2024  pour la version 24.10 (suppression partie signée).
## Faire un copier/coller de ce qui suit en étant root.  (sudo -i)

cat <<"REPARE" >reparer.sh
#!/bin/bash
ERR="Appuyer sur la touche \e[1mEntrée\e[0m pour"
PDM="/boot/efi" # définir le point de montage
Stock=$PDM/EFI/refind  ### Le lieu de stockage.
## Est-on bien l'utilisateur root.
if [ $UID != 0 ]; then
   echo -e "\n\a\E[31mVous devez être l'utilisateur root pour exécuter ce script.\E[0m\nPour devenir root, veuillez frapper les deux mots de la ligne ci-dessous.\n\E[0m\E[34;47msudo -i\E[0m\nAppuyer sur la touche entrée. Puis saisissez votre mot de passe. Vous pourrez alors relancer le script en refaisant le 'coller'.\n"
exit 1 ; fi
### Est-on bien  dans# une session EFI?
if [ ! -d /sys/firmware/efi ]; then
   echo -e "\n\a\E[31mSession non-EFI.... Refind ne sait pas gérer. Abandon.\n\E[0m"
exit 2 ; fi
## Le répertoire de boot est-il absent? 
if [ ! -d  $PDM/EFI ]; then
   echo Montons la partition EFI  
   PartEFI=$(blkid | grep ' TYPE="vfat" ' | head -1 | cut -d: -f1 ) && echo $PartEFI
   mkdir -p $PDM
   mount -v $PartEFI  $PDM
else
   PartEFI=$(mount | grep 'on /boot/efi' | head -1 | cut -d' ' -f1 ) && echo $PartEFI
fi
ls $PDM/EFI
mkdir -pv $Stock  $PDM/EFI/Boot 2>/dev/null
if test -z $(which mokutil); then apt install -y mokutil ; fi
SEC=$(mokutil --sb-state 2>/dev/null |grep SecureBoot |cut -d" " -f2) && echo $SEC  ### Au lieu de bootctl ##  mokutil --sb-states=>SecureBoot enabled
if [  ! -f $Stock/refind.conf ]; then 
   BETA=0.14.2 # au lieu de   0.14.0.2 # au lieu de  0.13.3.1
   echo -e "\nLe fichier standard de  boot  de refind a la version 0.13.2-1 Nous allons télécharger la version BETA $BETA chez le constructeur....\n"
   wget https://freefr.dl.sourceforge.net/project/refind/$BETA/refind-bin-$BETA.zip
   unzip refind-bin-$BETA.zip 1>/dev/null
   cp     refind-bin-$BETA/refind-install        $Stock 
   if [ $SEC = "disabled" ];then 
      ./refind-bin-$BETA/refind-install  --alldrivers --yes
       MSG="Installation du logiciel standard terminée."
   fi
   if [ $SEC = "enabled" ];then
      echo installation du logiciel sécurisé
      #./refind-bin-$BETA/refind-install --shim /usr/lib/shim/shimx64.efi.signed --alldrivers --yes
      ./refind-bin-$BETA/refind-install --shim /usr/lib/shim/shimx64.efi --alldrivers --yes
      ### Vérifions que les fichiers de boot choisis pour l'installation sont signés. 
      ### echo sbverify --list $Stock/shimx64.efi        && sbverify --list $Stock/shimx64.efi.signed
      ### echo sbverify --list $Stock/grubx64.efi        && sbverify --list $Stock/grubx64.efi
      ###echo sbverify --list $Stock/drivers_x64/ext4_x64.efi        && sbverify --list $Stock/drivers_x64/ext4_x64.efi 
      MSG="Installation du logiciel sécurisé terminée." 
   fi
else
  echo -e "\nrEFInd est probablement déjà installé.\n"; exit 3 ; fi
if test -z "$MSG"; then
   echo -e "\nType de securité inconnu. Rien n'est fait.\n"
exit 4 ; fi
if test -z $(which efibootmgr); then apt install -y efibootmgr ; fi
efibootmgr   
#### Cette partie est prévue indépendante au cas où la commande efibootmgr fasse bloquer l'installation pendant une mise à jour de RAM non supportée
echo Refind va être déplacé dans le répertoire de boot
if [  ! -f $PDM/EFI/Boot/BKbootx64.efi ]; then
   mkdir  $PDM/EFI/Boot 2>/dev/null
   cp -v  $PDM/EFI/Boot/bootx64.efi  $PDM/EFI/Boot/BKbootx64.efi 2>/dev/null
fi
cp -r $Stock/* $PDM/EFI/Boot
if [ $SEC = "enabled" ]; then
   cp -v  $PDM/EFI/Boot/shimx64.efi  $PDM/EFI/Boot/bootx64.efi
else
   cp -v  $PDM/EFI/Boot/refind_x64.efi         $PDM/EFI/Boot/bootx64.efi
fi
echo Refind va être déplacé dans le répertoire de ubuntu. Semble nécessaire si secure boot et version 24.10
if [ $SEC = "enabled" ]; then
   if [ -d $PDM/EFI/ubuntu ]; then
      if [  ! -f $PDM/EFI/ubuntu/BKgrubx64.efi ]; then
         cp -v  $PDM/EFI/ubuntu/grubx64.efi  $PDM/EFI/ubuntu/BKgrubx64.efi 2>/dev/null
      fi
      rsync -a --exclude={shimx64.efi,mmx64.efi,refind-install}  $Stock/* $PDM/EFI/ubuntu 
   fi        
fi
echo -e "\nRefind a été installé de façon normale. Si vous souhaitez qu'il remplace le logiciel de boot de windows, appuyez sur la touche \e[1mEntrée\e[0m  pour valider. Sinon faites \e[1mCtrl c\e[0m pour ne pas  continuer. \n\a\E[31mIl faut d'abord booter et s'être aperçu que le boot refind ne fonctionne pas pour décider de remplacer ou recréer la structure de boot de windows. \E[0m\n\n"
read
## windows est-il absent?
if [ ! -f $PDM/EFI/Microsoft/Boot/bootmgfw.efi ]; then
   echo -e "\nLe boot de windows est absent. Il est possible qu'il existe plusieurs partitions de boot. Il est aussi possible que vous l'ayez volontairement supprimé.\E[31m Mais si cet ordinateur est bridé, sa présence est nécessaire. Nous allons le récréer correctement. Appuyez sur la touche \e[1mEntrée\e[0m  pour accepter cette création. Sinon faites \e[1mCtrl c\e[0m pour ne pas  continuer."
   read
   mkdir -p  $PDM/EFI/Microsoft/Boot
   touch $PDM/EFI/Microsoft/Boot/bootmgfw.efi
fi
if [ ! -f $PDM/EFI/Microsoft/boot/bkbootmgfw.efi ]; then
   echo le fichier de duplication  du vrai fichier de boot de windows est absent, on va le créer.
   cp -v   $PDM/EFI/Microsoft/Boot/bootmgfw.efi  $PDM/EFI/Microsoft/Boot/bkbootmgfw.efi
fi
## On va faire une entrée en structure windows.
MAJ=$(grep  "\\\EFI\\\Microsoft\\\Boot\\\bkbootmgfw.efi" $PDM/EFI/refind/refind.conf)  
 if test -z "$MAJ"; then
   cat >>"$PDM"/EFI/refind/refind.conf<<EOF
menuentry "Mon Windows 10" {
icon \EFI\refind\icons\os_win.png
loader \EFI\Microsoft\Boot\bkbootmgfw.efi    }
EOF
   echo Mise à jour du fichier de configuration de refind faite.
fi 
cp -r $PDM/EFI/Boot/* $PDM/EFI/Microsoft/Boot # Transférons le répertoire complet.
#Mettre le fichier de boot standard à la place de celui de windows préventivement sauvé.
cp  -v $PDM/EFI/Microsoft/Boot/bootx64.efi $PDM/EFI/Microsoft/Boot/bootmgfw.efi
md5sum  $PDM/EFI/Microsoft/*/*.efi $PDM/EFI/*/*.efi | sort 
echo -e "Souvenez-vous qu'une \e[1mgrosse mise à jour de windows\e[0m oblige à recommencer cette procédure." $MSG      
REPARE
chmod  +x reparer.sh
./reparer.sh
#### FIN **** 

Dernière modification par geole (Le 10/11/2024, à 16:58)


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#29 Le 12/10/2024, à 15:51

eric63

Re : [En test] Script installation de REFIND

Salut
bon je viens de faire ton script depuis ma session sur un pc fixe (pas très clair pour un newbie).

Donc j’ai fait cela pour enlever le refind existant

kubu@kubu-System-Product-Name:~$ sudo -i
[sudo] password for kubu: 
root@kubu-System-Product-Name:~# cd /boot/efi/EFI
root@kubu-System-Product-Name:/boot/efi/EFI# rm -r refind
root@kubu-System-Product-Name:/boot/efi/EFI# rm -r tools
root@kubu-System-Product-Name:/boot/efi/EFI# cd
root@kubu-System-Product-Name:~# 

puis là il me manque des infos je ne sais pas quoi faire de ton script

1ère idée: Créer un fichier et copier le script dedans nommer ce script «tartenpion»
lui donner un type.txt .bash .sh et rendre exécutable ce fichier
Tout cela n’a pas fonctionné.

nière idée
donc en fait il faut copier la ligne

 cat >reparer.sh<<"REPARE"

dans un terminal en root ce qui donne

root@kubu-System-Product-Name:~# cat >reparer.sh<<"REPARE"

ce qui va démarrer la séquence du script

Mais j’ai en fin de script l’annonce en rouge suivante:
Refind a été installé de façon normale. Si vous souhaitez qu'il remplace le logiciel de boot de windows, appuyez sur la touche Entrée  pour valider. Sinon faites Ctrl c pour ne pas  continuer.
Il faut d'abord booter et s'être aperçu que le boot refind ne fonctionne pas pour décider de remplacer ou recréer la structure de boot de windows.

Or moi je n’ai pas de boot de windows. Qu’est ce qu’il faut faire ? «Enter» ou «Ctrl c»

Dernière modification par eric63 (Le 12/10/2024, à 15:53)


Kubuntu 24.10  Wayland Plasma 6.1.5 KDE 6.6.0 Qt 6.6.2 et noyau 6.11.0-9  Asus B760+D4  i5-12400F 4.4Ghz DDR4 32Go nvidia RTX 3060 12GB
Utilisez les drivers libres avant d’ installer une brother avec le script de demonipuch
J’utilise le clavier french AFNOR

Hors ligne

#30 Le 12/10/2024, à 15:57

geole

Re : [En test] Script installation de REFIND

Bonjour.
Tu restes en mode root  et tu fais un gros copier/coller de tout le paquet.

Puisque tu n'as pas windows  il est inutile de  faire la partie finale.  Donc «Ctrl c»

Pour ce contexte particulier.
    On commence à  acheter un ordinateur windows.
    Puis on ajoute ubuntu.          L'installateur ajoute alors le grub.
     et l'utilisateur constate que c'est toujours windows qui met en route  quoiqu'on fasse.
Donc le dépannage est d'installer refind et on sait à l'avance qu'il faut écraser le boot de windows.

Dernière modification par geole (Le 12/10/2024, à 16:12)


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#31 Le 12/10/2024, à 16:09

eric63

Re : [En test] Script installation de REFIND

c’est ce que j’ai presque fait après l’invite, puisque j’ai copier à partir de
#!/bin/bash
donc j’ai fait un ctrl c puis de nouveau un copier de TOUT le script
et cela ne donne pas le même message

^C
root@kubu-System-Product-Name:~# #### FIN **** 
root@kubu-System-Product-Name:~# ## Procédure pour installer refind (à la place du fichier de boot de windows) devant être lancée sous root. Testée en  version 22.04 le 17/05/2022 puis le  25/11/2023 pour la version 23.10 puis le 12/10/2024 pour la version 24.10
## création du fichier d'exécution. 
cat >reparer.sh<<"REPARE"
#!/bin/bash
ERR="Appuyer sur la touche \e[1mEntrée\e[0m pour"
PDM="/boot/efi" # définir le point de montage
Stock=$PDM/EFI/refind  ### Le lieu de stockage.
## Est-on bien l'utilisateur root.
if [ $UID != 0 ]; then
   echo -e "\n\a\E[31mVous devez être l'utilisateur root pour exécuter ce script.\E[0m\nPour devenir root, veuillez frapper les deux mots de la ligne ci-dessous.\n\E[0m\E[34;47msudo -i\E[0m\nAppuyer sur la touche entrée. Puis saisissez votre mot de passe. Vous pourrez alors relancer le script en refaisant le 'coller'.\n"
exit 1 ; fi
### Est-on bien  dans# une session EFI?
if [ ! -d /sys/firmware/efi ]; then
   echo -e "\n\a\E[31mSession non-EFI.... Refind ne sait pas gérer. Abandon.\n\E[0m"
exit 2 ; fi
## Le répertoire de boot est-il absent? 
if [ ! -d  $PDM/EFI ]; then
   echo Montons la partition EFI  
   PartEFI=$(blkid | grep ' TYPE="vfat" ' | head -1 | cut -d: -f1 ) && echo $PartEFI
   mkdir -p $PDM
   mount -v $PartEFI  $PDM
else
   PartEFI=$(mount | grep 'on /boot/efi' | head -1 | cut -d' ' -f1 ) && echo $PartEFI
fi
#### FIN **** rer.shus qu'une \e[1mgrosse mise à jour de windows\e[0m oblige à recommencer cette procédure." $
/dev/nvme0n1p1
BOOT  refind  tools  ubuntu
disabled

rEFInd est probablement déjà installé.

root@kubu-System-Product-Name:~# ## Procédure pour installer refind (à la place du fichier de boot de windows) devant être lancée sous root. Testée en  version 22.04 le 17/05/2022 puis le  25/11/2023 pour la version 23.10 puis le 12/10/2024 pour la version 24.10
## création du fichier d'exécution. 
cat >reparer.sh<<"REPARE"
#!/bin/bash
ERR="Appuyer sur la touche \e[1mEntrée\e[0m pour"
PDM="/boot/efi" # définir le point de montage
Stock=$PDM/EFI/refind  ### Le lieu de stockage.
## Est-on bien l'utilisateur root.
if [ $UID != 0 ]; then
   echo -e "\n\a\E[31mVous devez être l'utilisateur root pour exécuter ce script.\E[0m\nPour devenir root, veuillez frapper les deux mots de la ligne ci-dessous.\n\E[0m\E[34;47msudo -i\E[0m\nAppuyer sur la touche entrée. Puis saisissez votre mot de passe. Vous pourrez alors relancer le script en refaisant le 'coller'.\n"
exit 1 ; fi
### Est-on bien  dans# une session EFI?
if [ ! -d /sys/firmware/efi ]; then
   echo -e "\n\a\E[31mSession non-EFI.... Refind ne sait pas gérer. Abandon.\n\E[0m"
exit 2 ; fi
## Le répertoire de boot est-il absent? 
if [ ! -d  $PDM/EFI ]; then
   echo Montons la partition EFI  
   PartEFI=$(blkid | grep ' TYPE="vfat" ' | head -1 | cut -d: -f1 ) && echo $PartEFI
   mkdir -p $PDM
   mount -v $PartEFI  $PDM
else
   PartEFI=$(mount | grep 'on /boot/efi' | head -1 | cut -d' ' -f1 ) && echo $PartEFI
fi
#### FIN **** rer.shus qu'une \e[1mgrosse mise à jour de windows\e[0m oblige à recommencer cette procédure." $
/dev/nvme0n1p1
BOOT  refind  tools  ubuntu
disabled

rEFInd est probablement déjà installé.

root@kubu-System-Product-Name:~# 

Et après un reboot refind est revenu smile

Dernière modification par eric63 (Le 12/10/2024, à 16:19)


Kubuntu 24.10  Wayland Plasma 6.1.5 KDE 6.6.0 Qt 6.6.2 et noyau 6.11.0-9  Asus B760+D4  i5-12400F 4.4Ghz DDR4 32Go nvidia RTX 3060 12GB
Utilisez les drivers libres avant d’ installer une brother avec le script de demonipuch
J’utilise le clavier french AFNOR

Hors ligne

#32 Le 05/11/2024, à 11:53

eric63

Re : [En test] Script installation de REFIND

Suite à une mise à jour de grub j’ai «perdu refind» sad
j’ai relancé le script en root

sudo-i

puis

cat >reparer.sh<<"REPARE"

mais je me suis perdu moi même
je ne sais pas où va se créer ce script et ce qu’il faut faire vraiment:
est ce qu’il faut copier coller l’intégralité du script dans un terminal en root pour créer un fichier qui démarre tout seul?
C’est ce que j’ai fait mais cela ne donne rien comme résultat
En rebootant et en regardant le bios je me suis aperçu que ma partition de démarrage n’est plus sur /boot/EFI
il m’a suffit de prioriser cette partition /boot/EFI pour rebooter sur refind smile

Dernière modification par eric63 (Le 05/11/2024, à 11:55)


Kubuntu 24.10  Wayland Plasma 6.1.5 KDE 6.6.0 Qt 6.6.2 et noyau 6.11.0-9  Asus B760+D4  i5-12400F 4.4Ghz DDR4 32Go nvidia RTX 3060 12GB
Utilisez les drivers libres avant d’ installer une brother avec le script de demonipuch
J’utilise le clavier french AFNOR

Hors ligne

#33 Le 05/11/2024, à 15:32

Watael

Re : [En test] Script installation de REFIND

@geole:

cat <<"REPARE" >reparer.sh

on ouvre un here-doc
que l'on redirige vers reparer.sh

ce n'est pas une erreur de syntaxe, c'est un souci de compréhension.
sachant que le redirection est effectuée en premier, on pourrait aussi bien écrire :

>reparer.sh cat <<"REPARE"

wink

Dernière modification par Watael (Le 05/11/2024, à 15:34)


Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#34 Le 05/11/2024, à 15:41

geole

Re : [En test] Script installation de REFIND

Bonjour
La procédure a cela

cat >réparer.sh<<"REPARE"

Cela me semble équivalent


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#35 Le 05/11/2024, à 15:59

eric63

Re : [En test] Script installation de REFIND

Watael a écrit :

on ouvre un here-doc

en français développé ça donne quoi parce que si je comprend que les deux lignes sont équivalentes je ne comprends rien à ce que ça fait en fait, il est où ce fichier réparer.sh ?
Désolé pour mon ignorance crasse mais je suis pas un assidu de la ligne de commande


Kubuntu 24.10  Wayland Plasma 6.1.5 KDE 6.6.0 Qt 6.6.2 et noyau 6.11.0-9  Asus B760+D4  i5-12400F 4.4Ghz DDR4 32Go nvidia RTX 3060 12GB
Utilisez les drivers libres avant d’ installer une brother avec le script de demonipuch
J’utilise le clavier french AFNOR

Hors ligne

#36 Le 05/11/2024, à 16:14

geole

Re : [En test] Script installation de REFIND

Si tu as fait copier/coller de la totalité, l'exécution est automatique
Rappel  allégé du contenu

## Procédure pour installer refind (à la place du fichier de boot de windows) devant être lancée sous root. Testée en  version 22.04 le 17/05/2022 puis le  25/11/2023 pour la version 23.10 puis le 12/10/2024 pour la version 24.10
## création du fichier d'exécution. 
cat >reparer.sh<<"REPARE"
#!/bin/bash
.......  
REPARE
chmod  +x reparer.sh
./reparer.sh
#### FIN ****

Donc si tu  veux relancer, il suffit de frapper

./reparer.sh

Pour voir la présence du  fichier,

ls -rtl

Dernière modification par geole (Le 05/11/2024, à 16:17)


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#37 Le 05/11/2024, à 16:24

eric63

Re : [En test] Script installation de REFIND

ok c’est bien plus clair maintenant
j’avais copié cela en plus du script que tu as fait

…
#### FIN **** rer.shus qu'une \e[1mgrosse mise à jour de windows\e[0m oblige à recommencer cette procédure." $
/dev/nvme0n1p1
BOOT  refind  tools  ubuntu
disabled

rEFInd est probablement déjà installé.

root@kubu-System-Product-Name:~# 

c’est normal ou c’est moi qui ait recopié le résultat du script lancé une première fois depuis le terminal ?

Dernière modification par eric63 (Le 05/11/2024, à 16:24)


Kubuntu 24.10  Wayland Plasma 6.1.5 KDE 6.6.0 Qt 6.6.2 et noyau 6.11.0-9  Asus B760+D4  i5-12400F 4.4Ghz DDR4 32Go nvidia RTX 3060 12GB
Utilisez les drivers libres avant d’ installer une brother avec le script de demonipuch
J’utilise le clavier french AFNOR

Hors ligne

#38 Le 05/11/2024, à 17:35

Watael

Re : [En test] Script installation de REFIND

geole a écrit :

La procédure a cela

cat >réparer.sh<<"REPARE"

Cela me semble équivalent

qu'appelles-tu "la procédure" ?

comme je l'ai dit, c'est fonctionnellement équivalent, mais c'est la façon de le lire qui change.
je trouve "plus simple" de pouvoir lire :
cat lit un here-doc et le redirige vers un fichier.

cat <<MOT >/chemin/fichier

Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#39 Le 05/11/2024, à 17:42

geole

Re : [En test] Script installation de REFIND

Je parlais de mon script.
Je penserais à inverser  puisque  c'est plus logique.


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne