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 18668×
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.
Před instalací jsme v BIOS u 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.
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í GRUB u 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
BIOS u 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
RAID ový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
xfsdump em), č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
|
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 ...
|