Foss Presentation

Embed Size (px)

Citation preview

Lines of CodeUsers

1991 (ver0.01)100001

1992 (ver0.96)400001000

1993 (ver0.99)10000020000

1994 (ver1.0)170000100000

1995 (ver1.2)250000500000

1996 (ver2.0)4000001500000

1997 (ver2.1)8000003500000

1998 (ver 2.1.11)15000007500000

Introduction to:

Free Software, Open Source, GNU/Linux

About me

Name: Ahmed Mekkawy AKA linuxawy

Blog:http://www.linuxawy.org

Email:[email protected]

Proffesional career:SysAdmins Team Leader in eSpace (http://espace.com.eg).

FOSS world:Member of Admins team of EGLUG

Background & Experience:Graduated 2001 Faculty of Engineering, Alex University.

About EGLUG

Egypt Gnu/Linux Users Group.

We are an unofficial group of Egyptian volunteers gathered about believing in Free Software Philosophy and Open Source Model, and the love of Gnu/Linux OS.

We aim to serve the Egyptian FOSS comnunity and promote using FOSS in Egypt.

http://eglug.org

#eglug @ irc.freenode.net

GNU and Linux

GNU's Not Unix

What FOSS Stands for?

What's GNU?

What's GNU/Linux?

What's GNU/Hurd?

Debian GNU/Hurd exists? not really, not yet

What's GNU/Darwin?

Is Darwin FOSS? yes.. GPL'd? nop, it's APSL'd

GPL'd version of Darwin? yes, Open-Darwin, but ...

What is this all about?

FOSS Definition (4 Freedoms)

The freedom to run the program, for any purpose (freedom 0).

The freedom to study how the program works, and adapt it to your needs (freedom 1). Access to the source code is a precondition for this.

The freedom to redistribute copies so you can help your neighbor (freedom 2).

The freedom to improve the program, and release your improvements to the public, so that the whole community benefits (freedom 3). Access to the source code is a precondition for this.

Free Software Philosophy

1997 The Debian Free Software Guidelines (DFSG)

1998 Open Source Definition (4 Freedoms)

General Public License (GPL)

Free software is a matter of liberty, not price. To understand the concept, you should think of free as in "free speech", not as in "free beer".

Open Source is a development methodology; Free Software is a social movement.

Distributed development is one of the main key strengths in FOSS.

Three definitions of Linux

Linux Kernel: The very low-level software that manages your computer hardware and provides a library (POSIX) interface for user-level software. The Linux kernel runs on many platforms (Intel x86, IA-64, AMD64, Alpha, MIPS, HP PA-RISC, PowerPC, IBM S/390, SPARC, Motorola 680x0, etc.).

GNU/Linux OS:The Linux kernel plus utility software to provide a useful working environment.

Linux Distribution:The packaging of the Linux Kernel, the GNU/Linux OS and lots of other software to make Linux easy to install, configure, and use (at least for the target audience).

Quote

You never change things by fighting the existing reality. To change something, build a new model that makes the existing model obsolete. R. Buckminster Fuller

GNU/Linux Histrorical Timeline

1969: Unix is developed at AT&T

1983: The GNU Project launched by RMS

1991: Linux 0.01 ( 10k line of code, 1 user )

1994: Linux 1.0 ( 170k line of code, 100 thousand user)

1996: Linux 2.0 ( 400k line of code, 1.5 million user)

1998: Open Source Definition (4 Freedoms)

1998: Linux 2.1.11 ( 1.5M line of code, 7.5 million user)

1999: Linux 2.2: 12 million users

2008: A Promising Future

Linux Evolution within First 8 years

Quote

You cant better the world by simply talking to it. Philosophy to be effective must be mechanically applied.Buckminster Fuller

GPL version 3

if you distribute copies of such a program, whether gratis or for a fee, you must:pass on to the recipients the same freedoms that you received.

make sure that they, too, receive or can get the source code.

show them these terms so they know their rights.

there is no warranty for the GPL'd free software, and modified versions has to be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions.

Why use Open Source & Linux?

Speed and Stability.

Open Source tends to be high quality and economical.

Security: very little security holes & quick fixes.

No worms, spyware, crashes, and no more blue screen of death.

True multiuser system (secure file permission, use can't affect other users or the OS, user must logon)

Modularity (User isn't locked to one shell or GUI).

Strong communities for development and support.

Developers, Developers, Developers!

Code, Code, Code!

Open Source is not only in software

General Knowlege: Wikipedia.org

Web Designing: OSWD.org (Open Source Web Design), OpenDesigns.org , OpenWebDesign.org

Learning: ChemCollective.org, k12EdCom.org

Hardware: opencores.org

Others: OpenCola (Open Source Cola Formula), Open Data (Scintific data & others)

Business in FOSS world

The Cathedral and the Bazar (1997) by Eric Raymond.

Free Software => Open Source => FOSS

Cygnus (1989): First business model in FOSS, Technical support for GNU tools (merged with RedHat 1999)

Netscape(1998): First big company turned into FOSS (netscape => mozilla). This was highly influenced by "the cathedral and the bazar" which they heared in the perl conference in 1997

Quote

I guess you could call the belief in sharing of knowledge a philosophy, but I just think its a fact. Its what differentiates science from alchemy or witchcraft. Anybody who doesnt believe in it is just wearing some serious blinders.Linus Torvalds

Distributions

Debian: large (>1200 developers), community developed, strong policy, 15k packages, growing by 20% annualy. Largest (?)

Ubuntu: aimed for desktop users, based on debian unstable.

Red Hat: Early star, now aimed for enterprise.

Fedora: Sponsored by redhat, community supported.

Centos: The Free (from charge) alternative to RHEL.

Mandriva: Popular redhat derivative.

Suse: made by Novell, aimed for enterprise. Lately there's a joint development with microsoft.

OpenSuse:Open source alternative of Suse, community supported

Slackware: Very Unix-like, Old but popular

Phaeronix: The egyptian distro.

Arabian, Arabbix: Arabic distros, but discontinued.

Single tree and mount points

Single tree system Vs. Multi-tree system.

why mount?

/mnt , /media

Mount Points can be any empty directory.

Mount exists in Window$.

You can have any number of mount points.

root root root

The root directory ( / ):The root of your only tree.

It must be assosiated to a partition.

The root user:equals to the administrator in the Window$.

Very dangerous to login with it (really, i'm not kedding with that).

Should be disabled or use a really hard password.

The root home directory ( /root ):The home directory of the root user (where he stores his files)

GNU/Linux Directory structure

Everything is a file

Main Directories and their intended use:/etc : configuration files.

/bin, /usr/bin (binaries) excutables.

/sbin, /usr/sbin : (super user binaries) excutables for system-wide changes (e.g hardware configurations, shutdown, kernel-related, .. etc).

/tmp : temporary.

/home : subfolder for every account, account related files (desktop, account-related configurations.

/root : the root user home directory.

/mnt, /media : a place for mounting additonal devices.

/dev : hardware devices (editable, with extreme caution)

/proc : running processes (most of times are editable)

Display Components

X Server (XFree, XORG).

Desktop Enviroment (DE):KDE, Gnome, XFCE, ... etc

Window Manager (WM)Window Maker, Enlightment, IceWM, ... etc

Compositing Window Manager Metacity, Beryl, Compiz, ... etc

Installation Background

Partitioning.

Hardware detection.

Locales selection (Keyboard, time, location).

Package selection.

Bootloader.

Partitioning

Recommended partitioning for home user:Root ( / ), swap, home ( /home).

Recommended size of swap partition (1.5~2 * RAM size)

File System types.

What does journalized mean?

ext3 for stability, ReiserFS for speed.

ext2 is native and speedy. but not stable enough.

Packaging

What's a software package?

Dependencies.

Source Code Vs. Binary Package.

Mirrors

Why not getting software from third parties?

package managers (apt, yum, urpmi, smart, ... etc)

GUI interfaces for the package managers (e.g synaptic)

Installing a software package not from the mirrors.

portage tree .. a mirror of source codes??

Bootloader

Why use a bootloader?

Does Window$ has a bootloader?

Lilo Vs. GRUB

/boot

/boot/grub/menu.lst

GNU/Linux OS layers

Kernel.

Shell.

X-Server.

Desktop Enviroment (or a Window Maker).

Composite Window Maker.

Window Decorator.

CLI Vs. GUI

CLI is for experienced users only, GUI can be used by anyone.

CLI more powerful, GUI more user friendly.

Most server releases doesn't contain GUI interface.

My advice is that you use GUI for normal and daily tasks (e.g browsing, ... etc.) and use CLI for every administration task you do.

Positives:User friendly.

Eye candy.

Where normal users lives. as well as we live when we use our PC's as normal users (browsing, IM, Office, ... etc.)

Suitable for non-critical tasks which we can afford it to be slower and less stable for being more easy to use.

Negatives:Consumes too much of your resources.

Cause it's a higher layer, this means that bugs have higher possibility to exist.

Not good in administrative tasks, or at least most of them.

Not everything can be done with CLI exists in GUI, it's just a graphical interface and doesn't allow you to use all the options available.

GUI

CLI

much more powerful than GUI

After getting used to it, CLI will be far more EASY and FASTER to you than GUI in lots of tasks.

Most administration tasks are made with CLI. Those who made with GUI are simply a graphical interface that runs CLI commands in the background.

BASH = Bourne Again SHell. Note that there's more than one kind of shell (bash, sh, dash, ... etc)

BASH is the current standard of linux, Unix, and MAC OSX shell.

M$ Window$ is now emplimenting something called 'Window$ Power Shell' ... Will it be compatible with BASH commands? hope so.

How to get help?

man pages.

Distro documentation & forums

http://www.google.com/linux

http://www.eglug.org

http://www.eglug.org/alex

IRC: irc.freenode.net

IRC: #eglug @ irc.freenode.net

Conclusion

In a world without walls, who needs windows?

Muokkaa otsikon tekstimuotoa napsauttamalla

Muokkaa jsennyksen tekstimuotoa napsauttamallaToinen jsennystasoKolmas jsennystasoNeljs jsennystasoViides jsennystasoKuudes jsennystasoSeitsems jsennystasoKahdeksas jsennystasoYhdekss jsennystaso