Portál AbcLinuxu, 3. května 2025 15:24

Virtuální linuxový server - User Mode Linux

4. 1. 2005 | Zdeněk Burda
Články - Virtuální linuxový server - User Mode Linux  

Virtuální servery umožňují současný běh několika instancí operačního systému na jednom hardware.

Obsah


Úvod

V operačním systému GNU/Linux jsou nejznámější systémy pro virtualizaci komerční VMWare, Virtuozzo a OS řešení User Mode Linux (dále jen UML). Protože nemám peněz nazbyt, zvolil jsem si pro svoji další práci UML.

UML je jedna varianta překladu jádra Linuxu, která ho umožňuje spouštět jako normální program z již běžícího systému, a to i vícekrát. UML se spouští pod neprivilegovaným uživatelem a ze strany hostitelského systému se tváří jako "normální" procesy. Uvnitř UML vidíte pouze své procesy, jste v něm uzavřeni a prakticky neexistuje cesta ven do hostitelského systému. Samozřejmě poznáte, že se jedná o UML, protože jsou některé výpisy z adresáře /proc trochu jiné. Velkou výhodou je, že můžete dát například zákazníkovi práva uživatele root, ale ta jsou platná pouze uvnitř UML.

Potřebný software

Pro provoz UML potřebujete na hostitelský systém nainstalovat uml-utilities, dostatek RAM a místa na disku. Uml-utilities použijeme pro vytvoření virtuálních síťových rozhraní v hostitelském systému (lze to udělat i ručně, ale jsem líný, a tak raději používám utilitu uml_net :-) ) a pro základní ovládání UML (získání informací o stroji, aniž bychom se do něj přihlašovali, zálohování a třeba i vypnutí). Dále je potřeba zakompilovat podporu pro tun do jádra kvůli virtuálním síťovým rozhraním. Další program, který potřebujeme, je screen, v něm budeme UML spouštět (spustíme UML jako normální proces, odhlásíme se z konzole a UML běží ve screenu na pozadí).

Instalace

Hostitelský počítač

Na hostitelský počítač nejsou kladeny příliš veliké nároky, co se týká programového vybavení. UML mi nyní funguje na Debianu (kříženec mezi testing, unstable a experimental :-) a na druhém počítači, kde si s UML hraji, běží Slackware-current.

Je důležité mít podporu pro síťová rozhraní tun. Kdo používáte standardní distribuční jádro, máte po starostech. Kdo si ho překládá sám, určitě si poradí. Přítomnost vyzkoušejte příkazem modprobe tun. Dále si nainstalujte program screen, v něm budeme spouštět UML - uvidíme chybová hlášení jádra a můžeme ho spustit na pozadí. uml-utilities si nainstalujte také (použil jsem verzi z Debiana, na Slackware jsem si kompiloval ze zdrojových souborů).

Virtuální server

Pro provoz virtuálního serveru (UML) potřebujeme speciálním způsobem přeložené jádro a také nějaký souborový systém, ze kterého budeme bootovat, případně kde budou domácí adresáře uživatelů a podobně.

Jádro

Pro UML jsem použil vanilla jádro verze 2.6.9, na hostitelském systému běží jádro 2.4.27 se standardní sadou patchů distribuce Debian. Vlastní kompilace UML jádra se provádí tímto způsobem:

cd /usr/src/linux
make menuconfig ARCH=um
make vmlinux ARCH=um

Jádro jsem si přeložil bez modulů, protože je to jednodušší a stejně si myslím, že bych modulárním jádrem moc paměti neušetřil. Po kompilaci nám vznikne v adresáři se zdrojovým kódem jádra soubor vmlinux, který si nakopírujeme do adresáře /home/uml (do tohoto adresáře budu dávat vše, co se týká UML) a nastavíme mu práva 755. Tento soubor je naše jádro pro UML systém, a pokud si ho spustíte, měl by se ukázat klasický výpis bootu jádra s tím, že skončí na neexistenci root filesystému.

Souborový systém

Vytvoření souborového systému pro UML je celkem jednoduché a vystačíme si se std. nástroji z distribuce. Pro standardní instalaci Linuxu by nám mohlo stačit 4 GiB místa pro root filesystem. Vytvoříme si proto prázdný soubor veliký 4 GiB:

dd if=/dev/zero of=/home/uml/debian.img bs=1M count=1 seek=4096

Tímto příkazem jsme vytvořili soubor veliký 4 GiB, na kterém si vytvoříme souborový systém. Soubor jsem nazval debian.img, protože do něj nainstaluji distribuci Debian.

mkfs.xfs -f /home/uml/debian.img

Jak jste si jistě všimli, soubor nezabírá celé 4 GiB, ale podstatně méně. Je to tím, že to je takzvaný řídký soubor (to udělal ten parametr seek u příkazu dd). Pokud tyto soubory podporuje souborový systém, na kterém jsou umístěny, tak zaberou jen tolik místa, kolik obsahují dat (no dobře, zaberou ho o trochu víc - přesně o své i-nody, které spotřebují). A tam, kde by bylo prázdno, si souborový systém poznamená, že tam je tolik a tolik alokovaných bajtů, ale nezabírá to místo na disku. Proto můžete vyrobit třeba terabytový soubor na 40 GB disku. Využijeme toho ještě několikrát.

Vzniklý soubor připojíme do adresáře /mnt, do kterého vzápětí nainstalujeme Debian.

mount /home/uml/debian.img /mnt -o loop

Instalaci Debianu provedeme pomocí skriptu Debootstrap, který si nainstalujeme příkazem apt-get install debootstrap. Rozhodl jsem se, že si nainstaluji sarge - základní instalaci provedu pomocí příkazu

debootstrap sarge /mnt

Tím se mi nainstaluje minimální základ systému do adresáře /mnt. Nainstalovaný systém je téměř nenastavený, proto se do něj přepneme pomocí chrootu a doinstalujeme vše, co je potřeba.

chroot /mnt
mount -n /proc

Okolo sítě jsem si nastavil pouze DNS servery a rozhraní lo. eth0 jsem nenastavoval, protože to se bude muset konfigurovat pro každou běžící instanci UML zvlášť (využijeme jeden společný root_fs pro všechny uživatele jako základ systému). Je třeba nastavit apt-get, aby bylo možné instalovat další programy, a také si musíme napsat nové soubory /etc/fstab a /etc/hosts. Po tom, co nastavíte apt-get, nainstalujte minimálně ssh. Osobně jsem ještě nainstaloval programy mc, vim a pár dalších, které většina lidí používá.

Soubor /etc/fstab je trochu jiný, proto se mu budu věnovat trochu víc. V UML nejsou dostupná klasická zařízení pro disky typu /dev/hdX, ale používají se /dev/ubdX. Můj /etc/fstab vypadá následovně:

/dev/ubd/0   /    xfs     defaults 0 0
/dev/ubd/1  none  swap    defaults 0 0
/proc       none  proc    defaults 0 0
/dev/pts    none  devpts           0 0
/dev/shm    none  shmfs            0 0
/sys        none  sysfs            0 0

Uvnitř UML nepoužívám devfs, protože mi to připadá zbytečné. Zařízení /dev/ubd/X vyrobíme následujícím způsobem:

mkdir /dev/ubd
cd /dev/ubd
for i in 0 1 2 3 4 5 6 7; do mknod $i b 98 $[ $i * 16 ]; done

Další úprava nastavení, kterou jsem provedl, je vypnutí všech konzolí v souboru /etc/inittab - kromě prvních dvou. První konzoli přiřadím na zařízení /dev/ptypX, na které se pak můžu připojit z hostitelského počítače například pomocí programu minicom (minicom -o -p /dev/ptypX) a druhou konzoli pověsím na telnet na nějaký port (například 9001 a podobně). To ovšem znamená, že si musíte do hostitelského systému nainstalovat telnet server. Z hlediska bezpečnosti to je celkem v pohodě - pokud se nebudete připojovat z jiného systému než hostitelského.

Z pohledu UML systému pak přihlášení ze zařízení /dev/ptypX nebo telnetu vypadá, jako byste se hlásili z normální textové konzole. V logu se ukáže, že jste přišli z konzole tty0 nebo tty1.

Samozřejmě, že se běžně na systém nebudeme přihlašovat přes minicom nebo telnet, ale ta možnost se hodí, pokud si uživatel shodí ssh a podobně. Přeci byste mu kvůli tomu nerestartovali celý stroj?

V případě, že jste s instalací systému pro UML spokojeni a nenapadá vás co ještě nastavit, utečte z chrootu a odpojte adresář /mnt. Pokud se rozhodnete ještě změnit nějaké nastavení, tak je to samozřejmě možné.

Spuštění

Nyní máme připravené jádro i souborový systém pro virtuální server a můžeme ho zkusit nastartovat. Start provedeme zatím bez sítě; jen zkusíme, jestli vůbec nabootujeme. UML systému přidělíme 64 MiB RAM. První konzole virtuálního systému bude poslouchat na /dev/ptyp0 (v mém případě je to /dev/pty/s0 a /dev/ptyp0 je symlink na něj - používám na počítači DevFS) a druhá na TCP portu 9001 bude čekat na přihlášení pomocí telnetu. Nastavení con0 způsobí, že se bude na obrazovku vypisovat spouštění initu a podobně. Pro otestování základní funkčnosti nám následující příkaz stačí, pro ostrý provoz to však ještě nestačí.

/home/uml/vmlinux mem=64M ubd0=/home/uml/debian.img \
con0=fd:0,fd:1 con1=pty con2=port:9001

V případě, že jste nabootovali, byste měli mít na obrazovce výstup jádra a initu. Také by se někde mělo vypsat, jaké pty zařízení je použito pro první konzoli.

Virtual console 1 assigned device '/dev/ptyp0'

Ještě ověříme, jestli poslouchá telnet na portu 9001:

tsunami:~# netstat -tanp | grep 9001
tcp   0   0 0.0.0.0:9001    0.0.0.0:*    LISTEN    23879/linux

Vyzkoušíme přihlášení na pty zařízení:

minicom -o -p /dev/ptyp0

Mělo by se ukázat něco jako:

Welcome to minicom 2.1

OPTIONS: History Buffer, F-key Macros, Search History Buffer, I18n 
Compiled on Nov 12 2003, 19:21:57.

Press CTRL-A Z for help on special keys

Debian GNU/Linux 3.1 umlstroj tty1

umlstroj login:

Z minicomu se odhlásíte pomocí stisku Ctrl+A Q. Přihlášení na telnet je jednoduché:

tsunami:~# telnet localhost 9001
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Debian GNU/Linux 3.1 tsunami

Debian GNU/Linux 3.1 umlstroj tty2

umlstroj login:

Pokud chcete z telnetu utéct, stiskněte Ctrl+], Ctrl+d.

Ať už se přihlásíte přes minicom, nebo telnet, můžete se normálně přihlásit do systému. Vše, co v systému uděláte se souborovým systémem, se uloží normálně do souboru debian.img, který se pro virtuální server tváří jako disk.

Další spouštění provedeme již jako neprivilegovaný uživatel se sítí a trochu jiným nastavením disků. Spouštění pod neprivilegovaným uživatelem znamená, že binárce uml_net, kterou použijeme pro nastavení sítě, musíme dát SUID bit. IP adresa, kterou zadáme jako parametr při spouštění, musí být jiná než adresa uvnitř UML. Je to totiž adresa lokálního síťového rozhraní. Zvolil jsem si adresu 10.0.1.1, uvnitř UML bude adresa 10.0.0.1. Aby měl UML systém přístup na síť, je třeba správně nastavit NAT na hostitelském systému. Zvolil jsem si kombinaci SNAT a DNAT.

Soubor debian.img se systémem pro virtuální server je dobré používat pouze pro čtení a změny zapisovat někam jinam. Umožní nám to použít jeden výchozí debian.img pro více instancí UML. Mechanismus, který se pro to využívá, se nazývá Copy On Write (COW). Znamená to, že Linuxu předhodíme jako parametr další soubor, do kterého se budou zapisovat všechny změny na disku. Soubor si jádro při startu založí samo. Soubor uml_swap.img použijeme pro swapování UML systému. Vyrobíme ho pomocí programu dd. Swap:

dd if=/dev/zero of=/home/uml/uml_swap.img
mkswap /home/uml/uml_swap.img

Spuštění UML systému tedy provedeme příkazem:

/home/uml/vmlinux mem=64M \
udb0=/home/uml/debian_cow.img,/home/uml/debian.img \
ubd1=/home/uml/uml_swap.img con0=fd:0,fd:1 con1=pty con2=port:9001 \
eth0=tuntap,,,10.0.1.1

Síťování

Privátní IP adresa

Jakmile se přihlásíte do UML pomocí telnetu nebo minicomu, nastavte si správně soubor /etc/network/interfaces tak, aby tam byla jako lokální IP adresa na rozhraní eth0 10.0.0.1 a jako gateway 10.0.1.1. Potom proveďte restart sítě pomocí /etc/init.d/network restart. Ve výpisu dmesg v UML systému by se mělo ukázat něco jako:

* modprobe tun
* ifconfig tap0 10.0.1.1 netmask 255.255.255.255 up
* bash -c echo 1 > /proc/sys/net/ipv4/ip_forward
* route add -host 10.0.0.1 dev tap0
* bash -c echo 1 > /proc/sys/net/ipv4/conf/tap0/proxy_arp
done.

Je to sada příkazů, které spustila utilita uml_net v hostitelském systému, a tím nastavila síť. Nyní byste si měli pingnout UML systém z hostitelského počítače:

tsunami:~# ping 10.0.0.1
PING 10.0.0.1 (10.0.0.1) 56(84) bytes of data.
64 bytes from 10.0.0.1: icmp_seq=1 ttl=64 time=0.096 ms

a také naopak z UML byste si měli pingnout hostitelský počítač

umlstroj:~# ping 10.0.0.2
PING 10.0.1.1 (10.0.1.1) 56(84) bytes of data.
64 bytes from 10.0.1.1: icmp_seq=1 ttl=64 time=0.416 ms

Nyní si pomocí iptables můžete nastavit SNAT a DNAT na hostitelském počítači tak, jak potřebujete.

Veřejná IP adresa

V případě, že se rozhodnete v UML systému použít veřejnou IP adresu, samozřejmě můžete. Postup nastavení adresy je stejný jako v minulém příkladu, jen nepotřebujete SNAT a DNAT.

Soubory ke stažení

Závěr

Tento text neberte jako kompletní manuál, je to jen přiblížení méně známého způsobu provozu Linuxu. Originální dokumentaci najdete na stránkách projektu UML.

Související články

Seriál: Domácí síť
Seriál: Linuxové DMZ
Seriál: Chroot prostředí
Seriál: IPSec v kernelu 2.6

Odkazy a zdroje

UML

Další články z této rubriky

Týden na ITBiz: Svět IT a burzy, umělá inteligence, Nvidia a outsourcing
Linuxové foto novinky: pozvolná evoluce
PCLinuxOS 2017.2 MATE - tak trochu zvláštní linuxová distribuce
Krátký pohled na Fedoru 25, Wayland a GNOME 3.22
Naprosto ničím nezajímavé Lubuntu 16.10

Diskuse k tomuto článku

4.1.2005 02:50 Daniel Smolik | skóre: 15 | blog: marvin
Rozbalit Rozbalit vše UML super vecicka
Odpovědět | Sbalit | Link | Blokovat | Admin
Zdavim, UML je super rozbehl jsem si ho i na woodym akorat je potreba zkompilovat novejsi uml-utils. Je by me zajimalo zda nekdo nerozbehl uwoodyho to je dsitribuce zalozena na uClibc (www.uclibc.org). Snazil jsem se ale nikdy mi nenabehl jejich root fs. Dan
4.1.2005 09:07 Roman Vasicek
Rozbalit Rozbalit vše Typo
Odpovědět | Sbalit | Link | Blokovat | Admin
s/&nsbp;/ /
4.1.2005 09:33 Robert Krátký | skóre: 94 | blog: Robertův bloček
Rozbalit Rozbalit vše Re: Typo
Díky. Opraveno.
4.1.2005 09:22 Dan Horák | skóre: 21
Rozbalit Rozbalit vše Xen
Odpovědět | Sbalit | Link | Blokovat | Admin
Uz nejakou dobu existuje projekt Xen (http://www.cl.cam.ac.uk/Research/SRG/netos/xen/index.html), ktery by mel byt nejvykonnejsim resenim pro soucasny a bezpecny beh vice OS na jednom HW. Je to neco podobneho jako je system VM pro mainframy.
4.1.2005 12:42 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Xen
O Xen vim, pokud najdu trochu casu, napisu o nem clanek.
-- Nezdar není hanbou, hanbou je strach z pokusu.
4.1.2005 10:44 llook | skóre: 8 | blog: l'blog | Prágl
Rozbalit Rozbalit vše bezpečnost
Odpovědět | Sbalit | Link | Blokovat | Admin
> "prakticky neexistuje cesta ven do hostitelského systému"

A co teoreticky? Vypadá to hodně dobře, ale zajímalo by mě, jestli to opravdu je tak bezpečný, jak se tváří. To by se pak dalo využít podobně jako Jail v BSD systémech, například k pronajímání prostoru na serveru s neomezenou možností CGI skriptování apod.

Ale jinak super článek. Je s podivem, jak srozumitelně lze tuto tématiku podat.
10 REM Dej si pauzu... 20 FOR DELAY=1 TO 5000 : NEXT DELAY
4.1.2005 14:21 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: bezpečnost
Prave kvuli pronajimani prostoru na serveru jsem se zacal UML zabyvat.

Jsem ted v praci, takze nemuzu moc reagovat. Vecer se pokusim reakce precist a odpovedet.
-- Nezdar není hanbou, hanbou je strach z pokusu.
4.1.2005 19:37 deda.jabko | skóre: 23 | blog: blog co se jmenuje "každý den jinak" | za new york city dvakrát doleva a pak už se doptáte
Rozbalit Rozbalit vše Re: bezpečnost
taky sem se tim pred urcitou dobou (rok,dva zpet) zabyval a propad vykonu u UML byl docela znat... z tohoto pohledu by mohl byt velmi zajimavy solaris 10...
Asi před rokem se dostali hackeři na servry Debianu a ukradli jim zdrojové kódy.
4.1.2005 18:11 Honza Houštěk | skóre: 18
Rozbalit Rozbalit vše Re: bezpečnost
Mira separace je u UML podstatne vetsi, nez u BSD jailu. Je treba si uvedomit, ze hostitelsky system pouziva vlastni kernel. Pokud bych mel na Linuxu najit neco blizsihu jailum, byl by to spis vserver.
6.1.2005 21:17 core
Rozbalit Rozbalit vše Re: bezpečnost
Na pronajimani prostoru mi prijde lepsi Linux-VServer http://www.linux-vserver.org/, to je BSD jailu podobne jeste vic. Jen tam doladit CPU limity (v devel verzi uz je).
4.1.2005 11:45 petr_p
Rozbalit Rozbalit vše Bezpecnost a la chroot?
Odpovědět | Sbalit | Link | Blokovat | Admin
Velmi pekny clanek. Jen mi uteklo par detailu:

UML podpora je primo ve vanilla jadre? Neni potreba nejaky patch?

Co bezpecnost? Pri nastavovani sitoveho rozhrani uvnitr UML si UML jadro dokazalo spustit procesy v hostitelskem systemu. To mi neprijde zrovna nejlepsi.

Jestli jsou moje predpoklady spravne, tak UML je dobre akorat tak na to, kdyz chci vice paralelnich systemu. Ale jako bezpecnosti opatreni je to na nic (neco jako chroot(2)).
4.1.2005 13:39 megi
Rozbalit Rozbalit vše Re: Bezpecnost a la chroot?
Je v řadě 2.6.x. Jináč bezpečnost výrazně vylepší SKAS patche zde:

http://uml.tuxrocks.com/Patches/ http://www.user-mode-linux.org/~blaisorblade/patches/skas3-2.6/

O co jde: http://user-mode-linux.sourceforge.net/skas.html
Stanislav Brabec avatar 4.1.2005 14:02 Stanislav Brabec | skóre: 45 | Praha
Rozbalit Rozbalit vše dd a
Odpovědět | Sbalit | Link | Blokovat | Admin
Lepší dd je:
dd if=/dev/zero of=/home/uml/debian.img bs=1M count=0 seek=4096
Váš dd udělá 4097MB, poslední MB je fyzicky alokovaný.

Napadá mne, zdali by se nedal sloučit UML s vícevrstevnými root FS, používanými u live CD. Ušetřil by se tím prostor na disku a vyřešil by se upgrade mnoha UML - zákazníci by dostali pronajatý server na vícevrstevném souborovým systému. Ten by byl pouze ke čtení (např. přes NFS), a na něm by byla vrstva pro zápis, takže zákazník by měl právo zápisu, ale provedené změny by se ukládaly pouze lokálně. Samozřejmě /home a /tmp, a možná části /var nebo /srv, by byly čistě lokální.
4.1.2005 14:14 megi
Rozbalit Rozbalit vše Re: dd a
Tohle už funguje "out of box". Jmenuje se to COW (copy on write).
Nikola Ciprich avatar 5.1.2005 22:08 Nikola Ciprich | skóre: 23 | blog: NiX_blog | Palkovice
Rozbalit Rozbalit vše Re: dd a
cow je super vec, ale neni to tak jednoduche - presneji nejde pomoci cow vyresit ty upgrady: pokud uz jednou mate vytvoreny cow soubor, nesmi se menit master soubor
Did you ever touch the starlight ? Dream for a thousand years? Have you ever seen the beauty Of a newborn century?
4.1.2005 14:19 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: dd a
presne tohle je COW jak pise kolega predemnou, pokud zadam jadru pri spousteni udb0=/home/uml/debian_cow.img,/home/uml/debian.img tak debian.img je spolecny pro vsechny system, je jen pro cteni, debian_cow.img je prave ten soubor kam se zapisuji zmeny
-- Nezdar není hanbou, hanbou je strach z pokusu.
4.1.2005 16:03 Digero
Rozbalit Rozbalit vše Re: dd a
Tohle by se mi hodilo na livecd, kde bych mohl sehnat podrobnejsi info? Moc jsem toho nevygoogloval :(
4.1.2005 17:45 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: dd a
tusim, ze iSteve to pouziva na sve live distribuci, koukni se jak to tam ma udelane: deadcd
-- Nezdar není hanbou, hanbou je strach z pokusu.
5.1.2005 00:29 Digero
Rozbalit Rozbalit vše Re: dd a
Tak podle FAQ to nepouziva, neda se to pouzit na komprimovany loop back fs :(
8.1.2005 10:52 iSteve
Rozbalit Rozbalit vše Re: dd a
COW[loop/links] nepouzivam, pouzivam UnionFS Duvodu je nekolik, hlavni jsou:
a) Cowloop (nasledovnik cowlinks, coz byl dost bastl) umoznuje zatim jenom jeden mountpoint.
b) Cowloop je na device layeru, tudiz filesystem musi bejt RW, coz squash nebo iso neni. Da se to obejit (image ext2 v squashi nebo tak), ale neni to nejlepsi reseni.
c) UnionFS je vyrazne, _vyrazne_ flexibilnejsi
UnionFS taky budu pouzivat pro system modulu.
4.1.2005 14:33 ondrej
Rozbalit Rozbalit vše 32bit uml na 64 jadre
Odpovědět | Sbalit | Link | Blokovat | Admin
Doteraz som neprisiel na to ako spravit 32bit UML linux na 64bit jadre. (rozne chyby pri kompilacii, s gcc a cross compilerom) Posledne som to skusal pri jadre 2.6.5. Viete niekto ako na to?
4.1.2005 14:58 Jiří Unčovský
Rozbalit Rozbalit vše Re: 32bit uml na 64 jadre
Nejde, port UML pro AMD64 nejenze neexistuje, ale i kdyby se ti UML podarilo zkompilovat jako i386 aplikaci, tak syscall uname v UML bude hlasit stale amd64, takze musis zmenit bud volani syscallu uname nebo zajistit ze syscall uname bude vracet info o i386 a to v zdrojovem kodu UML, ale protoze "linux" je staticky linkovany program, tak nejde pretizit syscally pres LD_PRELOAD, ale jen trasovat procesy UML pomoci ptrace a pak po volani syscallu uname modifikovat. Nahodou takovy program jsem si napsal, takze ho muzu vystavit.
4.1.2005 16:31 ondrej
Rozbalit Rozbalit vše Re: 32bit uml na 64 jadre
Ano to viem, ze neexistuje port pre amd64. Existuje linux32 co spravi zopar zazrakov a uname vracia i686. Prikaz `make memuconfig ...` prebehne v poriadku. Chyby nastanu az pri samostatnej kompilacii alebo uz pri znasilnovani ndis wrapperu tak aby sa dal skompilovat v UML. Neviem spravit cross kompilaciu v x86_64 do i686 :(

Nuz co, Broadcom je uz dalsia firma ktorej uz nedam ani cent.
Jiří Svoboda avatar 5.1.2005 09:33 Jiří Svoboda | skóre: 37 | blog: cat /dev/mind | Prostějov
Rozbalit Rozbalit vše Re: 32bit uml na 64 jadre
Sice off-topic, ale prave neuveritelne potize s kompilaci a crosskompilaci me primely k navratu (doufam docasnemu) k 32 bitum.
Namatkove:
64 bitovy 'mplayer' jde sice zkompilovat a bezi, ale neumi pouzivat win codecy (obcas jsou potreba). 32 bitovy nejde vubec zkompilovat (pres linux32).
'e-uae' se pod 64 bity zkompiluje, ale pri spousteni segfaultuje, pod 32 bity opet nejde ani zkompilovat...
5.1.2005 09:10 digri | skóre: 12 | blog: digri
Rozbalit Rozbalit vše super clanek
Odpovědět | Sbalit | Link | Blokovat | Admin
moc pekne, strucne a prakticky napsany clanek, diky :-)
28.3.2006 13:52 JimiK | skóre: 15
Rozbalit Rozbalit vše Re: Virtuální linuxový server - User Mode Linux
Odpovědět | Sbalit | Link | Blokovat | Admin
Prosím o radu. Nevím, proč mi

INIT: Entering runlevel: 2
Starting system log daemon: syslogd.
Starting kernel log daemon: klogd.
Starting MTA: exim4.
Starting internet superserver: inetd.
Starting deferred execution scheduler: atd.
Starting periodic command scheduler: cron.
INIT: Id "2" respawning too fast: disabled for 5 minutes
INIT: Id "3" respawning too fast: disabled for 5 minutes
INIT: Id "4" respawning too fast: disabled for 5 minutes
INIT: Id "5" respawning too fast: disabled for 5 minutes
INIT: Id "1" respawning too fast: disabled for 5 minutes
INIT: Id "6" respawning too fast: disabled for 5 minutes
INIT: no more processes left in this runlevel
INIT: Id "2" respawning too fast: disabled for 5 minutes
INIT: Id "4" respawning too fast: disabled for 5 minutes
INIT: Id "3" respawning too fast: disabled for 5 minutes
INIT: Id "5" respawning too fast: disabled for 5 minutes
INIT: Id "1" respawning too fast: disabled for 5 minutes
INIT: Id "6" respawning too fast: disabled for 5 minutes

prosím, kde bych mohl mít chybu? :(
Stanislav Brabec avatar 28.3.2006 15:22 Stanislav Brabec | skóre: 45 | Praha
Rozbalit Rozbalit vše Re: Virtuální linuxový server - User Mode Linux
V inittabu (/etc/inittab). Skripty spouštěné odtud by neměly samy od sebe často končit.
30.3.2006 19:57 JimiK | skóre: 15
Rozbalit Rozbalit vše Re: Virtuální linuxový server - User Mode Linux
Už jsem na to přišel :) Takže tato chybová hláška vyskakuje, když nechám přimontovaný image FS a spustím UML.
30.3.2006 20:05 JimiK | skóre: 15
Rozbalit Rozbalit vše Re: Virtuální linuxový server - User Mode Linux
Odpovědět | Sbalit | Link | Blokovat | Admin
Hojda, zajímalo by mě, jestli lze v UML pracovat přímo se síťovkou hostitelského systému. Mám více síťových karet v pc a rád bych přímo s jednou z nich, která je připojena do jiného segmetu sítě dělal určité pokusy. Děkuji za každou radu

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.