LINUXSOFT.cz Přeskoč levou lištu

ARCHIV



   

> 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 18240×

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ů

28.11.2018 23:56 /František Kučera
Prosincový sraz spolku OpenAlt se koná ve středu 5.12.2018 od 16:00 na adrese Zikova 1903/4, Praha 6. Tentokrát navštívíme organizaci CESNET. Na programu jsou dvě přednášky: Distribuované úložiště Ceph (Michal Strnad) a Plně šifrovaný disk na moderním systému (Ondřej Caletka). Následně se přesuneme do některé z nedalekých restaurací, kde budeme pokračovat v diskusi.
Komentářů: 1

12.11.2018 21:28 /Redakce Linuxsoft.cz
22. listopadu 2018 se koná v Praze na Karlově náměstí již pátý ročník konference s tématem Datová centra pro business, která nabídne odpovědi na aktuální a často řešené otázky: Jaké jsou aktuální trendy v oblasti datových center a jak je optimálně využít pro vlastní prospěch? Jak si zajistit odpovídající služby datových center? Podle jakých kritérií vybírat dodavatele služeb? Jak volit vhodné součásti infrastruktury při budování či rozšiřování vlastního datového centra? Jak efektivně datové centrum spravovat? Jak co nejlépe eliminovat možná rizika? apod. Příznivci LinuxSoftu mohou při registraci uplatnit kód LIN350, který jim přinese zvýhodněné vstupné s 50% slevou.
Přidat komentář

6.11.2018 2:04 /František Kučera
Říjnový pražský sraz spolku OpenAlt se koná v listopadu – již tento čtvrtek – 8. 11. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma umění a technologie, IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář

4.10.2018 21:30 /Ondřej Čečák
LinuxDays 2018 již tento víkend, registrace je otevřená.
Přidat komentář

18.9.2018 23:30 /František Kučera
Zářijový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 20. 9. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář

9.9.2018 14:15 /Redakce Linuxsoft.cz
20.9.2018 proběhne v pražském Kongresovém centru Vavruška konference Mobilní řešení pro business. Návštěvníci si vyslechnou mimo jiné přednášky na témata: Nejdůležitější aktuální trendy v oblasti mobilních technologií, správa a zabezpečení mobilních zařízení ve firmách, jak mobilně přistupovat k informačnímu systému firmy, kdy se vyplatí používat odolná mobilní zařízení nebo jak zabezpečit mobilní komunikaci.
Přidat komentář

12.8.2018 16:58 /František Kučera
Srpnový pražský sraz spolku OpenAlt se koná ve čtvrtek – 16. 8. 2018 od 19:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát jsou tématem srazu databáze prezentaci svého projektu si pro nás připravil Standa Dzik. Dále bude prostor, abychom probrali nápady na využití IoT a sítě The Things Network, případně další témata.
Přidat komentář

16.7.2018 1:05 /František Kučera
Červencový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 19. 7. 2018 od 18:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát bude přednáška na téma: automatizační nástroj Ansible, kterou si připravil Martin Vicián.
Přidat komentář

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

> Poslední diskuze

31.7.2023 14:13 / Linda Graham
iPhone Services

30.11.2022 9:32 / Kyle McDermott
Hosting download unavailable

13.12.2018 10:57 / Jan Mareš
Re: zavináč

2.12.2018 23:56 / František Kučera
Sraz

5.10.2018 17:12 / Jakub Kuljovsky
Re: Jaký kurz a software by jste doporučili pro začínajcího kodéra?

Více ...

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