SlackwareThis Forum is for the discussion of Slackware Linux.
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.
Introduction to Linux - A Hands on Guide
This guide was created as an overview of the Linux Operating System, geared toward new users as an exploration tour and getting started guide, with exercises at the end of each chapter.
For more advanced trainees it can be a desktop reference, and a collection of the base knowledge needed to proceed with system and network administration. This book contains many real life examples derived from the author's experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to try out things on your own.
Click Here to receive this Complete Guide absolutely free.
I do it after the first reboot, using /usr/share/mkinitrd/mkinitrd_command_generator.sh as a guideline. Is there any advantage to doing it before the first reboot?
One less reboot, since you'd have to configure LILO accordingly. When you have more than twenty machines to install (as I do right now in a school), this sort of detail is a timesaver. (Thus I can spend the time saved playing minesweeper or posting on LQ )
afaik you need to build an initrd.gz also for LVM; at least if your entire setup is on LVM. iirc I would get kernel panics if I didn't build the initrd before the first reboot... A simple mkinitrd -k <kernel version> -f <filesystem> -r <root device> -h <resume from hibernate device> -L -o <outputfile> is all that's needed, but still, it's needed.
Exactly right. I should have made it clear that I encrypted /, /home and swap. Even booting huge.s an initrd is needed. In addition, following the recovery instructions to boot using "root=/dev/sdax" will not work if root is encrypted. The / volume must first be decrypted and made active then /proc and /sys mounted before lilo can be used to write a new lilo.comf file.
I'm pretty sure the generic kernel+initrd was solving the problem of on-demand module loading with configurable options. The huge kernel solved installation with a single monolithic kernel rather than having to ship several but its purpose in a running system has always been as a backup.
As to the question at hand, if you're using LUKS encryption then you're expected to read README_CRYPT.TXT anyway, which gives you more than enough information including how to create a satisfactory initrd. I think that file is more appropriate since it is more specific (and thus trumps the more generic README.initrd). Just my opinion though.
Yes, The README_CRYPT.TXT is excellent and your point his well taken, T3slider. However, a sentence in README.initrd would remind anyone to use the instructions in the README.CRYPT.TXT instead if they are using luks and LVM. I purposely used the mkinitrd command in README.initrid upgrading from RC2 to RC3 to see if it would break my test box which it did and to make sure I could recover from a non-bootable encrypted LVM if needed.
Choosing a kernel was, at one time, included originally in the Slackware installation, but the scripts were removed possibly because it was confusing to do so and using the generic kernel with initrd.gz was considered a customization feature that often proved unnecessary for common systems.
Plus with the addition of rerunning LILO each time you reconfigured the kernel, you would also have to regenerate the initrd.gz with the specific modules you needed if you upgraded the kernel. Huge eliminated the need to hunt down and trial and error solve which modules were needed at load time so it became the default.
The last time I saw this was between releases 10.0 and 13.0 before EXT4 was finalized as the recommended default Slackware filesystem. Haven't seen it since.
From -current's CHANGES_AND_HINTS.TXT (and as far as I know CHANGES_AND_HINTS.TXT from at least 12.0, which introduced the huge/generic split):
Use one of the provided generic kernels for daily use. Do not report
bugs until/unless you have reproduced them using one of the stock
generic kernels. You will need to create an initrd in order to boot
the generic kernels - see /boot/README.initrd for instructions.
The huge kernels are primarily intended as "installer" and "emergency"
kernels in case you forget to make an initrd.
The generic kernel replaced the myriad of specific kernels shipped with pre-12.0 Slackware, and was always meant to be used as the standard kernel. Even in 12.0's CHANGES_AND_HINTS.TXT it mentions the huge kernel's use as primarily an install kernel. Huge has always been the default kernel because it requires no setup, but it has always been advised to switch to the generic kernel. An initrd should be nothing new to those using post-11.0 Slackware.