Linux Distributions

Linux, Open Standards Consultant

IBM Corporation

What they are, how they work, which one to choose

Avi Alkalay <avix@br.ibm.com>

+55-11-2132-2327

Attribution

Share Alike

Before You Start...

This presentation, specially the CentOS part, is not fully endorsed by IBM.

It is not, in any terms, a way to convince clients the distribution they should choose, leaving this decision only to them.

It may be used to explain to customers what is and how a Linux distribution is built, and leave them with parameters to decide about what is important to each of them, and to fulfill their specific needs.

What is a Linux Distribution

Ecosystem

A set of packaged software (as RPM files) with the distro's digital signature

An installation program, which is by himself one of the packaged software

People that build value networks with SW and HW vendors, community, etc

(

)

(

)

(

)

What are RPM Packages

A core OS technology created to ease software management

Similar to a ZIP file, plus meta-information like sw version, description, installation date, etc

Responsible for sw installation, deinstallation and upgrades

Makes consistency checks for different components inter-relations and dependencies

Provides automatic execution of custom scripts before and after a sw is (de)installed

Provides file corruption check mechanism

“The Best Linux Distribution”

Fact 1: All Enterprise* Linux distributions are excellent

Fact 2: All Enterprise Linux distributions fulfill real world needs

*Talking about Red Hat Enterprise Linux and SLES

Fact 3: To choose a Linux distribution is more like to choose a tomato sauce

(it is more related to personal taste and proximity to you, than to the quality of the product)

Which distro provider I have closer commercial relations with ?

Which distro I have more experience with ?

Who has best price model for the value provided ?

Which distro is certified by the ISV sw and IHV hw of some specific project ?

Unless you know what you are doing, be responsible and use an Enterprise distribution

Important Things to Think About

Fact 4: To use at most 2 distributions is not a bad thing

There are not big technical differences between them. A RHEL sysadmin can handle SLES too, and vice-versa

Diversity provides choice, and make providers fight for you, in quality and in price

The magic number is 2. Not 1. Not 3.

Whats the best distro ?

Instead of asking:

What is the best distribution for my company and my specific project ?

Start thinking about:

What Customers look for on Enterprise Distributions ?

A partner available now and in the long term, to transfer operational risks

Fast access to quality updates

Large set of certified hw and ISV sw

Availability of pre-tested complex solutions ecosystem

They look for 'support', which really means:

Popular Distributions

Aspects of Red Hat, SuSE, Fedora, OpenSuse, Debian, etc

↑ favorable

↓ unfavorable

↔ goot to know

SuSE and Red Hat testbed for next enterprise versions

Same flavor of their mother “E” distributions

Available only on some platforms (ia32, x86_64)

Not commited to build an ecosystem of ISVs and IHVs

Not commited to stability

Open development and testing with community help

OpenSuSE and Fedora Linux

CentOS Linux

A very special Linux distribution

Fact: CentOS is byte-identical to Red Hat Enterprise Linux

Made possible because Red Hat has a policy that all they write must be Open Source, including build process, integration, debugging methods, etc. So...

...to be Open Source means to be reproducible

Available on all platforms (ia32, x86_64, ia64, s390x, ppc)

Binary RHEL-ready hw drivers are technically CentOS-ready too

ISV sw for RHEL behaves exactly the same on CentOS

Coherent version numbers
CentOS 3.2 equals to RHEL 3 update 2

CentOS Aspects

But how CentOS does that ?

Answer is in the core of how the RPM technology works, and on how RHEL source-packages are deployed

RPM: The Raw Source Code

The base original thing to start with

Collection of sources in C, C++, documentation, etc

Published with a version number on the sw home page

Use to be difficult to compile, and needs customizations

Apache Web Server source code being distributed on his web site: generic and not flavored to any distribution

RPM: The Raw Source Code

GZipped TAR is an archive format similar to ZIP, but better

Includes all Apache source in C language, documentation etc

RPM: The Distribution-specific Patches

Modifications to the original source code

Distribution bug fixes

Distribution specific addons, additional sources, plugins

Backports of advanced, next-generation features

RPM: The RPM Specification (spec) File

Package summary, description, version, release, etc

The pre-install, post-install, etc scripts

How to integrate patches and sources, and compile all

Where to install the compiled files on the filesystem

RPM: The Source-RPM File

SOURCE RPM

All three components grouped in one distributable file

Source-RPMs are automatic cooking machines

They contain, in open formats, all the flavor a distribution wants to give to certain software

RPM: Source-RPM Files

Use to be freely distributable under GPL license

RHEL 4AS updated Apache (httpd), Kernel and other source-RPMs: freely available on Red Hat's FTP server

RPM: The Build Proccess

rpmbuild

SOURCE RPM

A standard single rpmbuild command generates the installable RPM file

No logic, customization, brain or magic is needed in this step

rpmbuild –-rebuild some-package.src.rpm

RPM: The Generated RPM File

rpmbuild

SOURCE RPM

The RPM file is generated with distro's digital signature

The usable RPM file use to be not freely-distributable on commercial distributions

SuSE is a commercial distribution which doesn't provide binary RPMs, different from OpenSuSE (the SuSE beta) which provides RPMs

Some binary RPMs freely available from a free distribution: OpenSuSE

RPM: The Generated RPM File

rpmbuild

CentOS' RPM

=

RPM: Designed to Rebuild on Any System

rpmbuild

SOURCE RPM

Red Hat's RPM

Code tunning and change cycle

A partner available now and in the long term to transfer operational risks
↓CentOS: Not provided by CentOS

Fast access to quality updates
↔CentOS: A few hours delay compared to RHEL

Large set of certified hw and ISV sw
↔CentOS: Technically inherited from RHEL, but not certified

Access to pre-tested complex solutions ecosystem
↔CentOS: Technically inherited from RHEL, but not certified

CentOS and our Support Aspects

Customers look for these 'support' aspects:

Linux, Open Standards Consultant

IBM Corporation

Avi Alkalay <avix@br.ibm.com>

11-2132-2327

Thank You !

RPM: The Whole Process

rpmbuild

SOURCE RPM

About Linux Distributions

http://avi.alkalay.net/linux/docs/

Avi Alkalay

2003-06-20T16:23:01

Avi Alkalay