Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Linux Software

Getting Grubby & Demystifying Linux Booting 105

davidmwilliams writes "Linux users can boast long times between reboots, but even so, the startup screens will grace your display at some time. Here's just what your computer is doing during this process, what the messages mean, and how you can take control."
This discussion has been archived. No new comments can be posted.

Getting Grubby & Demystifying Linux Booting

Comments Filter:
  • Redhat specific (Score:3, Informative)

    by Janosh ( 777222 ) on Sunday October 14, 2007 @12:45PM (#20974731) Homepage
    The aritcle is wery redhat specific.
    • Re:Redhat specific (Score:4, Informative)

      by freeweed ( 309734 ) on Sunday October 14, 2007 @12:48PM (#20974751)
      Yeah. chkconfig, eh. :)

      It's also rather light on content. 3 pages to say "yeah, this runs, and a bunch of other stuff that I won't talk about happens".

      This might have been useful in 1999.
      • by dbIII ( 701233 )

        This might have been useful in 1999.

        About then (or maybe a lot later) the only grub documentation was: GRAND UNIFIED BOOT LOADER - we rox and LILO sux. Thankfully there's a lot more than that now and even a man page (was "info" only for not invented here reasons for a while).

    • Re: (Score:2, Informative)

      by vidarlo ( 134906 )

      The aritcle is wery redhat specific.

      You must be kidding

      And yet the article claims

      Linux users, almost by definition, like to get their hands dirty, and understand how their computer really works under the hood.

      The article won't help, however... It is not nearly detailed enough for learning anything.

      • Windows refugees (Score:5, Interesting)

        by Harmonious Botch ( 921977 ) * on Sunday October 14, 2007 @01:09PM (#20974865) Homepage Journal

        The article won't help, however... It is not nearly detailed enough for learning anything.
        For the recent immigrants from Windows, it is a great roadmap.
        • by NeverVotedBush ( 1041088 ) on Sunday October 14, 2007 @02:23PM (#20975373)
          And there are apparently quite a few Windows immigrants. More how-to and helping them get their Linux-legs is a good thing. And they will need all levels of articles too.
          • by fbjon ( 692006 )
            In that vein, wikipedia has an article on the Linux startup process. [wikipedia.org]
          • Re: (Score:2, Insightful)

            by crhylove ( 205956 )
            Here's what would help Windows immigrants:

            An easy way to record video and post to YouTube.
            An EASIER way to make mp3s out of a CD (out of the box).
            Distros defaulting to the obvious preferable applications: Thunderbird, VLC, etc.
            Some more decent games besides Urban Terror and Emulators.
            More and Better Hardware companies supporting Linux.
            Easy and Fast Videoconferencing via speex and h.264
            Not needing to configure Grub at all.
            Also (in Ubuntu), not having an infinite list of growing kernels to choose show up in G
        • by fat_mike ( 71855 )
          Either you are the author, a friend of his, or an intern at NEWESTINTERNETBASEDCOMPUTERHARDWARESOFTWAREHATEMICROSOFTLOVELINUX.com

          That article was shit. If you think that was helpful then I guess the Joy of Sex was a real eye opener for you.
        • Wouldn't they be Windows emigrants?
        • For the recent immigrants from Windows, it is a great roadmap.

          We're refugees, not immigrants, you insensitive clod. We're gonna be requesting political asylum soon.

    • by Procasinator ( 1173621 ) on Sunday October 14, 2007 @12:59PM (#20974815)
      Be wery, wery quiet.... I'm hunting grubby webhats!
    • by fymidos ( 512362 )
      ... while at present there are many more ubuntu users who might actually be interested in this information.
    • The aritcle is wery redhat specific

      It's all the fault of that screwy wabbit.

    • do it from scratch (Score:3, Informative)

      by doti ( 966971 )
      A good way to know about the boot process is to install Linux From Scratch [linuxfromscratch.org].

      I always got annoyed about things that run on my computer that I don't know what it is, and if removing it would break anything. LFS clarified for me many dark-spots about the boot process. I even ran the installed system for almost a year, but it got harder to keep up-to-date with package versions, and I came back to using a normal distro.
    • by Anonymous Coward
      Sure it mentions a few examples that are picked from RHEL but most of the stuff is very general. Never used RHEL and had no problems perfectly understanding the article.
  • Bad article (Score:5, Informative)

    by vidarlo ( 134906 ) <vidarlo@bitsex.net> on Sunday October 14, 2007 @12:47PM (#20974743) Homepage
    Nothing new, and the author has apparently not used any other distros than the Redhat based ones. Nor has he heard about lilo or syslinux. First page of article looks like the man page of grub, listing the format for the menu.lst file of grub. Since it mentions selinux and redhat, I bet most of that page is copied more or less in verbatim from Redhat's manual. And since such a short article is split over 3 pages, and last page is laden with icons for digg, slashdot etc. I believe this is just an attempt to get some readers... Just don't bother to RTFA!
    • Re: (Score:3, Informative)

      by dkleinsc ( 563838 )

      Just don't bother to RTFA!
      I don't think you have to worry: we won't RTFA anyways.

      But seriously, it's not that confusing: BIOS finds and starts grub, which finds and starts kernel, which finds and starts init, which finds and starts everything else listed in the correct sets of /etc/init.d scripts.
      • Re:Bad article (Score:5, Informative)

        by KillerBob ( 217953 ) on Sunday October 14, 2007 @01:56PM (#20975199)
        Yeah, but that's very *very* distro-specific.

        Slackware-based distros, for example, use runlevel 4 for X instead of RL 5. They also have *all* init scripts in /etc/rc.d, and the scripts are started on basis of whether they're executable. Anything runlevel-specific, like login managers and X servers are then loaded from /etc/rc.d/rcX.S where X is the runlevel.

        that's to say nothing of distros that aren't even using SysV init, like the current version of Ubuntu and anything BSD-based.

        It was pretty obvious that the author hasn't done his research, and that it's a pretty poor attempt at explaining stuff. I was rather hoping for an article where the author would actually parse the output of dmesg and explain, line for line, what everything meant. That would actually be informative. Instead, he gave information that was specific to RedHat Linux, a lot of which doesn't apply to other distros. I wouldn't even be complaining so much, except that he didn't even bother to write it specific to the most popular Linux distro. RedHat was the most popular when I started with Linux, over a decade ago. These days, that crown belongs to Ubuntu. If you're going to write something distro-specific, at least write it for the most popular one.

        Obligatory disclaimer: The last version of RedHat that I used was RedHat 6.0. When 7.0 came out, I switched to Slackware. I now use Zenwalk (slack-based, formerly MiniSlack, http://www.zenwalk.org/ [zenwalk.org]), having switched at Zenwalk 2.4. I have tried other distros, including Ubuntu, and still prefer Slackware-based distributions, and I find that the Zenwalk community and package management tools are the best of that breed.
        • I was rather hoping for an article where the author would actually parse the output of dmesg and explain, line for line, what everything meant.
          There's a lot of comments here which discuss how much this article sucks - and I tend to agree. However, I really am interested in learning more about the boot process and really what all that dmesg output means. Does anyone have a link to an article that Slashdot can deem "worthy?" I'd be quite interested in reading it. ---Alex
          • Does anyone have a link to an article that Slashdot can deem "worthy?"

            This one's [comptechdoc.org] a bit elderly, but I found it handy for wrapping my head around Linux.

        • And Ubuntu doesn't have an /etc/inittab either...
      • You could always do it "old style" and dd the kernel image to the first disk sector.
    • Re: (Score:3, Informative)

      by weeboo0104 ( 644849 )
      I'm not sure I agree about this being a bad article. Sure the things the author goes into are things that are second nature for experienced linux users, but people who have only been exposed to Red Hat or Fedora might not be familiar with all of the logs that are collected in /var/log and might not really know just how useful grep and dmesg can be. It might not warrant it's own webpage, but I hope the author considers posting it as a sticky to Linuxquestions.net [linuxquestions.net]
  • No Upstart? (Score:3, Informative)

    by dzelenka ( 630044 ) on Sunday October 14, 2007 @12:56PM (#20974799) Journal
    How can you have an article about init without even mentioning upstart? Ubuntu has been using it since 6.10.
    • How can you have an article about init without even mentioning upstart? Ubuntu has been using it since 6.10.
      Because nobody can find any documentation on upstart?

       
      • Re:No Upstart? (Score:4, Informative)

        by Simon (S2) ( 600188 ) on Sunday October 14, 2007 @01:43PM (#20975115) Homepage

        Because nobody can find any documentation on upstart?

        I [ubuntu.com] think [ubuntu.com] you [ubuntu.com] didn't [ibm.com] do your homework [ubuntu.com].
        • I gave the parent the benefit of the doubt, and assumed he meant that the article's author couldn't find any upstart documentation to cut and paste in. You know, sarcasm about the originality of the article.

          This whole topic gave me the nudge to go back and read up on upstart. It really does have the potential to be either a colossal mess or a magical cure. I look forward to seeing how it plays out.
          • I gave the parent the benefit of the doubt, and assumed he meant that the article's author couldn't find any upstart documentation to cut and paste in. You know, sarcasm about the originality of the article.

            Oh yes. Now that you say it maybe it is like that. Sorry Mr. Smith. I didn't mean to be mean.
  • Pathetic (Score:4, Informative)

    by Anrego ( 830717 ) on Sunday October 14, 2007 @01:06PM (#20974855)
    That article was just pathetic.

    The concept to write an article about the boot process actually sounds cool, seeing as how there is quite a bit text that whips by on start up which many (even long time) Linux users don`t understand.

    This article however, was a really lame attempt to do so. It was very general, without even so much as a sample of text from dmesg. And what was there was very distro-specific. It just provided a quick over view of the major parts of the boot process, and didn`t even do that very well.

    Anyway, as someone said before, don`t even bother reading TFA..
    • I fully agree with you. The article is filled with inaccuracies and misleading information. The writer clearly doesn't understand fully what's going on under the hood.

      To bad so many people will read this and end up with a biased understanding of the Linux boot process....
    • RTFA?
      What?
      Am I supposed to do that?
      I have just been responding to what I misread in the summary.
      Someone should have told me when I joined, I never would have figured it out on my own... oh the wasted comments I have left. :^)
    • It leaves me to wonder if there are any good Linux Wikis out there that explain things like the boot process clearly and simply, largely without all the technical language and recursive definitions. There's plenty of man pages for those who can parse them, but as far as getting more users to Linux, I'd think this would be quite helpful.

      It may not bring "the average user", but it may help the curious yet non-power user be a little less afraid of Linux on the desktop.

      For myself, I think I could surf such
      • It leaves me to wonder if there are any good Linux Wikis out there that explain things like the boot process clearly and simply, largely without all the technical language and recursive definitions. There's plenty of man pages for those who can parse them, but as far as getting more users to Linux, I'd think this would be quite helpful.

        Without looking, I would guess the Gentoo Wiki. Even when I'm looking for information on other distros, Google often turns up hits to Gentoo Wiki.

        (I also ran Gentoo for
    • While I agree that the article is short on details, I would not characterize its content as pathetic. It is just an overview of the boot process for Redhat. It would be improved by adding links for more in depth information on runlevels and init.

      By it being posted on Slashdot, it may help some of the Windows users who think Linux is hard to at least try a dual boot. If nothing else, the fact that Windows can only boot in Safe Mode or Normal with limited customization, while Linux has different boot loade

  • It's Web 2.0 (Score:5, Insightful)

    by SignupRequired ( 1165001 ) on Sunday October 14, 2007 @01:12PM (#20974883)

    Ever since somebody decided "Web 2.0" existed, there's been a big slew of these awful new "IT stuff" sites that look like they've been designed using a checklist of Web 2.0 mainstays and buzzwords. User ratings? Check. Submit news? Check. Blogs? Check. Annoying multipage articles? Check. Attention whoring abuse of social bookmarking sites at the end of every article? Check. More banner ads than content on any given page? Check. User comments? Check. Half of it is actually a decade old and was pioneered by Slashdot, but thanks to the magic of buzzwords, everything old is new.

    And with all of this stuff in place, they invariably fail to even attempt the final hurdle: creating decent content. Instead of picking one of the two available routes (create good content vs Slashdot-style aggregation), they seem to like to go halfway, with awkward "stories" like this half-boiled Red Hat GRUB HOWTO masquerading as "Breaking News".

    Sure, maybe these are probably all honest people trying to kick-start their journalism careers. But if so, what the hell are they doing throwing this crap around? Even Katz was more interesting than this trash.

    • Even Katz was more interesting than this trash.
      Yes, in the sense that chewing off your own genitalia while someone pours bleach into your ears is more interesting than watching paint dry.
  • by Simon (S2) ( 600188 ) on Sunday October 14, 2007 @01:37PM (#20975075) Homepage
    As sad in previous posts this Article is about init, which is about to be obsoleted by upstart (at least in ubuntu and debian, but i think others will follow). Upstart can work as a drop-in replacement for init, and has done so in Ubuntu 6.10. Here [ibm.com] is an old but nice Article about Linux Booting, that includes init and upstart.
    • Re: (Score:3, Informative)

      by JackieBrown ( 987087 )
      I still am not sure that upstart will be in Debian anytime soon.

      It just seems to sit in experimental. The fact that sysvinit stays marked as required and tries to re-install itself and remove upstart doesn't help.

      Grub2, on the otherhand, has been offered for the past couple months during installation.
  • by schwaang ( 667808 ) on Sunday October 14, 2007 @01:44PM (#20975121)
    By way of making lemonade, here's a post by an Intel engineer to ubuntu-kernel-devel about a proposed grub patch [gmane.org] that would make resuming from hibernation much faster:

    Below is the work theory of our "grub fast resume" patch
    The normal swsusp2 resume process is:
    "grub" -> "kernel" -> "initrd" -> "resume from the hibernate"
    Our "grub fast resume patch" can work as below:
    "grub" -> "resume from hibernate"

    Our "grub fast resume" patch can resume the saved hibernation image from
    grub directly that will save much time to load and run kernel and
    initrd. The patch does not change any kernel code.


    [I use hibernate on Fedora all the time, so I'd love to see a patch like this go in to Fedora's grub. Thing is, the patch is apparently based on swsusp2, and I'm not sure Fedora's kernel uses the swsusp2 version of hibernation.]

    In a reply to the post, a debian guy points out that grub is legacy at this point, and that they are looking to move to grub2.
    • Re: (Score:3, Interesting)

      by pintpusher ( 854001 )
      That's a pretty cool little bit. It only makes sense, if the entire system is imaged onto the harddrive, why not just pull up that whole image from the bootloader and run it from there. Obviously there's more to it than just that, but still its a concept that makes sense.

      I see potential problems though if you've got changing hardware. By loading the kernel, you can reprobe the hardware (haven't watched a resume in a while to see if it actually does, but at least the mechanism is there). If you just drag in
    • by shaiay ( 21101 )
      excellent swsusp2 for fedora is available from http://mhensler.de/swsusp/ [mhensler.de] he has a yum repository and does not lag much behind the "official" fedora kernel updates

  • I'm seriously asking this question as I've tried Grub on Via KM800 boards, No Splash screen available, Intel DQ965GF (new board with SATA only) couldn't finish booting.

    So what does grub offer? The Via K?800 problem has been unresolved over the last 5 years and there's no reason not to have fixed it by now. Hell if I was repurposing old windows machines to Linux, more then likely they'd have that damn chipset.

    On the new Intel chipset, as stated grub couldn't even finish booting. Wheres the kernel couldn'

    • Hate replying to my own posts but got to clarify a few things:

      Grub couldn't complete booting on a system with either SATA or IDE drive installed and yet it could install itself into the mbr from a running kernel

      The VIA K8 chipset problem is a known issue with the splash images that's over 5 years old and still unsolved

      So the question once again What Does Grub offer over Lilo?

      • Re: (Score:3, Interesting)

        by VGPowerlord ( 621254 )
        I'm sure I could go into more detail by doing a little research, but in short:
        GRUB is intended to be more generic than LILO and thus runs on more OSes and platforms. The developers probably got disgusted with dealing with LILO, SILO, PALO, boot0, etc... on different machines.
    • Grub has a console available right from the boot menu.

      That means that as long as grub works at all, you can load and boot any kernel from any disk with a FS grub can recognize. This is really great for the cases where for example there's a typo in the configuration and the kernel's name is wrong in the file, or it's been mistakenly deleted, but there's an old kernel on the disk not listed in the config file.

      LILO, on the other hand relies on a map file that tells it where on the disk the kernel is. That mean
      • Re: (Score:3, Insightful)

        by KillerBob ( 217953 )
        Part right, part wrong.

        LILO copies a kernel image to its boot area. It doesn't matter if you change the kernel on the hard drive, because LILO's installed image won't change until you invoke the "lilo" command. I've actually seen LILO successfully boot a kernel and initrd (which panicked) after I had formatted a drive and removed all of the partitions, because I hadn't bothered to wipe the MBR.

        With GRUB, however, it's live. If you make a change to your menu.lst file, that change will take effect immediately
        • by DaleGlass ( 1068434 ) on Sunday October 14, 2007 @07:24PM (#20977131) Homepage

          LILO copies a kernel image to its boot area. It doesn't matter if you change the kernel on the hard drive, because LILO's installed image won't change until you invoke the "lilo" command. I've actually seen LILO successfully boot a kernel and initrd (which panicked) after I had formatted a drive and removed all of the partitions, because I hadn't bothered to wipe the MBR.


          No, it doesn't. You can read the LILO technical documentation if you don't believe me.

          The fundamental thing about LILO is that unlike Grub, it's incapable of actually reading the filesystem the kernel is on. The way it works is that the boot sector contains the location of the map file, and the map file contains the list of sectors that make the kernel. There's no "boot area" as such. It's trivial to verify that the map file isn't the kernel, as it's tiny (78KB on one of my boxes)

          The reason LILO booted for you is simply because a format didn't overwrite the data areas of the disk. Since LILO doesn't read the FS itself, it doesn't matter to it that all the metadata is gone. So long the boot sector is there, the map's data is there (even without metadata indicating the filename, etc), and the kernel's data is there, it'll boot.

          LILO however will completely mess up if you are unlucky. Overwriting the kernel without calling "lilo" afterwards might work if it just happens to write over the same sectors and uses the same number of them. Or maybe the new kernel is written somewhere else entirely, in which case you'll boot the old kernel and it'll break later when something reuses the space taken by the old version.

          The recovery console is useful, but as I'm often tinkering with things, I prefer to have a bootloader that's static, and won't change until I explicitly tell it to. There's also the "lilo -v -t" command to test when I make a change to /etc/lilo.conf.


          The problem with LILO is that you can screw it up without touching LILO itself. For example, delete the active kernel. It'll probably work anyway, right until something reuses the space previously taken by the kernel. Then boom, doesn't work anymore. With grub it doesn't matter if you make a bad config file, or delete a needed kernel. So long there's a kernel on disk, grub can boot it.
        • Re: (Score:3, Informative)

          by swillden ( 191260 ) *

          LILO copies a kernel image to its boot area.

          No, it doesn't. When you run lilo to install a kernel, it finds out which set of physical disk blocks contain the kernel image and stores the address of those blocks in the boot area. At boot time, it loads from that address. Note that if your file system were in the habit of moving files around, it might break LILO.

          I've actually seen LILO successfully boot a kernel and initrd (which panicked) after I had formatted a drive and removed all of the partitions, because I hadn't bothered to wipe the MBR.

          It didn't matter that the partitions were removed because LILO doesn't know or care about partitions. It was able to load the kernel because the disk blocks containing the kernel hadn't

    • I think historically, Grub's command line was convenient to fix a non booting system without using a livecd or floppy but as I understand there isn't much you can't do with Lilo these days.

      Anyone can answer this better? - I'm no bootloader expert :)
    • Well, for one thing I've found it's nice just to be able to update options, etc without having to re-write over my boot-record every single time. Grub writes to the boot-record once, and - provided that you don't change the location of the config file/partition/etc - you can then just update the menu.lst file on the config partition without needing to reinstall the bootloader into the MBR with every new kernel or change.
  • There are so many ways to boot linux, all different and interesting:

    - the standard way, from the boot sector of your hard drive
    - the live-cd way, from an eltorito image on a cd-rom or dvd-rom
    - the original way, from a floppy drive
    - some machines let you boot from a zip drive
    - from a usb key, which could be any of the above under the covers
    - over the network, using pxelinux
    - out of rom

    This article has no interesting content whatsoever.
  • Sigh. More climate change deniers.

    Look kids, it's time to grow out of willy-waving contests about how long you can keep it up, and turn the ****ing thing off when you're not using it.
    • Re: (Score:2, Interesting)

      by Ant P. ( 974313 )
      That would be a GREAT idea, if only you showed us your secret way of resuming from cold boot within 0.5 seconds when the machine recieves a tcp syn packet on port 80.
    • I'm not

      willy-waving

      bragging about uptimes even though I leave my system on 24/7. It's because I'm running 2x Folding at home Clients.

      As to climate change, hell yes we're suffering climate changes but are the man-made or because we've entered the 50 year increased solar activity period of the 100 year cycle? The other question is who pays for the demanded changes and will they do any damn good? The damn research has gone about finding a solution the wrong way.

      Instead of looking at how to cut energy demands by

      gettin

    • Some of us use the things for stuff like serving web pages. In that case a couple of hundred days between power cycles or reboots is a pretty short time.
  • It's gonna first run init innit?
  • Seriously, why do people post such crap on slashdot?? what next, a review for "bash for Dummies"? "guide to pushing a power button"?
  • You want to understand the linux boot process better the best way is to build yourself your own mini linux boot disk.
    All you really need is busybox(gnu tools), the c library and linux kernel. It doesn't do much, but it will help you learn how it works.
    It's a lot more interesting than reading that article.

The most difficult thing in the world is to know how to do a thing and to watch someone else doing it wrong, without commenting. -- T.H. White

Working...