LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Distributions (https://www.linuxquestions.org/questions/linux-distributions-5/)
-   -   Help me to understand difference between distributions (https://www.linuxquestions.org/questions/linux-distributions-5/help-me-to-understand-difference-between-distributions-623095/)

sheine 02-22-2008 12:29 PM

Help me to understand difference between distributions
 
For several years my distribution of choice has been pclinuxos because it seemed easiest to use. Since it has been the number one download at Distrowatch others must agree with me.

I just bought a new computer and pclinuxos has failed me for the first time. I was able to install Simply Mepis flawlessly. When I installed pclinuxos, it gave me no way to configure a sufficiently high screen resolution or to connect to the internet with Nvidia card. Since Mepis does both there is nothing wrong with my equipment.

What makes the difference? Don't they both use the same linux packages?

pljvaldez 02-22-2008 12:39 PM

Probably not. One might have a newer kernel or a newer graphics driver. You'd have to compare them side by side to see what is included. That's not to say you couldn't get it working with a little bit of work. But I've found that the included proprietary drivers from Nvidia are sort of hit and miss from one distro to another.

You could always just download the source for the latest driver from the nvidia site onto a USB key from the Mepis live cd and then compile it on PCLOS...

H_TeXMeX_H 02-22-2008 01:05 PM

A very good question ... what is a distro ?

Think of it as a ready-to-distribute collection of software, including the kernel (patched or vanilla), drivers, and applications in the form of a ready-to-burn ISO image.

There are many possible difference between distributions:
- different kernel version
- kernel is patched or vanilla
- different version of xorg
- different version of proprietary drivers if any are included
- different window managers
- different base set of applications
- different library versions
- different package managers

You can even make your own distro, or use LFS (Linux from Scratch) to build your very own.

Franklin 02-23-2008 04:40 PM

A distro is essentially 2 things:

1. A Kernel

2. A collection of software.

The ability to access your hardware is dependent on the kernel. If you have new hardware and an old kernel, you will likely have trouble accessing your new hardware. Likewise, even if you have a newer kernel your ability to access your hardware "out of the box" is dependent on what the distro maintainer enables in the stock kernel they ship.

Many newbies place a lot of value in any distro that recognizes all their hardware "out of the box", and consider this to be the hallmark of quality. Unfortunately, this is not always (ever?) the case.

The software that is included with a "stable release" needs to be combined together in such a way that everything works together without conflict. This is no small feat and some distros are very good at this - others suck. Unfortunately, this is very difficult - if not impossible for the average user to fix on his own. This is why we have distibutions in the first place.

The kernel on the other hand is very simple to fix by upgrading and/or reconfiguring, thus resolving any initial hardware problems.

The point of all this is the following:

If you learn how to configure and compile a kernel, then the whole hardware issue becomes a non-issue and you can focus on the real measure of quality - a well configured, rock-solid, collection of GNU software without patches, kludges, and general bugginess.

HTH,

Steve

sheine 02-24-2008 08:06 AM

I appreciate the very good explanation by Franklin. Is there a standard technique for upgrading kernels in any distribution? Do upgraded kernels ever cause you to lose some functionality?

b0uncer 02-24-2008 08:27 AM

You'll get the functionality the new kernel has, and if that differs from the old, you either get new or lose old functionality. In the Linux kernel you can select to compile parts of it in, as a module, or leave them out of the kernel (thus making it smaller). Those parts that you take in or leave out are the functionality; on stock kernels (kernels provided by your distribution maintainer, that should work for most people) there are a lot of things included, most of which you don't probably need, and the upgrades usually don't "drop functionality off" unless for a specific reason. And it's all documented in changelogs, so you can check. You can also have several kernels installed and you can choose (from your bootloader menu) which one to boot, so building a new kernel doesn't mean you can't get the old one back (but: depending on how you do it, some parts of the old kernel might not work after you install a new one, like graphics card drivers that are installed as kernel modules after the kernel compilation).

The "standard process" that works on all systems capable of compiling programs (and that have the needed tools installed) is described in the README file that comes along the kernel source: it consists of configuring the source (cleaning the tree, then either obtaining a ready configuration from the old kernel for example, or making selections for the new, or going on with the defaults), compiling it (make command) and then installing it (in some cases a special make target, or just manually copying the kernel files to /boot where the bootloader finds them, and configuring bootloader to include the new kernel to the list). Some distributions then offer alternative ways which are easier: for example a distribution like Fedora or Ubuntu or SuSE or such usually puts new kernels to the reposity, and the package manager notifies you you have a kernel upgrade available. You can then upgrade it - install the already-compiled binary package - and have the package manager run the possibly included script in the package that configures your bootloader during the process. Or you can compile it from source, obtaining the source by installing the source package from your distributions' package manager, or download it manually from kernel.org and follow the instructions in README file.

Typically either you use the package manager of your distribution (when using stock kernels - not making your own modifications) or download the source from kernel.org and follow the README file.


All times are GMT -5. The time now is 06:37 AM.