SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
has anybody had trouble using grub with a cd installation of slack 12.1?
I did. I'm dual booting winxp puppylinux, and slack 12.1. My grub menu1st is located on the puppylinux partition
when i formatted the target partition during setup off the cd could not get grub to load slack 12.1. Would get bad file/directory error tried it several times. i finally decide to format the slack12.1 target partition using gpart located on my puppylinux. reinstalled slack12.1 without formating the partition during setup, since I had already formated while running puppylinux. Grub now loads slack12.1 with out any problems.
does anybody know why this fixed the problem or is there a problem with the install cd when it formats a partition.
my partition setup is as follows on a old compaq pentiumII system
hda1 windows xp operating system, hda2 fat32 partition
hdd1 slack12.1, hdd2 puppylinux, hdd3 fat32 partition, hdd4 swap
The GRUB included with Slackware (in the extra/ series on the CDs/DVD) is patched to account for the increase in inode size from 128 to 256 bytes with ext2 and ext3 filesystems. Slackware 12.1 now uses 256 bytes as the default size, whereas before (and with other distros etc.) they still use 128 bytes. When you formatted the partition using the Slackware installer, it used 256 bytes, and therefore your previous GRUB installation couldn't handle it. You could have installed the version of GRUB included in the extra/ directory of Slackware to fix your problems, but your way is acceptable too. I am pretty sure you can specify an inode size during setup, so you could have also specified that before formatting -- but the DEFAULT value is now 256 bytes.
It would be nice if this grub/ext3 change and patch was included in CHANGES_HINTS or some other documentation. Those of us already using grub (speaking for myself) were caught unawares when moving from 12 to 12.1, leaving our systems temporarily hosed. Not sure what the best way of advertising this problem is: any suggestions? Slackware patches?
It would be nice if this grub/ext3 change and patch was included in CHANGES_HINTS or some other documentation. Those of us already using grub (speaking for myself) were caught unawares when moving from 12 to 12.1, leaving our systems temporarily hosed. Not sure what the best way of advertising this problem is: any suggestions? Slackware patches?
Since the only GRUB package officially supported by Slackware is the one in extra/ (which should work fine), and since you can change the default inode size during the installation, it's not really Slackware's fault. Although it would have been nice to mention it in CHANGES_AND_HINTS.TXT, I don't think the problem merits releasing a statement to the community about it -- it's not Slackware's problem (it is working correctly with its included tools). If you needed to know, you could always have looked in the SlackBuild for GRUB in extra/, which states the following:
Quote:
Originally Posted by extra/source/grub/grub.SlackBuild
# This is needed for the optional (but now default) increase in
# inode size from 128 to 256 bytes with ext2 and ext3:
zcat $CWD/grub_support_256byte_inode.patch.gz | patch -p1 --verbose || exit 1
If you check the ChangeLog for 12.1 (and search for grub), you'll find a few entries where the patch was implemented, removed, and reimplemented:
Quote:
Originally Posted by ChangeLog.txt
Thu Mar 6 03:13:15 CST 2008
extra/grub/grub-0.97-i486-4.tgz: Patched to handle the new 256 byte ext2/ext3
inode size. Thanks to Michael Wagner for the patch.
Wed Mar 19 19:34:38 CDT 2008
extra/grub/grub-0.97-i486-5.tgz: Recompiled without the inode patch since
e2fsprogs-1.40.8 broke the GRUB we patched to work with e2fsprogs-1.40.6.
Fri Mar 28 23:35:22 CDT 2008
extra/grub/grub-0.97-i486-6.tgz: Restored the inode patch for ext2/3.
It looks like it was needed after all.
If that doesn't tip you off, I don't know what will.
I can guarantee that nothing will be released in patches/ about this, since nothing is being upgraded and there is no security problem.
Yes, well, no one was accusing it of being Slackware's fault, or anyone's, except my own. The "it would have been nice" was not meant sarcastically!
However, purely in the interests of improved communication, I think it could be easier to find, considering all the other changes mentioned in CHANGES_AND_HINTS. It is a "gotcha". True, I could've perused through all of the ChangeLog.txt, but then why bother with CHANGES_AND_HINTS if that's the preferred solution?
As far as the "official version" supported by slackware: grub doesn't need to be reinstalled, normally, unlike lilo (slackware's official bootloader, which I like very much BTW), and I've been using the "official version" from 12.0.
It was easy enough to find the solution and implement it; I just think it would have been consistent with the rest of the documentation to include this in CHANGES_AND_HINTS or one of the other "README"s.
It was easy enough to find the solution and implement it; I just think it would have been consistent with the rest of the documentation to include this in CHANGES_AND_HINTS or one of the other "README"s.
I didn't disagree with that. It was probably overlooked in the documentation-writing process -- but I don't think it merits a "press release" at this point in time, since it's a relatively minor problem.
1. Use LILO
2. Use the GRUB from Slackware located in extra/
3. Use a 128 byte inode size
I don't use Windows anymore and although I have one PC that dual boots between Ubuntu and XP I just use GRUB to boot instead of NTLDR, which I know basically nothing about. However, if you want to continue to use NTLDR, and you think the 256 byte inode size of ext3 filesystems is the culprit, then you can reinstall Slackware with a 128 byte inode size on your ext3 filesystem. This is NOT an option in the installer, so you have a few options. You can set up and format your partitions beforehand and select 'Do not format' in the installer, or you can hack the /usr/lib/setup/SeTpartitions script that the installer uses to create a 128 byte inode size instead of the default 256. This is actually very easy to do as far as I know (I'm testing this in a VM right now -- I'll get back to you with the results).
If you read the man page for mke2fs, you'll see this option:
Code:
-I inode-size
Specify the size of each inode in bytes. mke2fs creates
256-byte inodes by default. In kernels after 2.6.10 and some
earlier vendor kernels it is possible to utilize inodes larger
than 128-bytes to store extended attributes for improved perfor-
mance. The inode-size value must be a power of two larger or
equal to 128. The larger the inode-size the more space the
inode table will consume, and this reduces the usable space in
the filesystem and can also negatively impact performance.
Extended attributes stored in large inodes are not visible with
older kernels, and such filesystems will not be mountable with
2.4 kernels at all. It is not possible to change this value
after the filesystem is created.
You can use the argument '-I 128' when using the mke2fs command to change the inode size to 128 bytes. If you setup your partitions beforehand, it's up to you to figure out the correct command. However, if you just want to hack the SeTpartitions script that the 'setup' script uses during Slackware installation, read on.
To hack the SeTpartitions script, you just have to edit two lines (though I think the second line is unnecessary -- but I changed it anyway). Start your system with the Slackware install CD/DVD inserted and press enter at the boot: prompt to boot into the installer. Login as root. Enter the following command:
Code:
vi /usr/lib/setup/SeTpartitions
I'm assuming you know how to use vi (I think it is the only editor included in the live install environment). If not, google 'vi' and you should find a good tutorial. Go down to the line that says
Code:
mke2fs -j -c $1 1> $REDIR 2> $REDIR
(in the make_ext3 section) and change it to
Code:
mke2fs -j -c $1 -I 128 1> $REDIR 2> $REDIR
Also, change the line
Code:
mke2fs -j $1 1> $REDIR 2> $REDIR
to
Code:
mke2fs -j $1 -I 128 1> $REDIR 2> $REDIR
Only one modification is really required, but since I don't know whether you will be checking for bad blocks or not (the -c option), both modifications are safer. Then run the setup script and select ext3 (and be sure to format the partition). Everything should work properly after that, and hopefully NTLDR will be able to boot your Slackware installation.
A quick test in a VM showed that the old Slackware 12.0 grub successfully booted my Slackware installation, and as far as I know the 12.0 grub has not been patched to support the 256 byte inode size. The 12.1 grub also worked (as expected).
Ouch, that looks brutal. I wish you good luck with it. I think it would be a great resource if you could post what you did after you finish it all (if you have time, of course). You never know when you'll come across a CD drive-less, USB-less, network-less PC that you want to install Linux on.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.