LINUXSOFT.cz Přeskoč levou lištu
Uživatel: Heslo:  
   CZUKPL

> Zkušenosti z instalace Tao Linuxu na AMD Opteron

Další z testovacích distribucí na našem dual-opteron serveru (více zde) byl Tao Linux.

3.11.2004 08:00 | Petr Houštěk | Články autora | přečteno 15391×

Další volbou v našem testu distribucí na dual-opteron server byl Redhat Enterprise Linux. Protože je ale jeho cena vcelku vysoká (obsahuje i podporu), rozhodli jsme se pro jednu z volných distribucí odvozených z RHEL. Vybírali jsme mezi Tao Linuxem, Whitebox Linuxem a CentOS. Nakonec jsme zvolili Tao.

Tao Linux

Tao Linux je volně dostupná neoficiální verze RedHat Enterprise Linuxu. Je vytvořena rekompilací volně dostupných zdrojových balíčků RHEL a následného nahrazení obsahu, který spadá pod copyrightovou ochranu (jde převážně o loga RedHatu). Dále obsahuje navíc správce balíků yum (obdoba debianí aplikace apt, náhrada za up2date) a vlastní verze instalátoru.

Příprava

Naším cílem bylo jednak nainstalovat funkční minimální systém na již popsaný diskový layout (více např. zde). S tím bude trochu problém, protože Tao Linux (potažmo RHEL) v sobě nemá zakomponovanou podporu ani pro xfs, ani pro lvm2. Dalším cílem je vytvořit funkční build-environment pro následný vlastní rebuild RHEL, případně dalších balíků (backporty z Fedory, porty z jiných distribucí atd.)

Instalace

Tao Linux je k dispozici pro architektury i386, amd64, ia64 a s390. Můžete ho stáhnout jako jedno DVD nebo jako set 3 binárních CD a 3 CD se zdrojovými balíky. Nejprve jsme stáhli instalační DVD z mirroru Tao Linuxu.

Tao bootscreen

Před instalací jsme v BIOSu vypnuli podporu pro SCSI disky, kde se stále nacházel funkční Mandrakelinux 10.0 Official. Pak jsme spustili instalaci z DVD. Můžete vybrat mezi grafickým a textovým režimem instalace. Po zkušenostech z instalace Mandrakelinuxu jsme měli připravenou myš, takže jsme zvolili grafický režim.

Tao instalátor

Jelikož jsme chtěli pokud možno co největší build-environment a zároveň co nejmenší vlastní systém, rozhodli jsme se provést instalaci nadvakrát. Nejprve jsme nainstalovali kompletní systém na zvláštní oddíl na IDE disku, následně jsme na jiný oddíl na IDE disku nainstalovali minimální instalaci. Vzhledem k faktu, že Tao Linux nemá podporu pro xfs ani lvm2, nainstalovali jsme obě instalace na normální ext2 oddíly s tím, že je po přidání podpory pro xfs a lvm2 přesuneme na konečné destinace.

Bootování

V Tao Linuxu je standardním bootovacím nástrojem GRUB. Po nainstalování GRUBu na začátek oddílu s Tao Linuxem a následným bootem ale došlo k chybě - GRUB se zasekl a nenašli jsme způsob, jak se s touto chybou vypořádat. Rozhodli jsme se tedy, že bootování bude obstarávat lilo. Abychom systém vůbec nabootovali, zapnuli jsme v BIOSu opět podporu SCSI disků a nabootovali do Mandrakelinuxu. Přidali jsme pak do lila záznam o kernelu Tao Linuxu a rebootovali. Lilo nezaznamenalo žádné problémy a úspěšně jsme nabootovali Tao Linux. Takovéto řešení ale není dvakrát flexibilní - kvůli změně kernelu nejprve nabootovat do Mandrakelinuxu, pak teprve do cílového systému, nemluvě o potřebě mít nainstalován další systém. Rozhodli jsme se tedy lilo portovat pro Tao Linux. Naneštěstí lilo není obsaženo ani v RHEL, ani ve Fedora Core 2. Pro funkční lilo ale potřebujete jenom funkční binárku a konfigurační soubor /etc/lilo.conf. Rozhodli jsme se tedy dodat staticky zkompilovanou binárku určenou pro i386, kterou jsme zkompilovali na jiném i386 serveru. Ta fungovala bez problémů, nainstalovali jsme tedy lilo na začátek oddílu s Tao Linuxem. Lilo není portováno a nelze přímočaře zkompilovat nativně pro amd64 a v amd64 verzi Tao Linuxu (resp. RHEL) zase nejsou x86 knihovny (tzv. pure64 environment), proto byla nutná statická binárka.

Pomocí utility ntsysv jsme povypínali veškeré (pro nás) zbytečné služby, jako autodetekci hardware, cups, atd...

Lokální build-environment

Na speciální oddíl jsme nainstalovali maximální instalaci Tao Linuxu, která má sloužit jako lokální build-environment. Zatím ale existuje jako samostatná spustitelná instalace. Připojili jsme tedy tento oddíl do minimálního systému do /misc/chroot/tao a smazali všechny zbytečné věci. Ponechali jsme jenom tyto adresáře: /bin, /dev, /etc, /home, /lib, /proc, /root, /sbin, /tmp, /usr a /var. Přístup do adresáře /misc/chroot je povolen pouze uživateli build. Ten existuje jak v normálním systému, tak v chrootu, kde je určen ke kompilaci zdrojových balíčků. Pro vstup do chrootu pak root použije

bash# env -i TERM=$TERM /usr/sbin/chroot /misc/chroot/tao /bin/su -

Případně

bash# env -i TERM=$TERM /usr/sbin/chroot /misc/chroot/tao /bin/su - build

Updaty a zdroje balíčků

Standardně se v RHEL řeší otázka updatování software přes up2date. Tato služba ale je součástí podpory, takže ve free verzi RHEL, kterou Tao Linux je, není k dispozici. Toho si ale jsou jeho tvůrci vědomi a oproti RHEL přidali nástroj yum, celým názvem Yellow Dog Updater, Modified. Jedná se o podobný frontend pro rpm, jako urpmi známé z Mandrakelinuxu, nebo apt používané v Debianu, ovšem pro deb balíčky. Provádí indexaci balíčků a ukládá jejich metadata (např. informace o závislostech) do zvláštních souborů. Klienti pak tyto soubory stahují a na jejich základě dochází k rozhodnutí, jestli je třeba stáhnout novou verzi balíčku, jaké další balíčky se musí kvůli závislostem doinstalovat atd... Yum dokáže získávat tyto metadata (stejně jako samotné balíčky) přes protokoly http, ftp a z lokálního filesystému. Výchozí konfiguraci jsme upravili jenom minimálně - místo předvoleného serveru jsme zvolili co nejbližší mirror (http://wftp.tu-chemnitz.de/pub/linux/tao/). Pak jsme již bez problémů updatovali systém voláním

bash# yum check-update
bash# yum update

Build balíčků

Vzhledem k faktu, že RHEL (a potažmo Tao linux) je enterprise distribuce, je výběr software zúžený (např. Midnight Commander zde nenajdete). Naštěstí je architektura distribuce do velké míry kompatibilní s Fedora Core 2 (RHEL totiž vychází z volně dostupných distribucí, konkrétně RHEL3 je založen na RedHatu 9), takže množství chybějících balíků lze portovat z FC2. Při kompilaci zdrojových balíčků ale v různých případech (i při rekompilaci původních balíčků - tedy z Tao Linuxu nebo z RHEL) docházelo k chybám. Jejich přesný zdroj nám zůstal neznámý, ale po přepnutí locales z utf8 na iso-8859-2 se balíčky kompilovaly bez potíží. Je vidět, že podpora pouze utf8 ještě není zcela hotová a odladěná. Dalším nešvarem při kompilaci bylo, že zkompilované binárky nebyly stripované. Odpovědný skript se musel ručně editovat a upravit.

Kompilace kernelu

Rekompilace kernelu byla pro zvolený diskový layout nutná. Dále jsme se chtěli zbavit nepotřebných ovladačů a initrd, zakompilovat MD driver a device mapper (obsluhuje lvm2) staticky - hlavně pro bezchybnou autodetekci RAIDových polí kernelem při bootu. Kernel se zkompiloval v pořádku a nenastaly žádné komplikace.

Přidání podpory pro xfs a lvm2

Jednou z nevýhod RHEL je, že nepodporuje xfs. K jeho podpoře je třeba mít zakomponovaný ovladač v jádře a dále user-space utility pro vytváření a správu xfs (xfsprogs), případně pro zálohování (xfsdump). Xfsprogs se naštěstí dají sehnat velmi jednoduše - z Fedora Core 2. Po stažení a kompilaci v build-environmentu se balíček bez problémů nainstaloval. Horší to ale bylo s xfsdump. Zdrojový balíček určený přímo pro AMD64 jsme nikde nenašli (vyjma několika neoficiálních buildů, které ale požadovaly množství závislostí, které v RHEL nejsou). Nakonec jsme tedy sáhli k oficiálnímu release od SGI. Při pokusu o jeho kompilaci ale došlo k chybám typu x86_64 not supported a podobně. Po zevrubném zkoumání jsme přišli na to, že balíček počítal s tím, že bude kompilován na i386, a byly zde již nacachované hodnoty specifické právě pro i386. Po úpravě zdrojáků a odstranění těchto hodnot již proběhla kompilace v pořádku.

Nyní jsme mohli smazat Mandrakelinux, který byl na SCSI discích, nahradit ho Tao Linuxem, build-environment také přesunout na oddíl (na IDE disku) s xfs a /var s /home na mirrorované lvm oddíly (podrobnosti zde). Boot přes lilo z RAID-1, autodetekce RAID svazků a lvm2 kernelem i všechny ostatní aspekty bootu proběhly správně.

Software v distribuci

Testovali jsme hlavně následující software:

  • ssh server openssh 3.6.1p2-18
  • apache http server httpd 2.0.46-32
  • php php 4.3.2-14
  • sql server postgresql 7.3-3

Apache jsme testovali na několika virtuálních serverech se statickými i dynamicky generovanými stránkami pomocí převážně php, dále mod_perl i cgi skriptů. Pak jsme ho nasadili i do ostrého provozu - chvíli na něm běžel mirror distrowatch.com. Během provozu se nevyskytovaly žádné problémy.

Následně jsme testovali postgresql. Nejdříve jsme prověřili základní funkčnost, pak jsme postgresql použili při generování dynamických stránek pomocí aplikace pro rezervace ubytování využívanou komerčním portálem www.motylek.com.

Z ostatního důležitého software zde můžu jmenovat např.:

  • kernel 2.4.21-15
  • glibc 2.3.2-95
  • gcc 3.2.3-42
  • mysql 3.23.58-2

Software mimo distribuci

Jak jsem již zmínil, Redhat Enterprise Linux (a tedy i Tao Linux) není co do množství softwaru zrovna nejrozsáhlejší distribuce. Často se tedy stává, že je potřeba dodat software, který se v ní nevyskytuje. Zde plní svou funkci Fedora Core 2, ze které RHEL také částečně vychází. Většina zdrojových balíčků z FC2 se na Tao Linuxu bez problémů zkompilují. Navíc ve FC fungují dobře bezpečnostní updaty, takže pokud včas zkompilujete nové verze (např. po oznámení v security konferenci), je i bezpečnost vyřešena.

Další zdroje software jsou podobné jako u ostatních distribucí. Existují různé neoficiální zdroje (zde se ale často stává, že balíček není připraven pro kompilaci na AMD64 a nastávají podobné problémy, jako s xfsdumpem), člověk může zkusit zkompilovat balíčky z jiných distribucí a pokud ani zde neuspěje, může zkompilovat a použít software přímo z mainstreamu. Některý software jinak v dnešní době stále neseženete.

K tomuto software patří např. Java. Po zkušenostech s Mandrakelinuxem jsme se rozhodli pro 32-bitovou, ale na druhou stranu testovanou a funkční verzi Javy. Konkrétně jsme použili kompilát od SUNu, J2SE verze 1.4.2.

Kompilace OpenOffice.org

Vedoucímu projektu lokalizace OpenOffice.org se rozbil jeho server pro kompilování OO.o na platformu AMD64. Po oboustranné dohodě jsme se rozhodli mu poskytnout náš server (viz zde) pro vývoj na této platformě. Po doinstalování potřebných devel balíků (kompilace probíhala v normálním systému, ne v build-environmentu) bylo vše připraveno a několik týdnů Tao Linux zuřivě kompiloval moduly OO.o do nativních amd64 binárek.

Závěr

S distribucí jsme byli po funkční stránce spokojeni. Jedná se o poměrně konzervativní distribuci. Mezi plusy rozhodně patří velmi svědomitý vývoj a intenzivní testování, které je pro enterprise distribuce klíčové. Dále je tato distribuce velmi dlouho podporována - 7 let, tedy od data uvolnění v říjnu 2003 až do října 2010. Přestože u nás zatím není RHEL moc rozšířený, protože uživatelé non-enterprise RedHatu často přecházejí na Fedoru a na rozdíl od USA zde mají poměrně silné pozice ostatní distributoři (hlavně Mandrake a SUSE), plní roli průmyslového standardu, je tedy podporovaná ostatními výrobci linuxového software, jako např. Oracle.

Verze pro tisk

pridej.cz

 

DISKUZE

Nejsou žádné diskuzní příspěvky u dané položky.



Příspívat do diskuze mohou pouze registrovaní uživatelé.
> Vyhledávání software
> Vyhledávání článků

14.11.2017 16:56 /František Kučera

Máš rád svobodný software a hardware nebo se o nich chceš něco dozvědět? Zajímá tě DIY, CNC, SDR nebo morseovka? Přijď na sraz spolku OpenAlt – tradičně první čtvrtek před třetím pátkem v měsíci: 16. listopadu od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5).


Přidat komentář

12.11.2017 11:06 /Redakce Linuxsoft.cz
PR: 4. ročník odborné IT konference na téma Datová centra pro business proběhne již ve čtvrtek 23. listopadu 2017 v konferenčním centru Vavruška, v paláci Charitas, Karlovo náměstí 5, Praha 2 (u metra Karlovo náměstí) od 9:00. Konference o návrhu, budování, správě a efektivním využívání datových center nabídne odpovědi na aktuální a často řešené otázky, např Jaké jsou aktuální trendy v oblasti datových center a jak je využít pro vlastní prospěch? Jak zajistit pro firmu či jinou organizaci odpovídající služby datových center? Podle jakých kritérií vybrat dodavatele služeb? Jak volit součásti infrastruktury při budování či rozšiřování vlastního datového centra? Jak efektivně spravovat datové centrum? Jak eliminovat možná rizika? apod.
Přidat komentář

13.9.2017 8:00 /František Kučera
Máš rád svobodný software a hardware nebo se o nich chceš něco dozvědět? Zajímá tě DIY, CNC, SDR nebo morseovka? Přijď na sraz spolku OpenAlt – tentokrát netradičně v pondělí: 18. září od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5).
Přidat komentář

3.9.2017 20:45 /Redakce Linuxsoft.cz
PR: Dne 21. září 2017 proběhne v Praze konference "Mobilní řešení pro business". Hlavní tématy konference budou: nejnovější trendy v oblasti mobilních řešení pro firmy, efektivní využití mobilních zařízení, bezpečnostní rizika a řešení pro jejich omezení, správa mobilních zařízení ve firmách a další.
Přidat komentář

15.5.2017 23:50 /František Kučera
Máš rád svobodný software a hardware nebo se o nich chceš něco dozvědět? Zajímá tě DIY, CNC, SDR nebo morseovka? Přijď na sraz spolku OpenAlt, který se bude konat ve čtvrtek 18. května od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5).
Přidat komentář

12.5.2017 16:42 /Honza Javorek
PyCon CZ, česká konference o programovacím jazyce Python, se po dvou úspěšných ročnících v Brně bude letos konat v Praze, a to 8. až 10. června. Na konferenci letos zavítá např. i Armin Ronacher, známý především jako autor frameworku Flask, šablon Jinja2/Twig, a dalších projektů. Těšit se můžete na přednášky o datové analytice, tvorbě webu, testování, tvorbě API, učení a mentorování programování, přednášky o rozvoji komunity, o použití Pythonu ve vědě nebo k ovládání nejrůznějších zařízení (MicroPython). Na vlastní prsty si můžete na workshopech vyzkoušet postavit Pythonem ovládaného robota, naučit se učit šestileté děti programovat, efektivně testovat nebo si v Pythonu pohrát s kartografickým materiálem. Kupujte lístky, dokud jsou.
Přidat komentář

2.5.2017 9:20 /Eva Rázgová
Putovní konference československé Drupal komunity "DrupalCamp Československo" se tentokrát koná 27. 5.2017 na VUT FIT v Brně. Můžete načerpat a vyměnit si zkušenosti z oblasti Drupalu 7 a 8, UX, SEO, managementu týmového vývoje, využití Dockeru pro Drupal a dalších. Vítáni jsou nováčci i experti. Akci pořádají Slovenská Drupal Asociácia a česká Asociace pro Drupal. Registrace na webu .
Přidat komentář

1.5.2017 20:31 /Pavel `Goldenfish' Kysilka
PR: 25.5.2017 proběhne v Praze konference na téma Firemní informační systémy. Hlavními tématy jsou: Informační systémy s vlastní inteligencí, efektivní práce s dokumenty, mobilní přístup k datům nebo využívání cloudu.
Přidat komentář

   Více ...   Přidat zprávičku

> Poslední diskuze

18.9.2017 14:37 / Rojas
high security vault

15.9.2017 7:33 / Wilson
new zealand childcare jobs

31.8.2017 12:11 / Jaromir Obr
Re: ukůládání dat ze souboru

30.7.2017 11:12 / Jaromir Obr
Národní znaky

27.7.2017 12:24 / Jaromir Obr
Cteni/zapis

Více ...

ISSN 1801-3805 | Provozovatel: Pavel Kysilka, IČ: 72868490 (2003-2017) | mail at linuxsoft dot cz | Design: www.megadesign.cz | Textová verze