Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: hama4tux 12 Října 2010, 13:07:10
-
Ahoj všem mam takový malí problém,
Udělal jsem si skript který mi vezme img disku a nalije mi to na disk
V prvním kroku připravím na disku oddíli.
A to tak že smažu vešechny stávající najdu max velikost disku a vytvořím jednu Partition
for neco in $(parted -s /dev/$drive print|awk '/^ / {print $1}'); do
parted -s /dev/$drive rm $neco
echo "Mazi oddil $neco na disku $drive"
done
echo "Nastavuji maximalni velikost oddilu"
size=`parted -s /dev/$drive print|awk '/^Disk/ {print $3}'|sed 's/,0//'`
parted -s /dev/$drive mkpart primary 0 $size
echo "Vytvarim file system na oddilu $diskpart"
mkfs.ntfs -f /dev/$diskpart
Pak příjde partimage a nalije soubory na disk
pak se spusti DD a nakopíruje tam boot sektor
echo "Spoustim kopirovani oddilu disku"
partimage -b restore /dev/$diskpart /home/hama/images/netfox-pc1.000
echo "Spoustim zapis MBR na disk"
dd if=/home/hama/images/netfox-pc1.mbr.image of=/dev/$drive bs=512 #count=2
Ale vychvíli kdy se tam nalije boot sektor, tak mi to nabourá strukturu disku a disk je nečitelnej.
Vím kde je problém ale nedokáži ho nějak "vyřešit"
funguje mi to když vynechám krok automatického vytvoření oddilu a FS, když to udělám ručně přez Gparted a pak na disk naliju skriptem img a dd boot, tak to jede.
Tzn problém je někde v tvorbě Partiton a nebo tvorby FS disku.
Kdyby měl někdo zájem script pak dám k dispozici je to docela fajn pomocník
-
takže asi tak: celý skript jsem nečet, ale ohledně textu dokola mám tyto připomínky:
* MBR obsahuje kromě bootovacího kódu (prvních 440-446B) taky informace o rozdělení disku na partišny (viz http://en.wikipedia.org/wiki/Master_boot_record (http://en.wikipedia.org/wiki/Master_boot_record))
* GRUB mimo MBR (kam se moc kódu nevleze) využívá taky mezeru mezi MBR a první partišnou (většinou cca 32kB)
-
Ten vytažek z toho scriptu - je to co něco dělá, zbytek jsou jen hlody o kolo.
pomoci part image jsem tedy vytvořil img, nahrál ji na další disk a zjistil jsem že to nebootuje,
tak jsem pomoci dd vytahl prvnich 512B a nahral je na druhy disk a bootovalo to.
Tak jsem si to hodil do skriptu, ale - asi dělám něco jinak než při vytváření oddílu nebo tvorby FS, než když to dělám přez GParted.
Zbytek příkazů je schodný a když to udělám přez gparted tak to jede.
-
Tak koukám, že když má člověk moře práce, tak blbost nezná meze:)
Script je fixlej, :P
vytvořil jsem prostě part ne od 0 jak píšu ale od 1024B
Lock topick