What are the Core Components of a Linux Distro?

Discussion in 'all things UNIX' started by Brandonn2010, Sep 19, 2012.

Thread Status:
Not open for further replies.
  1. Brandonn2010

    Brandonn2010 Registered Member

    Joined:
    Jan 10, 2011
    Posts:
    1,849
    I'm curious what the main components for a functioning distribution are?

    I know some like the Linux kernel, but what else? Basically what all is needed for a graphical environment with networking.

    Also, do you have any guides to understanding and using Linux? Preferably for beginners but I do have some understanding of computers from Windows.
     
  2. AlexC

    AlexC Registered Member

    Joined:
    Apr 4, 2009
    Posts:
    1,280
    I don't know the answer to your first question, but for the second i can point this guide written by Mrkvonic:
    https://www.wilderssecurity.com/showthread.php?t=227959
     
  3. chronomatic

    chronomatic Registered Member

    Joined:
    Apr 9, 2009
    Posts:
    1,343
    You need the Kernel and everything to build it. This is called the "toolchain." It consists of things like a compiler (GCC), binutils, glibc (C library), gdb (debugger), make, automake, autoconf, bash shell, tar, and a few other things. Once you have all that low level stuff in place, then you can start compiling it all and have a working system from a shell. After that you can add in Xorg and your desktop of choice (along with many other utilities).

    The toolchain mostly consists of software from the GNU project. Without all their compilers and libraries it would be impossible to compile the Linux kernel. This is why Linux is often called "GNU/Linux."

    I am simplifying it a bit, but that's basically how it's done. Linux From Scratch is one such project that teaches people how to build Linux from the ground up.
     
  4. Brandonn2010

    Brandonn2010 Registered Member

    Joined:
    Jan 10, 2011
    Posts:
    1,849
  5. NGRhodes

    NGRhodes Registered Member

    Joined:
    Jun 23, 2003
    Posts:
    2,331
    Location:
    West Yorkshire, UK
    You also need some way of distributing the distro and software (packages) and source code, such as internet or DVD/CD, without the facility to share the distribution its just a personal OS.
     
  6. BrandiCandi

    BrandiCandi Guest

    IMO the best way to understand linux is to just install it and start playing with it. I started with Ubuntu because it was the most popular, it claims to be the most user-friendly, and it has pretty active support forums.

    Burn a live CD and run that a bit, maybe dual boot your computer. Or install it in a virtual machine. You'll never get a feel for it until you use it.
     
  7. Dark Shadow

    Dark Shadow Registered Member

    Joined:
    Oct 11, 2007
    Posts:
    4,553
    Location:
    USA
    What's really nice ubuntu can be installed with the windows installer for testing and If you don't like it,just uninstall it through programs add or remove.:thumb:No need for burning the ISO for testing it.I got a netbook running this way for now and can select ubuntu on boot or do nothing and windows 7 boot up automatic. you can read about here.http://www.ubuntu.com/download/desktop/windows-installer
     
    Last edited: Sep 20, 2012
  8. Mrkvonic

    Mrkvonic Linux Systems Expert

    Joined:
    May 9, 2005
    Posts:
    8,698
    Core components for what purpose? Do you need network/GUI?
    Mrk
     
  9. Joxx

    Joxx Registered Member

    Joined:
    Sep 5, 2012
    Posts:
    1,126
    Will it work as fast/stable as a HD partition installation?
     
  10. Dark Shadow

    Dark Shadow Registered Member

    Joined:
    Oct 11, 2007
    Posts:
    4,553
    Location:
    USA
    Well not sure about that,from I what understand some lose of functionality may occur with the windows installer.The best way is HD partion but for newbies the windows installer Would be my recommendation so there not committed or to limit the chance of something go wrong and its simple as installing any other windows program.

    I am not a newbie to linux but not real experienced either,so the option I choose is just to get mt feet wet as its been years since trying linux.I switched over to OS X a few weeks ago and finding its very easy to use and I absolutely love it.
     
    Last edited: Sep 21, 2012
  11. Brandonn2010

    Brandonn2010 Registered Member

    Joined:
    Jan 10, 2011
    Posts:
    1,849
    Yes and yes. I won't be building a distro, I'm just curious what the main components of one are.
     
  12. NormanF

    NormanF Registered Member

    Joined:
    Feb 20, 2009
    Posts:
    1,441
    Puppy Linux - it can run on a flash usb drive and its repositories are all Ubuntu compatible.
     
  13. linuxforall

    linuxforall Registered Member

    Joined:
    Feb 6, 2010
    Posts:
    2,136

  14. Command line, etc.:
    - Kernel (duh)
    - glibc, GCC libraries
    - Command shell (usually bash) and associated core utilities
    - IP utilities and (usually) a DHCP client
    - Basic configuration files to go in /etc
    - wpa_supplicant and wireless utilities like iwconfig, if wifi is needed
    - Various shared libraries to support some of the more complex CLI tools
    - For sound, ALSA libraries and utilities

    Xorg:
    - Lots of X shared libraries
    - Fonts
    - Input drivers
    - Video drivers
    - The actual X server

    Desktop:
    - DBus and related daemons
    - NetworkManager or wicd if you don't want to manage networking manually
    - Relevant graphical toolkits (mostly Qt or GTK)
    - Window manager
    - Utilities such as the power manager, screen saver, etc.
    - Desktop-specific shared libraries (e.g. Xfce's exo library)
    - CUPS for printing, SANE and some frontend for scanning
    - All the various graphical utilities that make up a desktop
    - A display manager like GDM or KDM (sadly necessary these days)

    That's all that came to mind, I'm probably missing something.

    Edit: oh right, init system. Duh. Usually it's sysvinit, but it might be something like Upstart or Systemd these days.
     
    Last edited by a moderator: Oct 14, 2012
  15. wat0114

    wat0114 Registered Member

    Joined:
    Aug 5, 2012
    Posts:
    1,984
    Location:
    Canada
    You could try building Arch for some "hands on" learning.

    There's even a printable Beginners' Guide at their wiki.

    *EDIT* I see you mention you won't be building a distro, but just in case you change your mind ;)
     
    Last edited: Oct 14, 2012
  16. linuxforall

    linuxforall Registered Member

    Joined:
    Feb 6, 2010
    Posts:
    2,136
    In that case nothing beats compiling your own Gentoo.
     
  17. As an ex-Gentoo user, I think it's safe to say that Gentoo doesn't teach you as much as you might think.
     
  18. Hungry Man

    Hungry Man Registered Member

    Joined:
    May 11, 2011
    Posts:
    9,148
    You can learn anything you want from any distro - it's purely a matter of motivation. One distro may force you to but most of the time all that means is you'll copy/paste some commands from google.
     
Loading...
Thread Status:
Not open for further replies.