Je me permets de reprendre l'excellent article de guy qui décrit la procédure pour utiliser/configurer des volumes logiques sous NuTyX

Installer NuTyX sur un volume logique LVM guy_ 21 sept 2009

Prérequis

1. Le partionnement

Nous supposerons que votre(vos) disque(s) est(sont) déjà partitionné(s), que vous avez créé un volume logique pour y installer la distribution Linux NuTyX, et que ce volume logique a été formatté, par exemple en reiserfs. Si ce n'est pas le cas, nous vous conseillons d'utiliser un livecd, comme systemrescuecd ou RIPLinux

2. Le boot loader

Il s'agit d'utiliser un programme de boot qui puisse reconnaitre les partitions LVM. J'utilise grub2 (attention, grub2, pas grub legacy), actuellement la version 1.97beta3. Vous aurez à le compiler, ou à attendre qu'il figure dans les dépots de NuTyx 2009. Le Pkgfile que j'ai utilisé se trouve ici

    sudo pkgmk -d
    sudo pkgadd /srv/NuTyX/locale/grub2#1.97~beta3-1.pkg.tar.gz

3. Le paquet lvm2

Pour compiler LVM2, j'ai utilisé le Pkgfile de la CRUX, légèrement modifié, notamment pour utiliser la version 2.02.39, dernière version encore diponible qui ne m'a pas donné d'erreur avec device-mapper.

L'installation:

Nous allons boooter sur la version mini de l'iso NuTyX2009.

A l'écran “choisir la partition sur laquelle vous souhaitez installer …”, cliquer sur le boutton “Annuler”, et dans le menu principal, choisir “console”

Avant de commencer, je lance quelques terminaux virtuels, qui vont me permettre de lancer des commandes pendant l'installation, p.ex df -k, ps w, kill … J'atteinds ces terminaux gráce aux touches “ALT-F2”, “ALT-F3” et “ALT-F4”

getty 38400 tty2 & getty 38400 tty3 & getty 38400 tty4 &

Ensuite, il faut activer les volumes logiques

vgchange -a y

Vérifier

ls -l /dev/mapper crw-rw—- 1 root root 10, 61 sep 19 2009 control brw——- 1 root root 253, 0 sep 19 21:42 vg1-data brw——- 1 root root 253, 3 sep 19 21:42 vg1-nutest brw——- 1 root root 253, 2 sep 19 21:42 vg1-nutyx brw——- 1 root root 253, 1 sep 19 21:42 vg1-ubuntu

Pour installer NuTyX dans le volume logique “nutest” du volume groupe “vg1”, on monte ce volume logique

mount /dev/mapper/vg1-nutest /mnt/hd

On rajoute device-mapper dans la liste des packages à installer

vi install_2009.ash

Je commente la ligne 398 du script install_2009.ash, car je ne désire pas qu'il efface les packages déjà téléchargés en cas de problème

# rm -r ${MountFolder}/srv/NuTyX

et enfin, on peut lancer l'installation en ligne de commande

sh install_2009.ash /mnt/hd reiserfs be-latin1

on installe les paquets lvm2 et grub2 qu'on a compilé soi même

sudo pkgadd /srv/NuTyX/locale/lvm2#2.02.39-1.pkg.tar.gz sudo pkgadd /srv/NuTyX/locale/grub2#1.97~beta3-1.pkg.tar.gz

Modifier l' initrd

Pour que linux utilise notre filesystem, on passe par un initrd qui va reconnaitre lvm. On décomprime l'initrd de NuTyX

mv initrd initrd.gz gunzip initrd.gz mkdir ird31 cp initrd ird31/ cd ird31 sudo cpio -i < initrd

on modifie le script init en ajoutant les commandes lvm suivantes juste avant la ligne “mkdir /newroot”

## –> if [ -f /sbin/lvm ]; then

/sbin/lvm vgscan --ignorelockingfailure --mknodes
if [ $? = 0 ]; then
	/sbin/lvm vgchange --ignorelockingfailure -ay
fi

fi ## ←-

et enfin, on recrée l'initrd

cd .. find ./ird31 | cpio -H newc -o > initrd gzip initrd mv initrd.gz initrd.img

Installer grub2 comme boot loader sur votre pc L'installation de paquet grub2 doit être suivie de l'installation du boot-loader sur le pc Le fichier de configuration s'appelle /boot/grub/grub.cfg (et non plus /boot/grub/menu.lst comme dans grub legacy), en voici un exemple

grub-install –recheck /dev/sda

Autres configurations à faire

 1. le fichier /etc/fstab
    Il faut adapter la ligne correspondant à au filesystem /
 2. le script de démarrage /etc/rc.d/init.d/lvmnodes
    Ajouter ce fichier
 3. le lien /etc/rc.d/rc.sysinit.d/S29lvmnodes
    cd /etc/rc.d/rc.sysinit.d
    ln -s ../init.d/lvmnodes S29lvmnodes

—– Annexe 1 ——————————————————-

# Description: Userspace toolset for logical volume management # URL: http://sourceware.org/lvm2 # Packager: Mark Rosenstand, mark at borkware dot net # Maintainer: Nathan Pardoe, npardoe at ticklestix dot co dot uk # Depends on: device-mapper

name=lvm2 ## version=2.02.43 version=2.02.39 release=1 source=(ftp://sources.redhat.com/pub/lvm2/LVM2.$version.tgz)

build() {

cd LVM2.$version
./configure \
	--prefix=/usr \
	--exec-prefix= \
	--mandir=/usr/man \
	--enable-lvm1_fallback \
	--disable-readline
make
make DESTDIR=$PKG install
install -d -m 0700 $PKG/etc/lvm/{archive,backup}
install -d -m 1777 $PKG/var/lock
install -d -m 0700 $PKG/var/lock/lvm
# Remove device-mapper conflicts

## rm $PKG/lib/libdevmapper.so ## rm $PKG/lib/libdevmapper.so.1.02 ## rm $PKG/sbin/dmsetup ## rm $PKG/usr/include/libdevmapper.h ## rm $PKG/usr/man/man8/dmsetup* }

—– Annexe 2 ——————————————————-

#!/bin/sh ######################################################################## # Begin $rc_base/init.d/lvmnodes # # Description : mknodes lvm # # Authors : guy_ # # Version : 00.00 # # Notes : #########################################################################

. /etc/sysconfig/rc . ${rc_functions}

boot_mesg “Mapping lvm drives…” case “${1}” in

start)
	if [ -f /sbin/lvm ]; then
		/sbin/lvm vgscan --ignorelockingfailure --mknodes
		evaluate_retval
		error_value=${?}
		if [ "${error_value}" = 0 ]; then
		    /sbin/lvm vgchange --ignorelockingfailure -a y
		    evaluate_retval
		    error_value=${?}
		    if [ "${error_value}" = 0 ]; then
			echo_ok
			exit 0
		    else
			echo_failure
			exit ${error_value}
		    fi
		else
			echo_failure
			exit ${error_value}
		fi
	fi
	;;
*)
	echo "Usage: ${0} {start}"
	exit 1
	;;

esac

# End $rc_base/init.d/lvmnodes

—– Annexe 3 ——————————————————-

# Description: grub2 boot loader # URL: http://svn.savannah.gnu.org/viewvc/trunk/grub2 # Maintainer: NuTyX coreteam # Packager: # Depends on:

name=grub2 version=1.97~beta3 release=1 source=(ftp://alpha.gnu.org/gnu/grub/grub-$version.tar.gz)

build() {

cd grub-$version
./autogen.sh
./configure --prefix=/usr/local 
make
make check
make DESTDIR=$PKG install

}

—– Annexe 4 ——————————————————-

# Config file for GRUB2 - The GNU GRand Unified Bootloader # /boot/grub/grub.cfg

et timeout=15 set default=0 set menu_color_normal=light-blue/black set menu_color_highligth=light-cyan/blue

menuentry ” sdb1 - Debian GNU/Linux Lenny, kernel 2.6.26.1” { set root=(hd1,1) linux /vmlinuz root=/dev/hdb1 ro initrd /initrd.img }

menuentry ” vg1-nutyx - NuTyx 2009 RC2, kernel 2.6.30.4” { insmod lvm

set root=(vg1-nutyx) linux /boot/kernel root=/dev/mapper/vg1-nutyx raid=noautodetect ro initrd /boot/initrd }

menuentry ” sdb8 iso - NuTyX 2009 install” { loopback loop (hd1,8)/ISO/nutyx/NuTyX2009-i686.iso linux (loop)/isolinux/kernel initrd (loop)/isolinux/initrd ro quiet }

nutyx/lvm_nutyx.txt · Dernière modification: 2009/09/24 22:48 par nutyx
chimeric.de = chi`s home Copyleft License Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed