Portál AbcLinuxu, 30. dubna 2025 15:39
To zní skoro jako obvinění z plagiátorství (pokud lze o něčem takovém ve světě open source hovořit). Informace jsem získal na různých webových stránkách, jejich adresy jsem si nepsal a poté, co jsem zjstil, že jsou tam buď neúplné nebo dokonce nepravdivé informace, zbytek jsem si doplnil vlastním experimentováním. Zejména použití helpu, které považuji za dost zásadní, není snad popsáno nikde a řada uživatelů píše, že jim help nefunguje. Přitom stačí tak málo (insmod help). Proto jsem se rozhodl napsat toto shrnutí a doplnění.
Zmíněnou wiki stránku jsem předtím nenavštívil, není mému textu ani moc podobná. Shoduje se jen v několika bodech, ve kterých se musí shodovat všechna pojednání na stejné téma, totiž v pravdivých informacích na dané téma.
Jsem ale vděčný za její uvedení, protože jsem tam našel to, co jsem také dosud marně hledal a to stránkování dlouhého výpisu pomocí proměnné pager.
Závěrem si dovolím upřesnit použití proměnné pager, stačí napsat set pager=1
aby se po jedné stránce výpis zastavil. V rescue režimu ale proměnná pager nefunguje, jen v režimu normálním. A ještě upozornění na nepravdivou informaci z této wiki stránky. Nepřítomnost konfiguračního souboru grub.cfg nezpůsobí spuštění grubu v rescue režimu, grub tento soubor pro svou práci nepotřebuje, je to jen nabídka bootovacích možností na konkrétním počítači, bez které se lze obejít. Na USB klíčence, kterou lze použít k bootování různých počítačů, by to byl nesmysl.
Nepřítomnost konfiguračního souboru grub.cfg nezpůsobí spuštění grubu v rescue režimu, grub tento soubor pro svou práci nepotřebuje, je to jen nabídka bootovacích možností na konkrétním počítači, bez které se lze obejít.Máš pravdu za předpokladu, že ten grub má k dispozici vše potřebné pro zavedení dalších modulů. Viz kupř. grub na tom externím USB klíči. V rescue mode končí, když se k nim z nějakého důvodu nedostane. V takovém případě je pak nutno mu to říct ručně. Informace, která mu řekne kde je zbytek modulů a jak se mají zavést bývá v případě grubu instalovaného na PC právě součástí grub.conf
Aby se dostal ke svým modulům, musí mít správně nastavený ten root. A to je součást toho kusu dat co je uložen v té počáteční části disku, než začne první logický oddíl.
Uvádím ten příklad. Tohle musím provést ručo vždy když zaktualizuji balík grub-pc, protože to sám neumí nastavit. Mám totiž systém na logickém LVM diskovém oddíle, který je nad linuxovým SW raidem verze 1.2
grub-mkimage -o /boot/grub/core.img \ -O i386-pc -p "(data-system)/boot/grub" \ biosdisk \ part_msdos \ mdraid1x \ lvm \ reiserfs \ minicmd ; \ grub-setup /dev/sda; \ grub-setup /dev/sdb
Co to dělá.. Nejprve pomocí grub-mkimage vygeneruješ ten kus kódu, co se vloží do té části na začátku disku.
grub.cfg
a případně další potřebné moduly. Nicméně ano, jsi již v tomto případě schopen natahovat další moduly a systém nastartovat i bez tohoto souboru.core.img
jej příkazem grub-setup zavedešNevím jak přesně vzniká ten výchozí core.img
, jestli se provádí nějaká analýza při instalaci balíčku, ale vím, že při každé aktualizaci jsem to zatím musel udělat. Je to věc o níž píšu už na těch manuálových stránkách. Komunikoval jsem o tom i přímo s vývojáři grubu. No. To že v té době z svn přešli na bazaar místo na git hovoří za vše.
Teď vyšla nějaká nová verze - nevím jestli už to nějak pořešili - to uvidím zase při aktualizaci. Ale když jsem aktualizoval naposled, tak jsem ten výše uvedený příkaz u jednoho stroje zapoměl spustit a dopadnul jsem stejně jeko dřív.
To zní skoro jako obvinění z plagiátorstvíTo určitě ne... spíš bych to viděl na prosbu o linky, ze kterých čerpal informace kvůli možnosti dalšího studia či doplnění informací.
(pokud lze o něčem takovém ve světě open source hovořit).A to je zas úplně jiné téma. V open source funguje plagiátorství úplně stejně jako všude jinde. Když vydávám něco, co je z velké části kopií jiného díla, za své, je to plagiátorství nejen v open source, ale dokonce i kdyby to bylo public domain. Ale to by bylo na dlouhou debatu vyvažování toho, co je podstatná část, a kdy se nejedná o plagiátorství, protože autor naopak něco schválně vydal pod jménem druhého, apod.
grub-install --root-directory /boot/grub /dev/sdc1Root directory? a na USB flash disku? No nevím, já jsem na tyto účely používal grub4dos popř. jsem modifikoval syslinux. Grub měl celkem problém s tím, aby sám sebe napral někam na VFAT FS.
Protože jsem hledal pomoc na internetu a k rescue režimu jsem se toho moc nedozvědělZajímavé. Já jsem tu pomoc během chvilky našel a dokonce jsem se pomocí
set prefix...
a insmod
dohrabal až do nabootování systému. Navíc mi to pomohlo o kousek víc porozumět tomu, jak grub funguje.
BIOS nejprve hleda zavadec v MBR a pokud tam neni, pak teprve hleda zavadec na zacatku aktivniho oddilu.Je to AFAIK trochu jinak - BIOS vzdy zavede a spusti kod z MBR, tam muze byt bud first stage regulerniho zavadece (jako GRUB) [*], nebo tam muze byt stub kod, ktery jen nacte boot record aktivniho oddilu a spusti ho. Tenhle kod se v DOSu dal obnovit (a tim napr. odinstalovat regulerni zavadec) pomoci prikazu 'fdisk /mbr' BIOS tedy vubec nemusi nic vedet o partition table, vzdy nacte jen prvni sektor (MBR). [*] zbytek regulerniho zavadece byva v 'dire' mezi MBR a prvni partition (ktera tam je z historickych duvodu pouzivani CHS v partition table).
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.