Mi is az a Linux?

Tux logó
Az eheti, némileg megkésett cikkünk hiánypótlónak tekinthető az oldalon. Ugyanis gyakran foglalkozunk a Linuxszal, a különböző disztribúciókkal, viszont még nem tisztáztuk részletesebb, mi a Linux, és mi a különbség a Linux és a GNU/Linux között. Lacyc3 Hogyan váltsunk Windowsról Linuxra: I. rész – Ismerkedjünk cikkében viszont találsz egy jó összefoglalót, ha a bővebb történet érdekel, a következőkben megtalálod.

Előzmények

Ahhoz, hogy a GNU/Linux kialakulásának története érhető legyen, kicsit messzebbre kell visszatekintenünk az időben, egészen a Unixig. Ken Thompson, Dennis M. Ritchie, Brian Kernighan, valamint az AT&T további munkatársai készítették 1969-ben. Szándékuk az volt, hogy egy általános célú, többfeladatos, többfelhasználós, időosztásos rendszert hozzanak létre, ami felválthatja az MIT által fejlesztett Multics-ot.

Nem piaci terméknek szánták, ám az egyetemek ingyen megkapták a forráskódot, ezért rövid idő alatt számos különböző verziója alakult ki, mivel minden intézmény a saját igényei szerint fejlesztette tovább és módosította. 1974-ben már hatszáznál is több intézmény használt Unixot, 1980-ra pedig az operációs rendszernek már több, mint száz különböző verziója volt ismert.

Unix családfa

A GNU/Linux a Unix egyik főbb irányvonalát képviseli az AT&T-féle System, a Berkeley Egyetem által készített BSD és az Open Software Foundation rendszerek mellett.

A GNU/Linux története

Mivel a köznyelv hibásan nevezi operációs rendszernek a Linuxot, fontosnak tartom leszögezni, hogy a Linux „csupán” egy rendszermag, egy kernel. A kernel ugyan nélkülözhetetlen része az operációs rendszernek, ám önmagában nem használható, különböző egyéb programokra van szükség, hogy felhasználásra alkalmassá váljon. A Linux kernel esetében ezeket a GNU Projekt biztosítja. A következő alfejezetekben kicsit bővebben is kitérek a Linux kernel történetére, a GNU Projektre, valamint eszek összeolvadására a GNU/Linuxban.

A Linux kernel története

A Linux kernel megalkotása a finn Linus Torvalds nevéhez fűződik. A Helsinki Egyetemen ismerte és kedvelte meg a Unixot, ám drágának találta. A MINIX nevű Unix-szerű operációs rendszer ingyenesen elérhető volt, ám nem feltelt meg teljesen az igényeinek, ezért annak tanulmányozása után 1991-ben belekezdett egy saját rendszer írásába. Csak hobbinak indult, ám végül egy világszerte ismert, rengeteg programozót vonzó projektté nőtte ki magát.

Linus Torvalds 1991. augusztus 25-én tett egy előzetes bejelentést a Linuxról a MINIX levelezőlistán, amely itt olvasható. A Linux 0.01 1991. szeptember 17-én került fel a Helsinki Egyetem FTP szerverére, ám erről bejelentést nem tett. Az első bejelentett verzió a 0.02 volt még mindig ugyanezen év október 5-én. A kernel eredeti, saját maga által írt licencelése tiltotta a módosított kernel árusítását, ám Torvalds (közösségi kérésre) a 0.12-es verzióban bejelentette a licencváltást, majd a 0.99-től kezdődően GPL alatt tette közzé a Linuxot. Ez a licenc feloldja ezt a korlátozást.

A GNU Projekt

GNU logó
A GNU Projektet Richard M. Stallman hívta életre 1983. szeptember 27-én, a bejelentés angolul itt olvasható. A GNU egy rekurzív mozaikszó, amelynek feloldása „GNU's not Unix”, azaz a „GNU nem Unix”. A projekt célja az volt, hogy egy teljesen szabad, Unix-szerű operációs rendszert hozzanak létre. A projekt céljait Stallman az úgynevezett GNU-kiáltványban fogalmazta meg, amelyet a gnu.hu-n olvashatsz el magyarul.

Stallman a projekt indulásakor megfogalmazta a szabad szoftverekkel kapcsolatos alapelveket. Ezek a következőek:

  • A szabad szoftver bármilyen célra szabadon használható.
  • A szabad szoftvert mindenki szabadon módosíthatja igényei szerint. Ehhez elérhetővé kell tenni a szabad szoftver forráskódját.
  • A szabad szoftver szabadon terjeszthető, továbbadható. Akár ingyen, akár pénzért.
  • A szabad szoftver módosított változatai is szabadon terjeszthetőek.

Ezen elvek kerültek átültetésre jogi nyelvre, így jött létre a GNU General Public License, vagyis a GPL. A szabad (szoftver) licencekről már korábban írtunk egy cikksorozatot, amelynek részeit itt találod.

Mint már említettem, a GNU Projekt célja egy szabad operációs rendszer létrehozása volt. Ennek megfelelően számtalan programot kezdtek fejleszteni. Többek között archiváló programot (pl. tar, gzip), szövegszerkesztőt (pl. Emacs, nano), asztali környezetet (GNOME), fájlkezelőt (Midnight Commander), internetes alkalmazást (pl. wget), fordítót (gcc), rendszerbetöltőt (GRUB), rendszerhéjat (Bash) és kernelt is (Hurd).

Ami a fenti felsorolásból most különösen fontos számunkra, az a kernel. A GNU Projekt még a Linux bejelentése előtt, 1990-ben elkezdte a saját kernelének (GNU Hurd) fejlesztését, ám még most sincs belőle hétköznapi felhasználásra szánt, stabil változat.

A GNU/Linux megszületése

Miután Linus Torvalds elkészítette, majd később GPL licenc alatt kiadta a Linuxot, a szabad szoftveres világ rendelkezésére állt egy szabad kernel. Valamint egy szabad Unix-szerű operációs rendszer, a GNU, működőképes kernel nélkül. Mikor az FSF Alapítvány finanszírozásával elkezdődött a Linux és a GNU egyesítése, megszületett a GNU/Linux operációs rendszer, amelyet a köznyelv általában tévesen csak Linuxnak nevez. Ugyan vannak teljesen a GNU szellemében készült operációs rendszerek, amelyek listáját a GNU oldalán találod. A továbbiakban az ismertebb és elterjedtebb GNU/Linux változatokról ejtek néhány szót, amelyek nem csak szabad szoftver tartalmaznak. A GNU kifogásait ezen disztrókkal kapcsolatban itt olvashatod angolul.

A GNU/Linux változatai

A GNU/Linux különböző változatait disztribúciónak vagy magyarosan terjesztésnek szokás nevezni. Számtalan élő disztribúció van, amelyek a fejlesztőik elképzelései és igényei szerint készülnek, ezért eltérő szoftvereket tartalmaznak, különböző asztali környezeteket és csomagkezelőket használnak. Mivel több száz GNU/Linux disztribúció létezik, előbb-utóbb mindenki megtalálhatja azt, amelyik az ő elvárásainak, felhasználási területének és ismereteinek megfelel.

Ubuntu logó
Néhány fontosabb és elterjedtebb disztribúciót mutatok be, a teljesség igénye nélkül:

  • MCC Interim, amely a legelső GNU/Linux disztribúció volt.
  • Slackware, amely az első elterjedtebb terjesztés.
  • Debian, amely máig népszerű disztribúció és a legnagyobb családfával büszkélkedhet.
  • Red Hat Enterprise Linux, amely az egykori Red Hat Linux vállalativá váló utóda.
  • Ubuntu, amely a legnépszerűbb Debianon alapuló disztribúció.

Lacyc3 még bővülő, Hogyan váltsunk Windowsról Linuxra sorozatában részletesebben is megismerkedhetsz a különböző disztribúciókkal.