abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    včera 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 6
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 2
    včera 04:11 | Nová verze

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 739 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Cesta do hlubin kompilace jádra - 1

    31. 8. 2005 | Antonín Kolísek | Návody | 35246×

    Kompletace potřebného software. Kde vzít zdrojové kódy a které použít. Rozdíly kompilace jader 2.6 a 2.4.

    Na úvod

    Kde kdo byl určitě již postaven před problém typu něco nefungovalo, něco nebylo podporováno. Nebo z čisté zvědavosti prostě stál před výzvou a někdy obávaným úkolem kompilovat vlastní kernel. Pro člověka v Linuxu ne moc zběhlého to může být docela zapeklitá situace. Kompilace sama o sobě je krok, který zvládne téměř každý, kdo pracuje s Linuxem pár týdnů. Mnohdy se ale stane, že i když je vlastní jádro dobře přeložené, je ještě více pomalé než to distribuční a nebo v něm nefunguje plno věcí, jak by mělo.

    Zde jsem se zhostil úkolu popsat v několikadílném seriálu nejen samotnou kompilaci, ale především poukázat na to co, kdy a proč dát a nebo nedat do našeho jádra, a co vše je k tomu potřeba. Z obrovské rozsáhlosti jednotlivých subsystémů jádra se pokusím poukázat na ty důležité a nezbytné pro správnou činnost. U některých sekcí se zdržím více. U některých méně nebo téměř vůbec, především tehdy, jedná-li se o některý exotický hardware nebo funkci v normálních podmínkách nepotřebnou. Začátečník i pokročilý uživatel by si měli přijít na své. Právě pro ty je tento seriál směřován.

    Zdrojové kódy

    Pro kompilaci kernelu je potřeba obstarat si zdrojové kódy. Je možné použít ty, které jsou přibaleny v distribucích (u některých distribucí to doporučuji, pokud nechcete ztratit některé její funkce a vlastnosti), což není pravidlem. Je možné použít i zdrojové kódy jádra zcela čisté, bez přídavných záplat a doplňků, jimiž se liší různé distribuce. Osobně se přikláním k použití zdrojových kódů, jak se říká, přímo od výrobce tzv. vanilla kernel.

    Vždy se nejprve podívejte na www.kernel.org, kde je vidět aktuální situace okolo verzí Linuxu. Tam je možné stáhnout čisté zdrojové kódy - vanilla karnel.

    V článku Patchsety pro kernel jsou popisovány různé patchsety, tj. sady patchů připravené pro aplikaci na vanilla jádra.

    Po stažení zdrojových kódů (např. linux-2.6.13.tar.bz2) budeme potřebovat pro jejich rozbalení programy GNU tar, bzip2 (pro .tar.bz2) nebo gzip (pro .tar.gz), které jsou součástí všech distribucí.

    Má-li někdo starší verzi zdrojových kódů, má možnost je aktualizovat aplikováním záplat (tzv. patchů). Musí být však splněna podmínka: aktualizovat se musí postupně, takže pokud chci zdrojové kódy verze 2.6.10 aktualizovat na 2.6.12, musí se aplikovat nejprve patch na verzi 2.6.11 a následně patch na verzi 2.6.12. Pro patchování jádra je potřeba mít program patch. Pokud již systém obsahuje zdrojové kódy (nalézají se v /usr/src/) a chceme je záplatovat/aktualizovat, provedeme nakopírování patche na příslušné místo a aplikujeme jej:

    cp patch-2.6.13.bz2 /usr/src/linux-2.6.12
    bzip2 -dc patch-2.6.13.bz2 | patch -p1

    nebo

    gzip -cd patch-2.6.13.gz | patch -p1

    V případě, kdy zdrojové kódy ještě v systému nemáme, rozbalíme patřičný balíček, např:

    cp linux-2.6.13.tar.bz2 /usr/src
    tar -xvjf linux-2.6.13.tar.bz2

    nebo

    tar -xvzf linux-2.6.13.tar.gz

    Dále je vhodné vytvořit symbolický link na adresář se zdrojovými kódy.

    cd /usr/src
    ln -s linux-2.6.13 linux

    Potřebný software

    Po rozbalení je vhodné se podívat na soubor /usr/src/linux/Documentation/Changes, který obsahuje mimo jiného také souhrn programů a jejich verzí potřebných pro kompilaci a správný běh jádra. To se může čas od času měnit, proto je vhodné ověřit si, zda náš systém obsahuje požadované programy.

    Kompilace jádra

    I když nyní trochu předběhnu, popíši zde postup kompilace jádra. Nutný předpoklad je mít vybrané potřebné součásti kernelu před vlastní kompilací. Výběru komponent se budou týkat následující díly tohoto seriálu. Uvádím zde postup předčasně pro případné zájemce a pro ty, kdo chtějí experimentovat a zkusit si sestavit vlastní kernel ihned.

    1. V první fázi, pokud kompilujeme jádro ze stávajících zdrojových kódů poprvé, je nutné provést make mrproper, přeskočení tohoto kroku je častou příčinou neúspěšné kompilace nebo vytvoření chybně pracujícího jádra. Pokud jsme však již jádro kompilovali a provedeme make mrproper, pak dojde ke smazání také souboru .config, který ještě můžeme potřebovat.

      make mrproper
    2. Pokud budeme kompilovat ze zdrojových kódů, ze kterých se již jádro dříve kompilovalo, musíme smazat existující hlavičkové a binární soubory:

      make clean
    3. Jestliže jsme již jádro kompilovali (např. 2.6.12), a chceme použít existující konfiguraci i pro kompilaci jádra 2.6.13, použijeme existující .config:

      make oldconfig
    4. Nyní již následuje výber součástí jádra. Zde máme možnost použít několik režimů:

      make config
      příkazová řádka, postupné potvrzování, velmi zdlouhavé
      make menuconfig
      menu v textovém režimu

      menuconfig

      make xconfig
      menu v grafickém režimu, používá knihovny Qt

      xconfig

      make gconfig
      menu v grafickém režimu, používá knihovny GTK+2

      gconfig

    5. Výběru komponent jádra se budu věnovat v dalších dílech. Nyní následují další kroky po výběru komponent.

    6. Sestavení jádra a modulů se mírně liší u jader řad 2.4 a 2.6:

      Jádra 2.4 a nižší
      1. make dep - kontrola závislostí
      2. make bzImage - sestavení kernelu
      3. make modules - sestavení modulů
      Jádra 2.6
      1. make - sestavení kernelu a modulů
    7. make modules_install - instalace modulů do /lib/modules/linux-X.Y.Z

    Instalace zkompilovaného jádra

    Zatímco kompilaci je možné provádět jako běžný uživatel, pro instalaci jsou potřeba práva superuživatele.

    Po kompilaci nakopírujeme obraz jádra + další soubory do adresáře /boot. Doporučuji vytvořit si pro přehlednost i příslušný podadresář:

    mkdir /boot/2.6.13
    cp /usr/src/linux/System.map /boot/2.6.13
    cp /usr/src/linux/vmlinux /boot/2.6.13
    cp /usr/src/linux/arch/i386/boot/bzImage /boot/2.6.13
    cp /usr/src/linux/.config /boot/2.6.13 - zálohujeme .config

    Závěrečným krokem je nastavení zavaděče LILO nebo GRUB:

    LILO:
    image = /boot/2.6.13/bzImage
    label = linux-2.6.13
    root = /dev/hda1 # oddíl, na kterém je kořenový adresář /

    Nezapomeneme nainstalovat LILO do MBR příkazem lilo.

    GRUB:
    title Linux-2.6.13
    root (hd0,0)
    kernel /boot/2.6.13/bzImage ro root=/dev/hda1

    Závěr

    Úvodní díl nás seznámil s vlastní kompilací. V následujícím díle se zaměřím na zjišťování informací o našem hardware, které bude potřeba pro výběr jednotlivých komponent.

           

    Hodnocení: 88 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Diskuse byla administrátory uzamčena

    31.8.2005 01:14 D-Evil | skóre: 25 | Praha
    Rozbalit Rozbalit vše make install
    make install za vás kopírovaní do /boot provede (pokud se spokojíte s tím, že jsou všechny soubory přímo v /boot) a stejně tak za vás provede i znovuzapsání bootloaderu (LILO, Grub stačí nastavit, nemusí se zapisovat znova). Myslím, že tohle se hodilo do článku uvést. Jinak chválim.
    31.8.2005 08:24 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
    Rozbalit Rozbalit vše Re: make install
    pokud se spokojíte s tím, že jsou všechny soubory přímo v /boot
    Spíš pokud se spokojíme s tím, jak to chce vendor distribuce. Při instalaci se volá /sbin/installkernel.
    31.8.2005 10:10 Zdeněk Štěpánek | skóre: 57 | blog: uz_mam_taky_blog | varnsdorf
    Rozbalit Rozbalit vše Re: make install
    Zdravim

    Doporucovat make clean pred kazdou kompilaci je docela zbytecne. Pri make clean se vymazou veskere vysledky kompilaci a i pri sebemensi zmene v jadru se vse kompiluje znova. Coz ponekud trva, ze. Gcc prece pozna, kterej zkompilovanej soubor muze zachovat a kterej musi prekompilovat, tak to nechavam na nem.

    Je pravda ze obcas to zlobi, takze make clean davam jen pokud nastavim jiny typ procesoru (to by se stejne kompilovala vetsina jadra znova). Jinak ne.

    Zdenek
    www.pirati.cz - s piráty do parlamentu i jinam www.gavanet.org - czfree varnsdorf
    31.8.2005 11:24 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: make install
    blbost, mne to robilo problem takmer vzdy (jadro sa neskompilovalo, vyhodilo to nejake chyby)
    31.8.2005 11:36 J
    Rozbalit Rozbalit vše Re: make install
    Zajimave, osobne make clean pouzivam vyhradne pokud menim neco primo v kernelu, ale protoze vetsinou jde jen o pridani odebrani modulu, je to naprosto zbytecne. Ovsem tak ci onak se mi jeste nestalo, ze by se mi kernel neprelozil.
    31.8.2005 11:41 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: make install
    ked menis len moduly, tak je to jasne, moduly sa skompiluju aj bez jadra (resp. nemusis kompilovat jadro, ono si to vsetko potrebne skompiluje)
    31.8.2005 14:18 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: make install
    No, patchoval jsem jádro už všelijak a vždycky to dopadlo dobře.
    31.8.2005 22:33 Marekhttp://www.root.cz/clanky/nova-softwarova-sklizen-31-8-2005/nazory/vsm Turnovec
    Rozbalit Rozbalit vše Re: make install
    Zajímavé, mě to nedělalo problém snad nikdy. A to možná ani s kernelem 2.4...
    31.8.2005 19:46 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: make install
    Ono je to spíš tak, že problémy byly u jader řady 2.4 a starších. U řady 2.6 byl proces kompilace a linkování výrazně pročištěn, takže se bez 'make clean' obejdete.
    31.8.2005 21:16 Pavel Janousek
    Rozbalit Rozbalit vše Re: make install
    Naopak je vice nez vhodne, zejmena u RPM jader z produkce Red Hat Inc. dat pred prvni kompilaci make mrproper (aspon na 2.4.X), modri uz vedi...:-)
    31.8.2005 01:32 magdalenka
    Rozbalit Rozbalit vše :-)
    Konečně ucelený článek, ze kterého to pochopí i taková lamka jak já... :-)
    31.8.2005 09:21 misk0
    Rozbalit Rozbalit vše Re: :-)
    http://avc.sh.cvut.cz/archiv/index.php?id=1041&rid=212&offset=0&select=0
    31.8.2005 08:06 Xóža Hňabaj | skóre: 15 | blog: popcorp | Brno
    Rozbalit Rozbalit vše Otázka
    Zajimalo by mě, jak moc je nutné provádět make clean při nové kompilaci jádra z už jednou použitých zdrojáků. Když například zjistím, že by se mi hodilo mít ještě nějaký modul v jádře, tak překladač může použít *.o soubory které už jednou zkompiloval. Nebo se mýlím?
    Jednaokový biu
    31.8.2005 08:30 Antonín Kolísek | skóre: 33 | blog: PDA | Vyškov
    Rozbalit Rozbalit vše Re: Otázka
    Pokud je potřeba dodělat modul, tak make clean také nedávám. Když něco doplním přímo do jádra, tak si nedovolím nedát make clean. On člověk nikdy neví. Jinak make clean je na místě v případě, že kompilace nedopadne dobře, nebo jádro nějakým způsobem nepracuje správně.
    31.8.2005 11:27 azurIt | skóre: 34 | blog: zatial_bez_mena
    Rozbalit Rozbalit vše Re: Otázka
    ono ked si chces skompilovat moduly, tak jadro kompilovat vobec nemusis, proste preskocis krok 'make bzImage'
    31.8.2005 08:07 camlost
    Rozbalit Rozbalit vše (nejen) češtin
    Ahoj autore ;-), včera jsem ti slíbil zdrcující kritiku, tady ji máš:
    • ještě více pomalé = ještě pomalejší
    • plno věcí,jak = plno věcí, jak (mezera)
    • zdrojových kódů jak se říká přímo = zdrojových kódů, jak se říká, přímo

    No, dál to vypisovat nebudu, ale po téhle stránce jsi to nezvládl.

    cd /usr/src ln -s linux-2.6.13 linux

    :-O A na to jsi přišel jak? Co je na tom? Přečti si http://linuxmafia.com/faq/Kernel/usr-src-linux-symlink.html - za tohle si pochvalu nezasloužíš.

    cp /usr/src/linux/.config /boot/2.6.13 - zálohujeme .config

    Není na tohle nějaká šikovná volba v kernelu? Třeba CONFIG_IKCONFIG?

    31.8.2005 08:25 Antonín Kolísek | skóre: 33 | blog: PDA | Vyškov
    Rozbalit Rozbalit vše Re: (nejen) češtin
    Beru kritiku. A proč by ne? Rád jsem se přiučil. Ten symlink jsem nevěděl :)

    Ad .config - ano,linux-2.6 umí od jisté doby aby v /proc/config.gz byla konfigurace jádra. Ale to jen toho stávajícího. Pokud se chci podívat jak jsem to měl v tom předchozím, to už je jaksi smůla. Proto zálohovat .config :)
    2.9.2005 00:55 Lukas
    Rozbalit Rozbalit vše Re: (nejen) češtin
    Muze mi nekdo prosim osvetlit pointu odkazovaneho clanku na linuxmafia? Jaksi jsem to s tim symlinkem nepochopil, v cem je takovy vazny problem? http://linuxmafia.com/faq/Kernel/usr-src-linux-symlink.html

    diky, Lukas
    4.9.2005 02:16 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: (nejen) češtin
    Problém je v tom, že aplikace nekomunikují přímo s jádrem ale s knihovnou libc. Proto by měly být při kompilaci includovány hlavičkové soubory, které odpovídají jejímu interface.
    4.9.2005 22:27 JaSan
    Rozbalit Rozbalit vše Re: (nejen) češtin
    Volakedy sa robievali taketo symbolicke linky:
    /usr/include/linux -> /usr/src/linux/include/linux
    /usr/include/asm   -> /usr/src/linux/include/asm-i386
    
    V /usr/include/linux a /usr/include/asm vsak maju byt hlavickove subory, za pouzitia ktorych bola skompilovana kniznica GNU libc a nie subory z naposledy skompilovaneho kernelu.

    Dnes sa pri kompilacii GNU libc pouzivaju dokonca mierne upravene include subory z balika linux-libc-headers, ktory dava dokopy Mariusz Mazur. Tento balicek sa da najst na adrese: http://ep09.pld-linux.org/~mmazur/linux-libc-headers/

    Pouzitie najnovsich hlavickovych suborov pri kompilacii GNU libc neznamena ze je mozne pouzit uz len Linux verzie takej ake su hlavickove subory alebo vyssej. To sa zabezpecuje volbou --enable-kernel=X.Y.Z pri kompilacii glibc.
    5.9.2005 16:31 zde | skóre: 9 | blog: Linuch | Brno
    Rozbalit Rozbalit vše Re: (nejen) češtin
    Přiznám se že tomu absolutně nerozumím. Je jasné že glibc potřebuje pro vlastní kompilaci headery z jádra, aby vědělo čísla syscallů, ioctl-ek, a offsety jednotlivých položek v různých struct-ech.

    Ale měl jsem za to, že glibc poskytuje API na tak vysoké úrovni, že kernelovské API je skryto, a glibc dělá překlad (viz třeba struct stat).

    Je to tedy jinak? Pro překlad a linkování aplikace nad glibc potřebuji kernel headers?
    Táto, ty de byl? V práci, já debil.
    31.8.2005 08:25 Robert Krátký | skóre: 94 | blog: Robertův bloček
    Rozbalit Rozbalit vše Re: (nejen) češtin
    No, dál to vypisovat nebudu, ale po téhle stránce jsi to nezvládl.
    Chyby tohoto typu jdou na moji hlavu.
    cp /usr/src/linux/.config /boot/2.6.13 - zálohujeme .config

    Není na tohle nějaká šikovná volba v kernelu? Třeba CONFIG_IKCONFIG?

    O konfiguračních volbách budou další díly, ne? Pokud tím myslíš, že zálohování souboru .config je díky možnosti uložení konfigurace do jádra zbytečné, tak s tím nesouhlasím. Mnohdy se totiž může hodit konfigurační soubor k jádru, které ti zrovna neběží.
    31.8.2005 10:47 camlost | skóre: 7
    Rozbalit Rozbalit vše Re: (nejen) češtin
    Mnohdy se totiž může hodit konfigurační soubor k jádru, které ti zrovna neběží.

    Nechci (a snad to ani nedělám) se hádat o "mnohdy" - obvykle mi doma běží jeden kernel (říkejme mu) stabilní, další - originální distribuční - se toulá někde na disku a třetí - up-to-date - právě kompiluju. Věren "podle sebe soudím tebe" jsem předpokládal, že ostatní jsou na tom stejně. ;-)

    Ještě ke včerejší debatě - napadl mě argument proti make bzImage. (Omlouvám se za nenavazující příspěvek, kdyby to vadilo, tak ho někdo smažte.) Kdysi jsem na nějaký stařičký stroj (12 MB RAM?, 200 MB hdd) instaloval linux. Hledal jsem rozumně aktuální distribuci, kterou by bylo možné nainstalovat. Zkoušel jsem RockLinux. Jeho instalační balíčky jsou baleny bzip2kou a vůbec se mi nepodařilo nainstalovat base_system, protože to prostě nešlo rozbalit. Včera mě napadlo, že může existovat platforma, na které není bzip2 z nějakého důvodu použitelný nebo neexistuje. Protože je snaha, aby byl linux přenositelný, měl by být přenositelný i proces kompilace kernelu. Tím spíš, že je algoritmicky snadno zvladatelné. (Možná je to příliš umělá myšlenková konstrukce :-).)

    Jinak k těm adresářům v /boot - tam se mi líbí trošku jiný systém. (But hey, this is a free software, you are free to use it your own way.) Už asi dva roky si říkám, že to tak udělám, ale ještě k tomu nedošlo - sdílená /boot partition. V /boot by pak byly adresáře pro jednotlivé distribuce. V případě grubu s tím není problém, s lilo by asi pomohl symlink /etc/lilo.conf -> /boot/<distro_id>/lilo.conf.

    A slow biker.
    31.8.2005 11:24 Antonín Kolísek | skóre: 33 | blog: PDA | Vyškov
    Rozbalit Rozbalit vše Re: (nejen) češtin
    bzImage sem opravdu teď nepatří, to je jen mezi mnou a tebou (nemyslím šéfredaktora) a včera se to vyřešilo :))

    .config - určitě byl kde kdo postaven před problém, kdy dal něco jako modul, nebo do jádra a ono to nepracovalo správně, protože to bylo právě naopak :) (třeba takový agpgart a Nvidia). No jo,ale co když to mám právě v aktuálním jádře "asi" špatně a nevím jak jsem to měl v tom minulém kdo to bylo OK? Ha, mám zálohy .config :)) Takže k tomu to je dobré.

    Sdílená /boot parition:

    1/ Každý nemá několi distribucí aby musel /boot sdílet. 2/ speciální oddíl pro /boot pochází hlavně z historie, kde to bylo kvůli LILO zavaděči, který neuměl číst za 1024 cylindrem. Když to vezmu kolem a polem, tak nevidím rozumný důvod, prč dávat /boot na speciální oddíl.
    31.8.2005 12:27 camlost | skóre: 7
    Rozbalit Rozbalit vše Re: (nejen) češtin
    Takže k tomu to je dobré.

    To nezpochybňuju. Jen to není nutné, protože ten .config získáš z běžícího kernelu, pokud jsi nastavil CONFIG_IKCONFIG=y. Což má tu výhodu, že se ti to udělá samo, pokud přenášíš .config mezi jednotlivými verzemi. (Já to nedělám, .config používám jen v rámci např. 2.6.12.x vzhledem k současnému způsobu vývoje.) Představ si, že zapomeneš na to cp .config ... a smažeš zdrojáky. No, tobě to třeba nevadí, protože kompiluješ kernel skoro tak často jako já ;-) a znáš ty volby.

    Samostatný oddíl na /boot je ve stroji s jedním linuxem asi skutečně k ničemu. Mrknu se na notebook, jestli tam mám /boot samostatně... aha, nemám. :-) Tak buď je to náhoda, nebo mám zrovna v tomhle asi jasno ;-). Btw. ale doma mám 3 disky a jen na jednom z nich mám 12 partition. A níž nejdu. ;-)))

    A slow biker.
    31.8.2005 13:23 Antonín Kolísek | skóre: 33 | blog: PDA | Vyškov
    Rozbalit Rozbalit vše Re: (nejen) češtin
    OK, ale mám-li v jádře CONFIG_IKCONFIG=y, tak se mohu podívat jen na konfiguraci běžícího jádra. Abych zístil, jak je to v jiném kernelu, musím rebootovat a to někdy není příliš výhodné.
    31.8.2005 18:18 Marcel Šebek | skóre: 21 | blog: c
    Rozbalit Rozbalit vše Re: (nejen) češtin
    2/ speciální oddíl pro /boot pochází hlavně z historie, kde to bylo kvůli LILO zavaděči, který neuměl číst za 1024 cylindrem. Když to vezmu kolem a polem, tak nevidím rozumný důvod, prč dávat /boot na speciální oddíl.

    Jeden důvod bych vědel. Když uživatel chce používat reiser4 jako kořenový filesystém a grub jako bootloader, tak mu nezbyde než buď opatchovat grub nebo udělat extra oddíl pro /boot a jako filesystém dát jeden z mnoha podporovaných.

    Real programmers don't comment their code. If it was hard to write, it should be hard to read.
    31.8.2005 21:15 David Jaša | skóre: 44 | blog: Dejvův blog
    Rozbalit Rozbalit vše Re: (nejen) češtin
    To platí i pro mnohem rozšířenější XFS.
    5.9.2005 16:32 zde | skóre: 9 | blog: Linuch | Brno
    Rozbalit Rozbalit vše Re: (nejen) češtin
    Proboha mějte rozum a nepoužívejte grub.
    Táto, ty de byl? V práci, já debil.
    5.9.2005 18:39 Marcel Šebek | skóre: 21 | blog: c
    Rozbalit Rozbalit vše Re: (nejen) češtin
    Proč?
    Real programmers don't comment their code. If it was hard to write, it should be hard to read.
    6.9.2005 10:20 zde | skóre: 9 | blog: Linuch | Brno
    Rozbalit Rozbalit vše Re: (nejen) češtin
    1) je to mamut 2) neumí nic, co by neumělo Lilo 3) nenačte kernel z FS, který neumí. 4) je to mamut. Jestli něco z toho není pravda, rád se to dozvím.
    Táto, ty de byl? V práci, já debil.
    6.9.2005 13:05 Antonín Kolísek | skóre: 33 | blog: PDA | Vyškov
    Rozbalit Rozbalit vše Re: (nejen) češtin
    Když někdo používá ext2/ext3fs (a takových není málo), nemá šifrovaný FS (takových je většina) a nedělá mu (GRUB) problémy, tak proč používat LILO?
    6.9.2005 17:57 Lynn | skóre: 16 | blog: hell | Němčice
    Rozbalit Rozbalit vše Re: (nejen) češtin
    proč grub? třeba proto, že neměl problém se nainstalovat na linux native, kdežto lilo protestovalo... a na mbr proste bootloader nechci...
    To je síla televize...
    15.9.2005 15:42 David
    Rozbalit Rozbalit vše Re: (nejen) češtin
    no a umi uz Lilo takove pekne graficke prostredi pri bootu, s vyberem images, jako to ma Grub? Ne ze by to bylo dulezite, ale spoustu jinych veci mam taky jenom proto, ze se mi libi. :)
    19.10.2005 14:05 Petr
    Rozbalit Rozbalit vše Re: (nejen) češtin
    Obrázky umí. Někde sem dokonce viděl aj animované lilo (-:
    1.9.2005 08:46 b0rmann | skóre: 15 | Pardubice
    Rozbalit Rozbalit vše proč dávat /boot na speciální oddíl
    Když to vezmu kolem a polem, tak nevidím rozumný důvod, proč dávat /boot na speciální oddíl.
    Jednoduchy priklad - mam cryptovany souborovy system. Bez samostatneho necryptovaneho /boot bych to ani nahodou nerozjel :)
    --- Gott strafe Amerika
    31.8.2005 12:23 Robert Krátký | skóre: 94 | blog: Robertův bloček
    Rozbalit Rozbalit vše Re: (nejen) češtin
    obvykle mi doma běží jeden kernel (říkejme mu) stabilní, další - originální distribuční - se toulá někde na disku a třetí - up-to-date - právě kompiluju.
    U mě to vypadá tak, že po kompilaci a instalaci nového jádra ještě ponechávám nějakou dobu na disku to, které nahrazuji. Když je s nově zkompilovaným něco v nepořádku, pak se mi hodí .config z toho předchozího, o kterém vím, že fungovalo správně.
    Jinak k těm adresářům v /boot - tam se mi líbí trošku jiný systém. (But hey, this is a free software, you are free to use it your own way.)
    Asi tak. Taky to dělám jinak, ale i popsaný způsob má své výhody. Je pravda, že samotnou kompilaci provádím ve svém $HOME, ale při přípravě článku mě nenapadlo na to autora upozornit.
    4.9.2005 22:36 JaSan
    Rozbalit Rozbalit vše Re: (nejen) češtin
    Pokial sa nemylim, Linux si hlada subor System.map tak, ze najprv skusi /boot/System.map-"verzia" a potom /boot/System.map. To znamena ze na System.map sa nemusi vytvarat symbolicka linka, ale nehovori to vobec o tom, ze mozes hodit System.map mimo /boot.

    Ak sa mylim, prosim opravte ma.
    31.8.2005 22:40 Marek Turnovec
    Rozbalit Rozbalit vše Re: (nejen) češtin
    A kdo rika, ze ten kernel musi bezet? K cemu je pak asi scripts/extracts-ikconfig? To presne dela ta volba CONFIG_IKCONFIG. To ze je to z beziciho kernelu pristupne v /proc/config.gz, to uz je jen tresnicka na dortu. :-)
    31.8.2005 19:04 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: (nejen) češtin
    http://linuxmafia.com/faq/Kernel/usr-src-linux-symlink.html
    Píše se rok 2005...
    31.8.2005 22:07 camlost | skóre: 7
    Rozbalit Rozbalit vše Re: (nejen) češtin
    Dekuji za pripomenuti. Ono se to od te oby zmenilo? :-O
    A slow biker.
    31.8.2005 10:49 xxx
    Rozbalit Rozbalit vše Vydareny clanek
    Myslim, ze je to velmi vydarene (ma to hlavu a patu, je to vecne...). Doufam, ze ti forma vydrzi a tesim se na dalsi dily, kde to vezmes trochu podrobneji a upozornis nas na mozne problemy (pri prekladech se spatnym gcc apod.).
    31.8.2005 12:45 jgv | skóre: 13
    Rozbalit Rozbalit vše Mozna pridat cislovani
    Hezky clanek, akorat mozna by neskodilo pridat jak je to s cislovanim jader, ktera jsou stabilni/testovaci.
    31.8.2005 13:21 Antonín Kolísek | skóre: 33 | blog: PDA | Vyškov
    Rozbalit Rozbalit vše Re: Mozna pridat cislovani
    Tohle jsem v článku měl,ale po uvážení redakce to bylo odstraněno :/
    31.8.2005 23:59 taif
    Rozbalit Rozbalit vše Re: Mozna pridat cislovani
    Hehe, urcite vis, ze od 2.6.x je vsechno uplne jinak ... jinak za _REAL_ stable (v 2.6) povazuji 2.6.11.12.
    31.8.2005 13:56 Zdenek
    Rozbalit Rozbalit vše Debian?
    Hezké, ale v Debianu potřebuju ještě vyrobit jakýsi /boot/initrd.img-2.6.x-686, který má cca 4MB. Pravděpodobně jej vyrábějí skripty z balíčku initrd-tools, ale k čemu je to dobré, a hlavně proč to neudělá přímo make install, to je mi záhadou.
    31.8.2005 14:01 Antonín Kolísek | skóre: 33 | blog: PDA | Vyškov
    Rozbalit Rozbalit vše Re: Debian?
    K čemu je potřeba initrd a jak se vyrábí popíši v jedno z dílů.
    31.8.2005 14:23 Martin
    Rozbalit Rozbalit vše Re: Debian?
    Ak pridas do kernelu podporu suboroveho systemu, ktory pouzivas (nie ako modul), tak ho potrebovat nebudes.
    31.8.2005 19:52 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Debian?
    To není také tak úplně pravda. Přesněji řečeno to není vůbec pravda. Jen namátkou:
    • kořenový filesystém je na řadiči, jehož driver je jako modul
    • kořenový filesystém je softwarovém RAIDu
    • kořenový filesystém je na NFS
    31.8.2005 14:29 hrobar | skóre: 13
    Rozbalit Rozbalit vše Re: Debian?
    Ako sa kompiluje jadro v debiane najdes tu: http://www.debian-administration.org/articles/202 Pouzivam debian asi 2-3 roky a napriek tomu jadro kompilujem standardnym sposobom. K tomu make clean, v zivote som ho nepouzil a to som v jadre menil aj veci priamo v jadre. Mam zasebou doslova stovky kompilacii(rad spekulujem) a nikdy som s tym nemal problemy tak neviem.
    31.8.2005 16:02 Zdenek
    Rozbalit Rozbalit vše Re: Debian?
    ext2 59952, ext3 108186, reiserfs 227060, jfs 170585 size -t /lib/modules/2.6.8-2-686/kernel/drivers/ide/pci/* 202607

    Ve srovnání s (gzipnutým!) 4MB initrd je to směšně málo. Nebylo by tedy lepší s initrd vůbec nešaškovat, a mít ovladače pro obvyklé IDE čipsety a filesystémy přímo v jádře? Zdá se mi že debianové to s tou "generality through obscurity" docela přehánějí. :(
    31.8.2005 16:51 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
    Rozbalit Rozbalit vše Re: Debian?
    To samé dělají všechny binární distribuce :-).

    Jinak tam určitě budou i ovladače pro SCSI, RAID, LVM, programy na sestavení RAIDu a LVM atd...
    31.8.2005 19:11 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Debian?
    Použití initrd je v debianu defaultní, což ale neznamená, že je to povinné.
    Quando omni flunkus moritati
    31.8.2005 20:44 ###
    Rozbalit Rozbalit vše Re: Debian?
    Co myslíš, tím defaultní?
    1.9.2005 02:33 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Debian?
    Viz odkaz o něco výše - jádro se obejde bez initrd, když si ho tak nastavíte. Default nastavení (tj. .config soubor z balíčku kernel-source) je takové, že se initrd při startu používá
    Quando omni flunkus moritati
    31.8.2005 21:16 Pavel Janousek
    Rozbalit Rozbalit vše Re: Debian?
    No vite on je docela problem vyrobit monoliticky kernel, ktery by mel slusne moznosti a zaroven byl bootovatelny z FDD... - myslim tim realnou FDD a bootovani via loadlin nebo neco podobneho...
    1.9.2005 00:04 taif
    Rozbalit Rozbalit vše Re: Debian?
    Souhlas, nejde jen o FDD, proste kernel zustane maly a vsecko,co jde jako modul, necht je jako modul, ono si to jadro nejak probere :o). Kazdy, kdo si kompiluje vlastni jadro (namiru), vsak initrd nepotrebuje.
    1.9.2005 10:01 Zdenek
    Rozbalit Rozbalit vše Re: Debian?
    Nojo, jenze kdyz je neco jako modul, tak to potrebuju ruznejma hackama inicializovat, takze hafo skriptu a neprehlednejch konfiguraku a userspace binarek, sprava zavislosti a pomalej boot, studeny parky, teply pivo a dalsi osklive veci.
    1.9.2005 13:39 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Debian?
    Na druhou stranu, když je něco zakompilované do jádra, tak tomu už nemůžete zadat žádné parametry, což je někdy potřeba.
    Quando omni flunkus moritati
    1.9.2005 18:08 taif
    Rozbalit Rozbalit vše Re: Debian?
    Tak to zas neni tak uplne pravda,od ceho tu mame /proc/sys ;o)
    1.9.2005 20:01 Marcel Šebek | skóre: 21 | blog: c
    Rozbalit Rozbalit vše Re: Debian?
    Stačí předat jádru parametr ve formátu modulename.option (u 2.6).
    Real programmers don't comment their code. If it was hard to write, it should be hard to read.
    1.9.2005 18:13 taif
    Rozbalit Rozbalit vše Re: Debian?
    Jaky hacky :)?Ja myslel,ze rozhrani pro moduly je pevne dany ... a ze 2.6.x je uz ma celkem vymakany. Mno pomalej boot ... pokud nebotujes 5x denne, tak te tech par sekund, co zkonzumuje mprobe, prece nemuze rozhodim. Ja osobne povazuji moduly v linuxu za skvelou vychytavku a co jde, kompiluji jako modul.
    2.9.2005 11:05 Zdenek
    Rozbalit Rozbalit vše Re: Debian?
    Modprobe vcelku jde, ale depmod -a je obcas na odchod do sprchy. Netusim k cemu je, a tak na to radsi moc nehrabu. A konfigurace je slozita jak mlaticka, viz "find /etc/mod* -type f".

    Je to podobnej hokej jako X11- desitky konfiguraku, nektere se edituji rucne, nektere se generuji automaticky (cti: casto jsou neaktualni a neco proto nefunguje)..

    Jo a nejvic me dojima ze moduly pro char/block devices se "zavadeji" uzasne explanatory prikazem "alias" :) Proste jak ma neco 26 konfiguracnich souboru, tak to logicky nemuze byt "dobra vec tm".
    1.9.2005 09:45 Zdenek
    Rozbalit Rozbalit vše Re: Debian?
    Ale ten initrd musite nacpat na FDD taky. Mam takovej pocit ze syslinux umi jednak "poskladat" initrd z vice souboru (disket?), a to same zrejme bude umet i pro bzimage- takze neni problem bootovat kernel vetsi nez je velikost floppy (pripadne tak syslinux upravit).

    Debianske boot floppies nemaji (nemely) zadny initrd, jen root disk, a 4 diskety s modulama se nahravaly normalne do ramdisku.
    31.8.2005 21:44 janosh | skóre: 8 | blog: janosh_blog | Třebíč
    Rozbalit Rozbalit vše pěknej článek
    Výbornej článek na něco takovýho sem už dlouho čekal :-).
    Linux is like teepee, no windows, no gates, apache inside!
    1.9.2005 18:51 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: pěknej článek
    taky si myslim, pockam si na dalsi dily
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    1.6.2007 20:47 Jan Odvárko | skóre: 10
    Rozbalit Rozbalit vše Re: Cesta do hlubin kompilace jádra - 1
    Díky za článek, pomohl mi.
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.