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.
Using Slackware 12, I am trying to merge a bootsplash.org created (initrd.splash) file, with the standard initrd.gz slackware kernel startup file?
As yet I have not had any success in this and was wondering if anyone could lead me in a direction to achieve this?
I had previously created an initrd.splash file, patched my kernel, configured startup progressbar scripts and added to lilo all necessary commands needed to have a lovely Slackware12 startup bootsplash screen.
However because of another issue, documented here;
I was forced to create a system initrd.gz file to fix my system.
Hi gnashley, thank you very much for your response.
I have run the cat initrd.splash >> initrd.gz command and updated lilo;
It partially worked; (the splashscreen appeared), but then the system kernel panicked (unable to load reiserfs?).
I tried the reverse, cat initrd.gz >> initrd.splash to see if it would make any difference, but same result
Do you have any idea why this is happening?
Also, would you know if there is any way I can extract the initrd.splash file and place the contents of it into the /boot/initrd-tree, and remake the initrd.gz with the new contents?
I think this is close to success, but I am not sure how to proceed.
One way round it might be to re-compile the kernel with support of your disc format built in so getting around the need for initrd.gz. I suppose there are good reasons why the standard non-huge kermels do not include it but I do not understand them and one of the first things I did after installation was recompile the kernel with ext3 built in.
Ok, I've tried your recomple suggestion now.
The result; it re-visited the original problem of not being able to access the root filesystem through KDE /media, (which was why I had to make the initrd.gz file in the first place).
I've since had to revert back to the standard generic kernel/initrd.gz combination to get /media working again.
This is a very frustrating glitch, can anyone offer any suggestions as to how it is possible to run the standard slackware initrd.gz (to enable /media access), and be able to incorporate the initrd.splash file to have a nice bootup splashscreen?
Accessing /media with KDE has nothing to do with either bootsplash or your initrd. If you are seeing the bootsplash image, then that part is working okay. If your initrd needs special content like modules needed for the root filesystem then that's another matter.
Using bootsplash requires you to modify the bootscripts for proper functioning. There are many posts here about setting it up properly and the gentoo forums may also help you.
Accessing /media with KDE has nothing to do with either bootsplash or your initrd.
Actually it does, Slack12 seems to have a small glitch in some systems accessing /media through KDE, this was resolved by changing to the generic kernel and creating an initrd.gz, as documented here
This fixes the /media issue, but creates the new problem of not (now) being able to use the existing, fully working bootsplash (initrd.splash), as lilo will only allow the use of one initrd at a time.
So there are two options:
1. How can the working initrd.splash file be extracted into it's component files?
This would enable me to inject it's contents into my /boot/initrd-tree filesystem and then recreate the initrd.gz file with the bootsplash incorporated.
2. How can I inject the reiserfs module into the working initrd.splash file?
Either method should enable the system to work correctly and have bootsplash enabled.
You could compile your own kernel and all of your problems would be solved (ie you would not need to depend on an initrd.gz file to boot up so you could use the initrd.splash instead to get that nice eye-candy). I personally think the discussion is kind of stupid, but I guess that's just me. I don't tend to see my system booting up every three seconds and it doesn't take that long, so I really don't care what I'm looking at.
I don't use bootsplash myself, but I did work on getting it going once and had the same problem that I was needing/wanting to use an initrd to boot. After a lot of searching I found a post somewhere that suggested what I did.
If I understand rightly, the initrd.spash is just raw image information which is loaded into the initrd space in RAM(initrd files can be anything). It is expected to be the last data in the initrd, hence it should concatenated onto whatever existing initrd file. I forget now whether before or after gzipping. But it seems to me that you nearly have it working. Try unzipping the initrd.gz and catting the initrd.splash to that and then gzip the whole thing and see if it works.
Thanks for your response, your idea sounds very promising, but as yet I have not been able to get it working correctly.
I was thinking that I might be inputting incorrect syntax.
(If I record what I have done, could you let me know if you see any obvious errors please).
What I have tried so far;
In a root shell, I copied the slackware /boot/initrd.gz file to my /build directory, and then changed to the /build directory.
then I typed 'gunzip initrd.gz' ;(this created the file /build/initrd).
then I typed 'cat initrd.splash >> initrd' ;(this made the initrd bigger so I know it did something).
then I typed 'gzip initrd' ;(this made a new /build/initrd.gz)
After that I backed up my known working, standard slackware initrd.gz file, and copied the new /build/initrd.gz file to /boot/initrd.gz (overwriting the original).
Finally I ran 'lilo -v'
On the next reboot, the system did not display the splash screen, and then the system failed to boot with a FS warning ;(I read that as reiserfs did not load correctly).
Can you see any errors in what I typed? Do you think I need to do anything differently?
Thanks for your response, I tried your suggestion of:
'zcat initrd.gz >> initrd.splash'
After a lilo update and a reboot, the system displayed a splash screen (good) and did actually load all the way into the desktop (better), but once in KDE, the system could not access the slackware partition again through /media; (the original problem and reason I had to create the initrd.gz in the first place).
This is truly bizarre?
What I am doing now is attacking this from another direction;
I've downloaded the 18.104.22.168 kernel sources and am in the process of compiling fresh to see whether I can get the system to access the root filesystem without the need for an initrd.gz file.
If the system works on the new kernel without the initrd.gz, it will be a snap to simply reload the initrd.splash file and have everything happy again.