#1 Le 24/10/2009, à 18:21
- Zenigata
Redimensionner la partition root sans livecd ou autre os
Bonjour,
Parfois on peut avoir besoin de faire des changements à sa partition racine, sans avoir moyen de booter sous autre chose que son os. Je vais décrire ici les étapes permettant de faire cette opération sous Ubuntu, si l'on veut étendre cette partition, on supposera que / est /dev/sda1, on peut adapter à sdaX
1) En mode graphique (éventuellement en recovery) faire de la place après la partition / afin de pouvoir l'étendre.
2) On redémarre, on édite la ligne de GRUB 'e', et on change les options de la ligne kernel en ROOT=/dev/untrucquinestpaslaracinedavant init=uncheminquinexistepas
3) On se retrouve alors dans un shell minimaliste qui permet plein de trucs.
on fait
mkdir /svtools
mkdir /oldroot
mount /dev/sda1 /oldroot
cd /svtools
cp /oldroot/sbin/e2fsck .
cp /oldroot/sbin/tune2fs .
cp /oldroot/sbin/resize2fs .
cp /oldroot/sbin/fdisk .
cp /oldroot/lib/libext2fs.so.2 /lib
cp /oldroot/lib/libcomm_err* /lib
cp /oldroot/lib/libe2p* /lib
cp /oldroot/lib/libblkid* /lib
cp /oldroot/lib/libuuid* /lib
cp /oldroot/etc/mtab /etc/mtab
sed -i s/sda1/truc1/g /etc/mtab
umount /dev/sda1
4) On change sda1 en ext2 et on redimensionne la partition (mais pas le système de fichier)
./tune2fs -O ^has_journal /dev/sda1
./fdisk /dev/sda
p # on note bien le start de la partition sda1
d # on efface la partition
1
n #on la recrée à la nouvelle taille, même début, fin plus loin
p
1
start cylinder relevé précédemment
end cylinder celui proposé
a #on lui remet le drapeau bootable
1
w # on écrit les changements
q
reboot
5) On redimensionne le système de fichier
on reprend 2) et 3)
umount /dev/sda1 #on sait jamais
cd /svtools
./e2fsck -f /dev/sda1
./resize2fs /dev/sda1
./tune2fs -j /dev/sda1
reboot
Et voila, on a étendu la partition racine sans recourir à un live cd ou un autre os
Hors ligne
#2 Le 24/10/2009, à 18:39
- Qid
Re : Redimensionner la partition root sans livecd ou autre os
mouai ... c'est quand meme pas à la portée de tout le monde ...
il n'y a rien de mieux qu'un livecd ...
bon et entre nous en mode singleuser (rescue donc) ça suffit pas ?
"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil
Hors ligne
#3 Le 24/10/2009, à 18:43
- Zenigata
Re : Redimensionner la partition root sans livecd ou autre os
Alors oui, quand on peut mettre un livecd, c'est le top, mais sur une machine sans lecteur de cd, c'est moins évident.
Et oui, ce n'est clairement pas à la protée de tout le monde et on peut faire tout plein de bêtises pas forcément réparables en essayant de faire ça.
Et non, le rescue mode ne suffit pas, car / sera toujours monté, la seule solution est de se trouver dans le système minimaliste embarqué dans le initramfs, sans ça on ne peut pas toucher à une partition montée (fin le resize2fs pour agrandir le fs devrait marcher dès qu'on a un noyau > 2.6, par contre fdisk a toutes les chances de gueuler je crois)
Hors ligne
#4 Le 26/10/2009, à 22:27
- Sciensous
Re : Redimensionner la partition root sans livecd ou autre os
hello
je suis intéressé par un lancement "minimaliste" (pour autre chose) mais je ne comprends pas la procédure (suis sous le héron)
pour root=/dev on peut mettre n'importe quoi ou il faut une partition qui existe (ext3, fat32 ou swap possibles)
pour init, c'est toujours la ligne kernel ou c'est initrd
Pourrais-tu mettre un exemple de lignes stp ?
antiX 19 et 21 et Ubuntu 20.04 et 22.04
( sous LXDE et gnome-shell )
Hors ligne
#5 Le 27/10/2009, à 00:34
- Zenigata
Re : Redimensionner la partition root sans livecd ou autre os
A priori, c'est une partition qui existe, mais je pense qu'on doit pouvoir se passer de cette ligne (pour moi l'idée c'était de récupérer des exécutables mis sur cette partition (en gros éviter les cp que je fais avant).
Et tout est sur la ligne du kernel, c'est la même astuce que pour récupérer un mot de passe root avec le init=/bin/sh, sauf que pour mettre root=/bin/sh, il faut que root soit convenablement monté et correspondent bien à / (ça donne aussi un bon résultat un peu moins minimaliste qu'avec un init qui n'exsite pas...
D'ailleurs, sans doute que ne pas donner de root ni de init suffit pour se trouver dans le busy box...
Hors ligne
#6 Le 27/10/2009, à 20:57
- Sciensous
Re : Redimensionner la partition root sans livecd ou autre os
alors le boot en editant kernel et enlevant root=... ne marche pas , meme en mettant single au lieu de quiet splash
(sous hardy heron)
antiX 19 et 21 et Ubuntu 20.04 et 22.04
( sous LXDE et gnome-shell )
Hors ligne