Tiny Core Linux

Tiny Core Extensions => TCE Talk => Topic started by: bmarkus on November 27, 2009, 12:07:25 AM

Title: Missing mkfs.ext4, mkfs.xfs, ...
Post by: bmarkus on November 27, 2009, 12:07:25 AM
filesystems-2.6.29.1-tinycore.tczm contains only kernel modules, binaries like mkfs.ext4, mkfs.xfs, ... are missing, therefore no way to create such extra file systems. Please add them to the extension.
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: ^thehatsrule^ on November 27, 2009, 01:28:53 AM
If they aren't already in an extension, placing them in new extensions would be ideal.
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: bmarkus on November 27, 2009, 01:37:12 AM
If they aren't already in an extension, placing them in new extensions would be ideal.

I did not find them in any extension.

Well, utilities can go to a separate extension to follow the generic TC way. However if you are using such file systems you need the binaries to manage them and you will install anyhow the binaries extension and leave in your /tce in most cases. I see pros and contras. For me both versions are OK if I can format my drive for XFS :) However keeping them in one extension would save one loop device.
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: Jason W on November 27, 2009, 04:53:34 AM
Normally file system utilities go in their own extension as separate and modular is the TC concept.  The filesystems extension is for the modules.

As for preserving loop devices, we are no longer using loop-aes in base, so the next kernel update will likely get rid of the 255 loop device limit since we will likely make loop-aes an extension.  So there is not a need for concern over loop devices in the long run.

I don't want us to see us retreat from the modular approach in concern for a loop device limit that is temporary.
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: bmarkus on November 27, 2009, 04:59:43 AM
Normally file system utilities go in their own extension as separate and modular is the TC concept.  The filesystems extension is for the modules.

As for preserving loop devices, we are no longer using loop-aes in base, so the next kernel update will likely get rid of the 255 loop device limit since we will likely make loop-aes an extension.  So there is not a need for concern over loop devices in the long run.

I don't want us to see us retreat from the modular approach in concern for a loop device limit that is temporary.


Fine, I forgot to add :) to my last sentence. Don't take it too serious.

Regarding the original question, the key is that these are missing and I would like to format a partition  ???
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: Jason W on November 27, 2009, 05:31:52 AM
The ext4 tools are part of the current e2fsprogs.  An update to the e2fsprogs extension will include ext4 support.
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: Juanito on November 27, 2009, 06:51:11 AM
err, maybe...

The issue is that there are some ext2 libs from e2fsprogs-1.39 in the base - libcom_err.so.2.1, libe2p.so.2.3, libext2fs.so.2.4, libss.so.2.0 - I'm not sure if there would be a conflict or not with using ext4 apps from, say, e2fsprogs-1.41.9
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: Jason W on November 27, 2009, 07:22:05 AM
The binaries in the updated e2fsprogs build link only to these, the output of ldd on each piped to a file:

So it may be safe to have the updated programs as far as library linking is concerned.  But maybe just the ext4 part, or whatever is not in base, could be made into an extension.  I am using the mkfs.ext4 now without any other files from the build installed.  Blkdev in base is stating that partition is ext4.


Code: [Select]
badblocks
linux-gate.so.1 =>  (0xb7f3b000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f1d000)
libc.so.6 => /lib/libc.so.6 (0xb7dc0000)
/lib/ld-linux.so.2 (0xb7f3c000)
blkid
linux-gate.so.1 =>  (0xb7fdf000)
libc.so.6 => /lib/libc.so.6 (0xb7e7c000)
/lib/ld-linux.so.2 (0xb7fe0000)
debugfs
linux-gate.so.1 =>  (0xb7f6a000)
libdl.so.2 => /lib/libdl.so.2 (0xb7f60000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f48000)
libc.so.6 => /lib/libc.so.6 (0xb7deb000)
/lib/ld-linux.so.2 (0xb7f6b000)
dumpe2fs
linux-gate.so.1 =>  (0xb7fa0000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f82000)
libc.so.6 => /lib/libc.so.6 (0xb7e25000)
/lib/ld-linux.so.2 (0xb7fa1000)
e2freefrag
linux-gate.so.1 =>  (0xb7ef7000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7ed9000)
libc.so.6 => /lib/libc.so.6 (0xb7d7c000)
/lib/ld-linux.so.2 (0xb7ef8000)
e2fsck
linux-gate.so.1 =>  (0xb7f24000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f06000)
libc.so.6 => /lib/libc.so.6 (0xb7da9000)
/lib/ld-linux.so.2 (0xb7f25000)
e2image
linux-gate.so.1 =>  (0xb7fb9000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f9b000)
libc.so.6 => /lib/libc.so.6 (0xb7e3e000)
/lib/ld-linux.so.2 (0xb7fba000)
e2label
linux-gate.so.1 =>  (0xb7f1c000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7efe000)
libc.so.6 => /lib/libc.so.6 (0xb7da1000)
/lib/ld-linux.so.2 (0xb7f1d000)
e2undo
linux-gate.so.1 =>  (0xb7f7f000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f61000)
libc.so.6 => /lib/libc.so.6 (0xb7e04000)
/lib/ld-linux.so.2 (0xb7f80000)
filefrag
linux-gate.so.1 =>  (0xb7f4f000)
libc.so.6 => /lib/libc.so.6 (0xb7dec000)
/lib/ld-linux.so.2 (0xb7f50000)
findfs
linux-gate.so.1 =>  (0xb7f70000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f52000)
libc.so.6 => /lib/libc.so.6 (0xb7df5000)
/lib/ld-linux.so.2 (0xb7f71000)
fsck
linux-gate.so.1 =>  (0xb7faf000)
libc.so.6 => /lib/libc.so.6 (0xb7e4c000)
/lib/ld-linux.so.2 (0xb7fb0000)
fsck.ext2
linux-gate.so.1 =>  (0xb7f7b000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f5d000)
libc.so.6 => /lib/libc.so.6 (0xb7e00000)
/lib/ld-linux.so.2 (0xb7f7c000)
fsck.ext3
linux-gate.so.1 =>  (0xb7f51000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f33000)
libc.so.6 => /lib/libc.so.6 (0xb7dd6000)
/lib/ld-linux.so.2 (0xb7f52000)
fsck.ext4
linux-gate.so.1 =>  (0xb7f66000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f48000)
libc.so.6 => /lib/libc.so.6 (0xb7deb000)
/lib/ld-linux.so.2 (0xb7f67000)
fsck.ext4dev
linux-gate.so.1 =>  (0xb7f3c000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f1e000)
libc.so.6 => /lib/libc.so.6 (0xb7dc1000)
/lib/ld-linux.so.2 (0xb7f3d000)
logsave
linux-gate.so.1 =>  (0xb7f68000)
libc.so.6 => /lib/libc.so.6 (0xb7e05000)
/lib/ld-linux.so.2 (0xb7f69000)
mke2fs
linux-gate.so.1 =>  (0xb7fca000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7fac000)
libc.so.6 => /lib/libc.so.6 (0xb7e4f000)
/lib/ld-linux.so.2 (0xb7fcb000)
mkfs.ext2
linux-gate.so.1 =>  (0xb7f4f000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f31000)
libc.so.6 => /lib/libc.so.6 (0xb7dd4000)
/lib/ld-linux.so.2 (0xb7f50000)
mkfs.ext3
linux-gate.so.1 =>  (0xb7f66000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f48000)
libc.so.6 => /lib/libc.so.6 (0xb7deb000)
/lib/ld-linux.so.2 (0xb7f67000)
mkfs.ext4
linux-gate.so.1 =>  (0xb7f10000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7ef2000)
libc.so.6 => /lib/libc.so.6 (0xb7d95000)
/lib/ld-linux.so.2 (0xb7f11000)
mkfs.ext4dev
linux-gate.so.1 =>  (0xb7f3b000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f1d000)
libc.so.6 => /lib/libc.so.6 (0xb7dc0000)
/lib/ld-linux.so.2 (0xb7f3c000)
mklost+found
linux-gate.so.1 =>  (0xb7f35000)
libc.so.6 => /lib/libc.so.6 (0xb7dd2000)
/lib/ld-linux.so.2 (0xb7f36000)
resize2fs
linux-gate.so.1 =>  (0xb7f03000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7ee5000)
libc.so.6 => /lib/libc.so.6 (0xb7d88000)
/lib/ld-linux.so.2 (0xb7f04000)
tune2fs
linux-gate.so.1 =>  (0xb7f8b000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7f6d000)
libc.so.6 => /lib/libc.so.6 (0xb7e10000)
/lib/ld-linux.so.2 (0xb7f8c000)
uuidd
linux-gate.so.1 =>  (0xb7f0c000)
libc.so.6 => /lib/libc.so.6 (0xb7da9000)
/lib/ld-linux.so.2 (0xb7f0d000)


Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: curaga on November 28, 2009, 04:39:44 AM
Yeah, the filesystems support is just that. See xfsprogs, jfsutils, e2fsprogs, reiserfsprogs, dosfstools etc. for the utils.
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: bmarkus on November 28, 2009, 04:50:13 AM
Yeah, the filesystems support is just that. See xfsprogs, jfsutils, e2fsprogs, reiserfsprogs, dosfstools etc. for the utils.

Why the hell I did not find mkfs.xfs in xfsprogs? Blame on me. Its fine now. Thanks Curaga.

P.S.: In fact it is listed in .list Would be good if appbrowser (or a WEB search) would dig into the file lists.
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: Juanito on November 28, 2009, 06:12:11 AM
I made an e2fsprogs_apps extension for v-1.41.9, but:
Code: [Select]
$ mkfs.ext4 --help
mkfs.ext4: symbol lookup error: mkfs.ext4: undefined symbol: undo_io_manager
$ fsck.ext4 --help
Error: ext2fs library version out of date!

I'd be kind of  nervous to use this to make an ext4 partition..
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: Jason W on November 28, 2009, 06:50:24 AM
Here is the output of mine, only mkfs.ext4 and fsck.ext4 were copied to /usr/local/sbin, no libs updated.  Evidently a shared lib vs static lib issue in the build.

Code: [Select]
root@box:/home/tc# mkfs.ext4
Usage: mkfs.ext4 [-c|-l filename] [-b block-size] [-f fragment-size]
        [-i bytes-per-inode] [-I inode-size] [-J journal-options]
        [-G meta group size] [-N number-of-inodes]
        [-m reserved-blocks-percentage] [-o creator-os]
        [-g blocks-per-group] [-L volume-label] [-M last-mounted-directory]
        [-O feature[,...]] [-r fs-revision] [-E extended-option[,...]]
        [-T fs-type] [-U UUID] [-jnqvFSV] device [blocks-count]
root@box:/home/tc# fsck.ext4
Usage: fsck.ext4 [-panyrcdfvtDFV] [-b superblock] [-B blocksize]
                [-I inode_buffer_blocks] [-P process_inode_size]
                [-l|-L bad_blocks_file] [-C fd] [-j external_journal]
                [-E extended-options] device

Emergency help:
 -p                   Automatic repair (no questions)
 -n                   Make no changes to the filesystem
 -y                   Assume "yes" to all questions
 -c                   Check for bad blocks and add them to the badblock list
 -f                   Force checking even if filesystem is marked clean
 -v                   Be verbose
 -b superblock        Use alternative superblock

Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: Jason W on November 28, 2009, 07:25:27 AM
Juanito,

Just curious, what are the sizes of your mkfs.ext4 and fsck.ext4?

Mine are"

227kb   mkfs.ext4
346kb   fsck.ext4
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: Juanito on November 28, 2009, 07:55:21 AM
42kb    mkfs.ext4
138kb   fsck.ext4
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: kerpob on November 30, 2009, 08:47:02 AM
Sort of related, but I couldn't get tinycore to work when I put the kernel and bzimage in mt /boot/ directory on an existing ext4 partition. Is this a known thing?
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: Jason W on November 30, 2009, 09:05:42 AM
ext4 is not supported in base, only by the filesystems extension, and perhaps by an updated e2fsprogs extension in the future.
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: gerald_clark on November 30, 2009, 11:11:43 AM
Most grubs do not understand ext4.
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: kerpob on November 30, 2009, 02:07:45 PM
Most grubs do not understand ext4.
Shurely not  ??? - I use grub on my ext4 crunchbang desktop (the one I wanted to put tinycore on, but can't because it's not ext4 compliant).
Title: Re: Missing mkfs.ext4, mkfs.xfs, ...
Post by: curaga on December 04, 2009, 11:54:32 AM
Quick solution - remaster ext4 module in, use grub from Crunchbang (which already has the ext4 patch).