Přihlásit | Registrovat

Jak připravit bootovací flash klíčenku pro instalaci Mandriva Linuxu

V poslední době jsou rozšířeny stroje bez DVD/CD mechanik, proto je vhodné umět spustit boot systému i z USB disku. Postup by neměl být závislý na konkrétní verzi Mandriva Linuxu, ale zatím byl testován jen na 2009.0. Potřeba jen USB disk a nainstalována některá verze Mandriva Linux se zavaděčem GRUB.

Než začnete - existuje naprosto jednoduchý způsob, než je zde popisovaný. Stáhněte si program http://unetbootin.sourceforge.net, vyberte ISO a už to frčí, za pár minut máte bootovací flash disk nebo datovou kartu.

Používáte-li (v tuto chvíli nejnovější) verzi Mandriva Linuxu 2010.0, vytvoří za vás bootovací flash klíčenku skript mandriva-seed. Podrobny popis je zde.

Vytvoření pracovniho adresáře:

mkdir ~/MDVUSB
cd ~/MDVUSB

Stáhnutí img souboru na boot Mandriva Linux 2009.0 (pro architekturu i586). Odzkoušeno i na 64bit, boot naběhl také.

wget -O all.img ftp://ftp.free.fr/pub/Distributions_Linux/MandrivaLinux/official/2009.0/i586/install/images/all.img

Vytvoření souboru device.map pro grub, pozor na pořadí disků, předpokládáme, že USB je dostupný pod /dev/sda a první pevný disk je /dev/hda (O pevný disk se nemusíte starat, pokud nemáte v plánu z USB spouštět již nainstalovaný systém na pevném disku).

echo "(hd0) /dev/sda" > device.map
echo "(hd1) /dev/hda" >> device.map

Vytvoření mountovacích adresářů, kde bude dočasně připojen USB disk a image zaváděcího obrazu.

mkdir iso
mkdir flash

Vytvoření menu.lst souboru pro zavaděč GRUB

vi menu.lst

# Boot z USB disku
# Automaticky boot po 20 sekundach
timeout 20

# Vychozi boot 0.
default 0

# boot mandriva 2009.0 install
title Mandriva 2009.0 install
root (hd0,0)
kernel (hd0,0)/boot/vmlinuz root=/dev/ram3 ramdisk_size=512000 vga=791
initrd=(hd0,0)/boot/all.rdz

title Mandriva 2009.0 HARD DISK
kernel (hd1,6)/boot/vmlinuz BOOT_IMAGE=Mandriva_2009.0 root=/dev/hda7 resume=/dev/hda6 vga=791
initrd (hd1,6)/boot/initrd.img

Uložení pomocí zmáčknutí ESC a pak :x

Přepnutí na uživatele root

su
HESLO

Podle velikosti USB disku zvolit prametr -H, v případě 1GB tedy 32. Viz. následující tabulka:

 Drive Size      fdisk argument 
 ------------    -------------- 
    0-    63 MiB    -H 2 
   64-   126 MiB    -H 4 
  127-  252 MiB    -H 8 
  253-  504 MiB    -H 16 
  505-  1008 MiB    -H 32 
 1009- 2016 MiB    -H 64 
 2017- 4032 MiB    -H 128 
 4033- 8032 MiB    -H 255 
    >     8032 MiB    -H 255  (That's as high as it goes thus you can't avoid the warning message.)

!!! Pozor! Smažou se data na USB disku !!!

fdisk -H 32 /dev/sda

Příkaz (m pro nápovědu): d
Selected partition 1

Příkaz (m pro nápovědu): n
Příkaz
   e   rozšířený diskový oddíl
   p   primární diskový oddíl (1-4)
p
Číslo diskového oddílu (1-4): 1
První cylindr (1-2110, default 1): 1
Poslední cylindr či +velikost či +velikostM či velikostK (1-2110, default 2110): 2110
Using default value 2110

Příkaz (m pro nápovědu): t
Selected partition 1
Šestnáctkově (L vypíše kódy):b
Typ diskového oddílu 1 byl změněn na b (W95 FAT32).

Příkaz (m pro nápovědu): a
Číslo diskového oddílu (1-4): 1

Příkaz (m pro nápovědu): p

Disk /dev/sda: 1054 MB, 1054605312 bytes
16 heads, 61 sectors/track, 2110 cylinders
Units = cylindry of 976 * 512 = 499712 bytes

Zařízení Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        2110     1029649+   b  W95 FAT32

Příkaz (m pro nápovědu): w

mkdosfs -F 32 -n MDVUSB /dev/sda1

Zapsána tabulka rozdělení disku na USB disk.

Připojení img souboru a USB disku

mount -t vfat /dev/sda1 flash
mount -o loop all.img iso

Kopírování potřebných souborů na USB

mkdir -p ./flash/boot/grub
cp -a ./iso/* ./flash/boot/
cp /boot/grub/* ./flash/boot/grub/
cp -f ./menu.lst ./flash/boot/grub/menu.lst
umount flash
umount iso
sync

Začíná práce se zavaděčem GRUB

grub --device-map=device.map /dev/sda
grub> root (hd0,0)

By mělo vypsat něco takového:
Filesystem type is fat, partition type 0xb

grub> cat (hd0,0)/boot/ zmáčknout ESC

Pokud vypíše soubory advanced.msg grub ldlinux.sys vmlinuz all.rdz help.msg syslinux.cfg je vše v pořádku.

grub> setup (hd0)
 Checking if "/boot/grub/stage1" exists... yes
 Checking if "/boot/grub/stage2" exists... yes
 Checking if "/boot/grub/fat_stage1_5" exists... yes
 Running "embed /boot/grub/fat_stage1_5 (hd0)"...  15 sectors are embedded.
succeeded
 Running "install /boot/grub/stage1 (hd0) (hd0)1+15 p (hd0,0)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded
Done.
grub> quit

Hotovo. Ještě můžeme smazat pracovní adresář, ale kdyby něco nefungovalo, tak je lepší jej zatím ponechat.

cd ..
rm -rf ./MDVUSB

Teď nechat USB disk zapojen, restart, v BIOSU změnit na boot z USB (USB-HDD) a chvíli počkat. Spustí se boot instalace Mandriva Linux 2009, kde můžeme vybrat způsob instalace: síť, iso nebo adresářová struktura na pevném disku, externím disku, internetu…
Také vhodné pro ty, co si nechtějí přepisovat zavaděč na pevném disku. Nainstalovaný systém můžou bootovat z USB disku, ale je potřeba správně zapsat položku do souboru menu.lst.

Odkazy:

Mandriva Wiki
system/instalace/mandriva_seed_2009.0.txt · Poslední úprava: 2010/12/14 19:13 autor: yullaw