LinuxQuestions.org
Download your favorite Linux distribution at LQ ISO.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 07-03-2013, 08:36 PM   #1
Ser Olmy
Senior Member
 
Registered: Jan 2012
Distribution: Slackware
Posts: 3,340

Rep: Reputation: Disabled
kernel 3.10.0 won't run initrd (Slackware 14.0)


I'm having a weird problem with kernel 3.10 and an initrd created by mkinitrd. When I boot the system, it hangs with the following error.
Code:
[    0.707227] failed to execute /init
can't run '/etc/init.d/rcS': No such file or directory

Please press Enter to activate this console.
Please press Enter to activate this console.
Please press Enter to activate this console.
Please press Enter to activate this console.
(Pressing Enter activates nothing, btw.)

After going through config options to see if I was missing something initrd-related (the .config was migrated from 3.9.9 with make oldconfig) and finding nothing obvious, on a whim I tried creating a symlink from /etc/init.d/rcS to /init inside the initrd. It worked.

Well, sorta; init does start and gets as far as the switch_root command at the bottom of the script, which spits out the help/usage page rather than actually switching the root FS. I added a debug statement to show the parameters, and they look fine.

The initrd was created by the following command:
Code:
mkinitrd -c -k 3.10.0 -f ext4 -r LABEL=root -m hv_vmbus:hv_storvsc:mbcache:crc16:ext4 -u -o /boot/initrd-3.10.0.gz
Yes, it's a VM running under Hyper-V. Don't ask.

Has anybody tried kernel 3.10 with an initrd? Any ideas why I'm seeing this odd behaviour?
 
Old 07-04-2013, 01:08 AM   #2
volkerdi
Slackware Maintainer
 
Registered: Dec 2002
Location: Minnesota
Distribution: Slackware! :-)
Posts: 2,504

Rep: Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461
You need to build your kernel with CONFIG_BINFMT_SCRIPT=y.
 
6 members found this post helpful.
Old 07-04-2013, 08:59 AM   #3
Ser Olmy
Senior Member
 
Registered: Jan 2012
Distribution: Slackware
Posts: 3,340

Original Poster
Rep: Reputation: Disabled
Thanks, that did the trick. I really should have spotted that option.

According to the help text, without this option the kernel won't run scripts directly. Unless, apparently, you create a symlink to the script, in which case it decides to run it anyway.
 
  


Reply

Tags
kernel 3.10 initrd



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] initrd / generic kernel --> won't boot. What am I forgetting? chexmix Slackware 6 09-30-2012 02:43 PM
Slackware 12.2 won't boot to initrd ryerke Linux - Software 4 01-12-2009 12:52 AM
Choosing a kernel for Slackware 12 and is an initrd needed? Lufbery Slackware 26 01-22-2008 07:52 PM
slackware 10.2, kernel 2.6.16, and initrd alphisb0t Slackware 3 03-22-2006 01:58 PM
New Kernel 2.4.22 won't make initrd jon1591 Linux - Newbie 3 12-13-2003 02:09 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 02:53 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration