LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - General (http://www.linuxquestions.org/questions/linux-general-1/)
-   -   single ext3 journal device multiple journaled file systems? (http://www.linuxquestions.org/questions/linux-general-1/single-ext3-journal-device-multiple-journaled-file-systems-361482/)

reelwylde 09-08-2005 02:32 PM

single ext3 journal device multiple journaled file systems?
 
Can a single ext3 journal device house journals for multiple file systems?

If so how would one go about the configuration?

My desired configuration is to create one journal device and store journals for all data file systems there

/dev/cciss/c0d0p2 Journal device
/dev/cciss/c0d1p1 data volume 1
/dev/cciss/c0d2p1 data volume 2

I have tried to set this up and encountered the following error when attempting to mount the second data volume as ext3. Both mount fine as ext2, but that defeats the purpose.

mount -t ext3 /dev/cciss/c0d1p1 /vol01
mount: wrong fs type, bad option, bad superblock on /dev/cciss/c0d1p1,
or too many mounted file systems

Here is the console session to document the order of steps taken.

Make the journal device

$ mkfs -t ext3 -b 1024 -O journal_dev /dev/cciss/c0d0p2
mke2fs 1.35 (28-Feb-2004)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
0 inodes, 1048560 blocks
0 blocks (0.00%) reserved for the super user
First data block=1
0 block group
8192 blocks per group, 8192 fragments per group
0 inodes per group
Superblock backups stored on blocks:

Zeroing journal device: done

Make fs for data volume 2

$ mkfs.ext3 -b 1024 -J device=/dev/cciss/c0d0p2 /dev/cciss/c0d2p1
mke2fs 1.35 (28-Feb-2004)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
4445184 inodes, 35561264 blocks
1778063 blocks (5.00%) reserved for the super user
First data block=1
4341 block groups
8192 blocks per group, 8192 fragments per group
1024 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409, 663553,
1024001, 1990657, 2809857, 5120001, 5971969, 17915905, 19668993,
25600001

Writing inode tables: done
Adding journal to device /dev/cciss/c0d0p2: done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 29 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

Mount Data volume 2

$ mount -t ext3 /dev/cciss/c0d2p1 /vol02

Make fs for data volume 1

$ mkfs.ext3 -b 1024 -J device=/dev/cciss/c0d0p2 /dev/cciss/c0d1p1
mke2fs 1.35 (28-Feb-2004)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
4445184 inodes, 35561264 blocks
1778063 blocks (5.00%) reserved for the super user
First data block=1
4341 block groups
8192 blocks per group, 8192 fragments per group
1024 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409, 663553,
1024001, 1990657, 2809857, 5120001, 5971969, 17915905, 19668993,
25600001

Writing inode tables: done
Adding journal to device /dev/cciss/c0d0p2: done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 38 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

Failed attempt to mount data volume 1

$ mount -t ext3 /dev/cciss/c0d1p1 /vol01
mount: wrong fs type, bad option, bad superblock on /dev/cciss/c0d1p1,
or too many mounted file systems


TIA.

Matir 09-08-2005 02:37 PM

Anything showing up near the bottom of dmesg?

reelwylde 09-08-2005 03:27 PM

Here are the last few lines of dmesg...

EXT3: failed to claim external journal device.
EXT3: failed to claim external journal device.
EXT3-fs: External journal has more than one user (unsupported) - 2
EXT3-fs: External journal has more than one user (unsupported) - 2

reelwylde 09-08-2005 03:33 PM

I found this in another forum... it seems to imply that one fs per journal dev is the limitation....

Looks like you created the ext3 filesystem twice with the same journal
device. There may be a way to remove these journal users with tune2fs
(too lazy to check), but you can just re-create the journal device and
the filesystem again. If you have data on the filesystem, you can run
"tune2fs -f -O^has_journal <dev>" and then "tune2fs -J device=<foo> <dev>"
to add it to the journal device again.

Cheers, Andreas
--
Andreas Dilger

reelwylde 09-08-2005 04:00 PM

It has been confirmed....

Quoting Andreas Dilger:

"In theory yes it was designed to handle this, but it has never been implemented."

One file system per journal device is what the current implementation supports.



Cheers,


All times are GMT -5. The time now is 01:41 AM.