Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
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.
Distribution: Hardy (Gnome on Ubuntu 8.04) on Compaq N600c laptop
Posts: 323
Rep:
Fun with Linux
Okay, I'm tired of dwelling in this area of the LQ forums...I need to know more. I'd like to be able to look at a Linux OS the way I look at a network infrastructure or, say, a 1995 BMW R1100GS...whatever that means.
Anyway, can anyone point me to a good starting point--a tutorial, how-to, etc.--where I can start putting together an absolute bare-bones version of linux from scratch? Something only a few Mb or less--basically a command prompt and not much more. I'd really like to understand all that goes on under the hood, rather than resign myself to a pusher of buttons and watcher of flashing lights.
Okay, I'm tired of dwelling in this area of the LQ forums...I need to know more. I'd like to be able to look at a Linux OS the way I look at a network infrastructure or, say, a 1995 BMW R1100GS...whatever that means.
Anyway, can anyone point me to a good starting point--a tutorial, how-to, etc.--where I can start putting together an absolute bare-bones version of linux from scratch? Something only a few Mb or less--basically a command prompt and not much more. I'd really like to understand all that goes on under the hood, rather than resign myself to a pusher of buttons and watcher of flashing lights.
There was a time (early 1992, at least) when there were no distros and everyone had to build from scratch. Download a kernel, burn it to a floppy, run a hex editor on it to change the bits that point to a root device, etc., etc., etc.
I came across a box full of my old floppies from those days and played with them long enough to find that many were no longer readable. I bet there are archives with old rootdisks and bootdisks, maybe even old gccs and usertools (all the binaries have to be from the same era or else library incompatibility ruins everything).
Gentoo is a bit easier then LFS and has some of the best documentation out there for linux. you still build the system yourself and learn a ton. it takes a while to install (just did one in about 3 days.) you want a stage 3 install with the 'minimal' cd. let me know if you get stuck.
If LFS or Gentoo get too heady for you, ArchLinux is another, similar way to go.
I switched to it after 3 years of Fedora; I too felt that I had outgrown the idea of a prefabricated Linux experience. I tried LFS first; excellent way to learn the nuts 'n' bolts but I didn't have the patience to do a from-scratch build for a production system. Gentoo definitely has its fans but, and in NO WAY should this be construed as a blanket statement, the users I've encountered seem rather aloof in an old-school-BSD way; YMMV.
Anyway, can anyone point me to a good starting point--a tutorial, how-to, etc.--where I can start putting together an absolute bare-bones version of linux from scratch? Something only a few Mb or less--basically a command prompt and not much more. I'd really like to understand all that goes on under the hood, rather than resign myself to a pusher of buttons and watcher of flashing lights.
Arch linux gives you a base system and you build from there. The wiki page explains how to install the rest of the stuff ( i.e xorg, alsa, kde,gnome or other desktop, etc...)
But if you really need to know the guts of linux then you need to use LFS or gentoo.
If I were you, I would do it this way. Have one fully functional linux distro for everyday use. Next, install LFS or gentoo to a separate partition, to another hard drive or use a virtual machine. I would recoomend a virtual machine because you can still be in your main distro with net access and get additonal info to further build the LFS/gentoo system. And if you make a misstake building the system you can delete the virtual machine file and start again.
Try building a project from Slackware's online packages instead of installing with the iso. It's a pain in the *** but I hope it will all work out. Check out the link in my sig to see what I'm talking about.
Distribution: Hardy (Gnome on Ubuntu 8.04) on Compaq N600c laptop
Posts: 323
Original Poster
Rep:
Crikey
...and yikes too.
LFS would have been...aggravating, if I hadn't been using linux (or should I say, "GNU linux") already for some time. Still looks like it will be a good exercise.
My first stumbling block:
It instructs me to download patches--but not necessarily. It states that they are "required" and "will be needed". Superb. Where and in what form? My assumption is that they should be delivered to the sources directory like the package files. Is this correct? Also, they don't look executable as is...how and when will they be used? I've browsed ahead but haven't found any section that seems to apply the patches...are they automatically applied during the compilation process?
My suggestion to LFS would be this: as with some of the items they've linked to definitions, their should be links to explanations of what's going in a given step, what it's function is, and how it fits into the grand scheme of things. Maybe a good next project for me when I have answers to these my self.
LFS would have been...aggravating, if I hadn't been using linux (or should I say, "GNU linux") already for some time. Still looks like it will be a good exercise.
My first stumbling block:
It instructs me to download patches--but not necessarily. It states that they are "required" and "will be needed". Superb. Where and in what form? My assumption is that they should be delivered to the sources directory like the package files. Is this correct? Also, they don't look executable as is...how and when will they be used? I've browsed ahead but haven't found any section that seems to apply the patches...are they automatically applied during the compilation process?
Distribution: Hardy (Gnome on Ubuntu 8.04) on Compaq N600c laptop
Posts: 323
Original Poster
Rep:
Stumbling Block #2
In 4.4. Setting Up the Environment:
Code:
lfs@Evo:~$ cat > ~/.bash_profile << "EOF"
> exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash
> EOF
Command 'cat' is available in '/bin/cat'
The command could not be located because '/bin' is not included in the PATH environment variable.
bash: cat: command not found
Distribution: LFS 5.0, building 6.3, win98se, multiboot
Posts: 288
Rep:
Quote:
Originally Posted by lumix
...and yikes too.
LFS would have been...aggravating, if I hadn't been using linux (or should I say, "GNU linux") already for some time. Still looks like it will be a good exercise.
My first stumbling block:
It instructs me to download patches--but not necessarily. It states that they are "required" and "will be needed". Superb. Where and in what form? My assumption is that they should be delivered to the sources directory like the package files. Is this correct? Also, they don't look executable as is...how and when will they be used? I've browsed ahead but haven't found any section that seems to apply the patches...are they automatically applied during the compilation process?
My suggestion to LFS would be this: as with some of the items they've linked to definitions, their should be links to explanations of what's going in a given step, what it's function is, and how it fits into the grand scheme of things. Maybe a good next project for me when I have answers to these my self.
As an LFS/BLFS user since LFS 5.0, forgive me if I'm wrong but it sounds like you quickly skimmed the first few introductory chapters. _Don't_do_that_! There are some very important things in the early parts of the book. Also as each package is built there are very clear notices as to which patch must be applied and when. Later on in BLFS there are notices "Required patch:" and "Optional patch:" with furter explaination for the optionals.
Distribution: Hardy (Gnome on Ubuntu 8.04) on Compaq N600c laptop
Posts: 323
Original Poster
Rep:
I don't think I skipped over anything, but I'll go back and have a look. As for explanations, as of the 3rd or 4th section it appears there's plenty of that, I'm glad to say.
As for the above question, it turns out that I'm a dingbat and didn't login as "lfs" before setting up a "clean" shell and replacing the .bashrc file.
Distribution: LFS 5.0, building 6.3, win98se, multiboot
Posts: 288
Rep:
Setting up the environment is critical, it's one of the main difficulties that seem to crop up. Good luck on you're build. I think you'll find it's one of the best ways to really start to understand how linux works.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.