LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   When will I be ready to attempt my own Linux build? (https://www.linuxquestions.org/questions/linux-newbie-8/when-will-i-be-ready-to-attempt-my-own-linux-build-783831/)

wideyes 01-21-2010 02:13 PM

When will I be ready to attempt my own Linux build?
 
I've been thinking about building myself a slackware or otherwise LFS system as an educational tool. I've been using Linux steadily for the past four months and want to get deeper into it. I know that building your own is the best way to learn the internals, but I'm not sure that I'm ready for that. I'm under the impression that going into it as a complete noob would be frustrating and ultimately unconstructive. What would be a good rough estimate of the amount of experience needed to attempt such a build? I'd rate myself as a fairly competent computer geek, but I'm no whiz kid, and certainly not the kind of guy who locks himself in his room over the weekend to learn string theory.

Thanks for your attention.

Skaperen 01-21-2010 02:23 PM

You've been wanting to dive into the swimming pool. Do you feel you are ready to learn to swim? If so, go right ahead.

The experience needed for LFS is more about carefully following instructions. If you have already done programming and thus used tool-chains to build programs, that can be a help. But if you've never done that, it could take a while to get that kind of experience to where it would help with LFS. But only you can know whether you are ready or not. If you have a spare PC to work on, it's only your time you'd lose if you discover you really aren't ready.

We can't know more about you than you do. Giving it a shot would tell you more about yourself than we ever could.

You won't ever be a whiz kid without trying stuff.

wideyes 01-21-2010 03:07 PM

Thanks for the thoughtful reply. I would be interested to know (Skaperen and others) how you yourself came to be a Slackware/LFS user, if you'd be willing to share the story.

I've been getting into Debian and related distros a lot lately, and am wondering whether I should stick to learning those before boldly striking out on my own. So much to learn!

bret381 01-21-2010 03:14 PM

First, Slackware is a much simpler distro than LFS. I myself have never done an LFS build, but found Gentoo to be a great learning Distro. You might give it a try. The portage package management system is very nice. Slackware is also great, easy to use, and learn, but lacks any gui tools to accomplish admin tasks and a great place to start. Although any linux distro will ultimately do the same thing if you are willing to just not use the gui tools. I would give slackware a try prior to LFS, but that's just me. I gave it a try and haven't looked back. It's great

brianL 01-21-2010 03:21 PM

Slackware isn't like LFS, you don't build it from scratch. And it's not a lot more difficult to install and run than Debian, just different. A little more effort needed in configuration, different packaging tools, etc. I haven't got round to trying LFS yet, but I intend to...sometime. Read the LFS book. Only you can tell if you're ready for it.

colorpurple21859 01-21-2010 03:52 PM

If your comfortable with the command line and good at following directions it,s not too hard, just time consuming. Would suggest to read instructions first to have an idea of what's going on, and make sure your have all the system requirements if you compiling lfs from another distro. Biggest problem I had was my bad typing.

MTK358 01-21-2010 04:03 PM

Quote:

Originally Posted by brianL (Post 3835577)
Slackware isn't like LFS, you don't build it from scratch. And it's not a lot more difficult to install and run than Debian, just different. A little more effort needed in configuration, different packaging tools, etc. I haven't got round to trying LFS yet, but I intend to...sometime. Read the LFS book. Only you can tell if you're ready for it.

Arch Linux it much more DIY than Slackware. And unlike Slackware it has good package management.

I would like to try LFS sometime once my understanding gets to that level, though.

sunnydrake 01-21-2010 04:27 PM

I have dos/win c++ programmer background (but i'm not yet wrote a single line of code in C++ for linux, lately i played with mono/bash scripts). AFAIN compiling programs in linux is easy, just pay attention to README/INSTALL/HOWTO files provided with sources + lib requirements(this is why it's better to add in your system popular distro management tools with good reprosory(deb/ubuntu/slackware(uhh pia with std tools to get all libs for single package, but still good packages)/etc..). Find forums/projects that gather other people with same goal this will provide easy answers for your questions. I have LFS interest too as i planning in future booting up linux kernel/lfs for my X7500 HTC phone.

jefro 01-21-2010 04:38 PM

Might look at Gentoo while you are looking.

No better time then now to start.

Consider a virtual machine maybe.

chrism01 01-21-2010 04:42 PM

Ensure you are REALLY comfortable with the cmd line before attempting it. Any distro has xterms or equiv, so get used to that first.
Having a spare system that only boots to level 3 ie no GUI would be a good way to research how it feels.
Practice building stuff from scratch, really learn the make cmd.

wideyes 01-21-2010 05:55 PM

chrism01, that's good advice, and probably what I'll end up doing. I definitely have not scratched the surface of what I'm using right now, and could stand to learn more. Arch linux was a good suggestion - I've been intrigued by it, and heard many good things. Thanks all for the thoughts.

chrism01 01-21-2010 05:57 PM

Cool :)
Here's a site with a lot(!) of free reading www.linuxtopia.org; might help.

jayjwa 01-21-2010 10:59 PM

I took over my own linux after I got upset with the distro I was using at the time. It wasn't being managed like I hoped it would, upgrades and updates where slow to come, and it had a "least is best" approach that I didn't like. Why strip down everything, I want functionality. So I first replaced everything with self-compiled stuff, then my second system was from the start source only. There is ALOT to learn. Looking back now, I'd say you're ready when:
  • you can build a package from source using autoconf tools and/or Makefiles
  • you're comfortable with the command line and don't need a GUI to get things done
  • you know the basics of C programming - what is an include file, header file, how does compilation work, where do binaries come from
  • you can fix minor errors in C source files, like a missing semi-colon, or a missing header file or define statement Many source packages ship with basic errors like these that stop them for building
  • you can use patch, and apply your own patches found in discussions online with developers if need be
  • you know the care and feeding of shared libraries, static ones, and libtool la files plus ldconfig
  • you're OK with looking up things in search engines and with reading howto's & manuals
  • you understand the boot process and its parts
  • basic shell scripting is known (bonus for Perl, Python, PHP, etc.)
  • configuring a webserver, ftp server, or mail server sounds like fun to you
  • you know what the main/basic files are under /etc/ and could re-write them if needed, including the boot scripts
  • you can make and use a rescue disk and boot disk
  • you've built and installed your own kernel, compiler, and libc
  • you know the basics of filesystems and what goes where in the filesystem tree
  • you've got a good understanding of security and know most of the common attacks systems face
  • you have a system that isn't super-important to do this with in case of downtime
  • you know the workings of an X11 system, imake, xservers & clients
  • you have a system in mind for package management (I just make a directory under /usr/doc with item, version number, and its docs inside)
  • you're not easily frustrated or give up easy

If the above are mostly a-go, then I'd say try it. I didn't find out about LFS until after I was done building, but looking back now they'd have been a good source to look at when things didn't go quite right.


All times are GMT -5. The time now is 07:27 PM.