[Toujours garder les messages sur la liste, la r�ponse peut
interesser quelqu'un d'autre]

On Mon, May 06, 2002 at 12:05:34PM +0200, Antoine Jacoutot wrote:
> Bon, le probl�me du fsck.ext3 qui n'existe pas est r�gl�, j'ai
> simplement recr�� un initrd.img avec un load modules ext2 et ext3.
> Par contre, comment je d�finis le filesystem de ma racine ? Dans
> /etc/fstab il est bien not� en ext3 (pour /) et ext2 (pour/boot).

Oui mais il faut bien monter / pour lire /etc/fstab, donc en
fait pr�ciser le type de filesystem de / dans /etc/fstab est
inutile...

Si on pouvait pr�ciser le filesystem de /, �a serait
n�cessairement au m�me endroit que l� o� l'on d�finit le
root device, donc sur la ligne de commande du noyau. Or, je
ne trouve pas de commande et apr�s recherche, je trouve
dans linux/fs/super.c:mount_root:

        for (fs_type = file_systems ; fs_type ; fs_type = fs_type->next) {
                if (!(fs_type->fs_flags & FS_REQUIRES_DEV))
                        continue;
                if (!try_inc_mod_count(fs_type->owner))
                        continue;
                read_unlock(&file_systems_lock);
                sb = read_super(ROOT_DEV,bdev,fs_type,root_mountflags,NULL,1);
                if (sb) 
                        goto mount_it;
                read_lock(&file_systems_lock);
                put_filesystem(fs_type);
        }

Ce qui veut dire, en gros, que le noyau essaie
syst�matiquement tous les filesystems sur /dev/root jusqu'�
ce que �a marche.

La fa�on la plus simple de se d�barrasser du message serait
de retirer cramfs de ta configuration, �a m'�tonnerait
beaucoup que tu l'utilises effectivement dans un PC (c'est
typiquement utilis� pour des ROM/flash & Co); sinon, on
pourrait patcher cramfs pour ne plus protester:

diff -u -r1.1.1.1 inode.c
--- inode.c     26 Jul 2001 16:07:38 -0000      1.1.1.1
+++ inode.c     6 May 2002 12:34:14 -0000
@@ -167,7 +167,7 @@
 
        /* Do sanity checks on the superblock */
        if (super.magic != CRAMFS_MAGIC) {
-               printk("wrong magic\n");
+       /*      printk("wrong magic\n"); */
                goto out;
        }
        if (memcmp(super.signature, CRAMFS_SIGNATURE, sizeof(super.signature))) 
{

Ou bien ajouter un param�tre pour pr�ciser le type de
filesystem sur la ligne de commande, mais c'est plus
compliqu�.

En g�n�ral, on preferera simplement vivre avec le message
d'erreur :-)

/Y


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Répondre à