Op. rendszer, aminek nem kell partció.

Fórumok

Sziasztok,

Azt szertném megkérdezni tőletek, hogy mien Op. rendszereket ismertek, amik egy FAT(Vagy más) Fájlrendszer gyökerében lévő image-ből dolgozik? Pl a BeOS Personal editon, elindul egy Windowsos telepítő, ami a gyökérbe felmásol egy image fájlt, aztán készit egy boot floppyt, amivel aztán lehet inditani a rendszert. nagyon fontos, hogy a változásokat tudja irni a merevlemez gyökerében lévő image-t és ezáltal a beállitásokat is el tudja tárolni. És ha nem tetszik, egyszerűen csak törölni kell az imaget a merevlemezről és kész. Ez nagyon jó lenne egy ilyen 'Próbálgatós' júzerknek, és Én tudnám mondenhová magammal vinni a beállitásaimat, ami aztán felmásolok a másik gép gyökerébe, és ugyan azt kapom, amit otthon. szal vmi ilyesmi kéne, akinek van ötlete irjon!

Elölre is köszi!

Hozzászólások

Virtualizáció (Vmware, Virtual PC, Xen stb) nem jó?

qnx

--
The Internet has evolved from smart people in front of dumb terminals to dumb people in front of smart terminals.

Mi a p*csnek kellene azt az operációs rendszert vinyóra tenni, aztán meg tologatni a beállításaidat jobbra-balra?

Zúzzál rá inkább egy dsl linuxot (kb. 100M) egy USB pendrive-ra, aztán hajrá!

---
Mondjon le!

Például egy Linux-szal simán meg lehet csinálni. Kell hozzá némi hozzáértés, meg egy CD író vagy floppy.

Kérem oltsák el a cigarettákat, üljenek a helyükre és csatolják be a biztonsági öveket. Felszállunk :)) Elméleti megoldás következik, a megvalósításhoz kellene néhány óra, és egy Windows, amiből nekem egyik sincs :) És csak akkor kezdj neki, ha pontosan érted amit leírtam (és lehetőleg tesztgépen), mert különben akár bajt is okozhatsz magadnak.

Problémánk a következő: jelenleg nincs (illetve én nem ismerek) megoldás a Linux Windows alól való indítására. Régen volt a loadlin.exe, de az NT óta nem műx. Szóval gondoskodni kell róla, hogy a gép eleve Linux-ra bootoljon. Nade. A Linux bootoláskor nem tudja becsatolni az NTFS partíción lévő fájlt root fájlrendszerként.

Tehát két lépést kell végrehajtani.

I. Speciális Linux telepítés

Telepíteni kell egy tetszőleges Linux rendszert egy image fájlba. Ezt a következő szublépésekkel lehet megvalósítani:

o Win alatt létrehozol egy linux.dsk és egy swap.dsk nevű fájlt mondjuk egy szövegszerkesztővel (mert a gyári NTFS nem tud fáljt létrehozni)

o Rábootolsz egy Linux telepítő CD-re, a telepítés közben becsatolja a Windows partíciót, valami ilyesmi:

# mkdir /winfs
# mount -t ntfs /dev/hda1 /winfs

o Csinálunk két megfelelő méretű image fájlt, majd formatáljuk, becsatoljuk:

# dd if=/dev/zero of=/winfs/linux.dsk bs=1M count=4096
# dd if=/dev/zero of=/winfs/swap.dsk bs=1M count=256
# losetup /dev/loop0 /winfs/linux.dsk
# losetup /dev/loop1 /winfs/swap.dsk
# mkfs.ext3 /dev/loop0
# mkswap /dev/loop1
# mkdir /target
# mount /dev/loop0 /target

Ezután telepítjük a Linux rendszert a /target alá. Ez például Gentoo-val nagyon egyszerű, de minél barátságosabb a Linux telepítő, annál nehezebb dolgunk lesz. Vagy lehetetlen. Szerintem Ubuntu alternate CD-vel meg lehetne csinálni, de nem próbáltam. VIGYÁZAT! A lilo és a grub telepítését ki kell hagyni!!!

II. A Linux indítása

Ezt úgy lehet megcsinálni, hogy kitesszük a kernel-t és az initrd imidzset egy CD-re, vagy csinálunk egy nagyon kicsi kernelt és initrd-t vagy initramfs-t (egyébként szerintem az utóbbi sokkal királyabb, az initrd-t felejtsétek el), és ezzel indítjuk a rendszert, majd pivot_root-olunk az igazi rendszerbe. Ennek a lépésnek a végrehajtása kicsit összetettebb, mint az előző, mivel bele kell nyúlni az initrd-be vagy initramfs-be, hogy a rendszer a root partíciót egy image fájlban lássa, amihez azt előbb blokk divájszosítani kell (erre jó a loop device-hoz rendelés a losetup-pal). Ha valaki idáig eljutott, akkor adok neki néhány hivatkozást, és ha nem boldogul, akkor keressen meg mélben és segítek.

http://syslinux.zytor.com/iso.php
http://en.wikipedia.org/wiki/Initrd
http://linuxdevices.com/articles/AT4017834659.html
http://www.die.net/doc/linux/man/man8/pivot_root.8.html

Sziasztok,

en is nagyon hasonlo dolgon izzadok. Sikeresen csinaltam egy fajlt, amit loop device-kent hasznalva beletelepitettem a Gentoot. Az ok, hogy olyan gepen kell hasznalnom, amit semmikeppen nem akarok megpiszkalni, se particiokat, semmit. Igy a bootolast USB kulcsrol csinalom, ami azutan felhuzza a loop device-t es elinditja benne a gentoot. Initramfs-t hasznalok es a busyboxban levo losetup mintha kizarolag read only-ban lenne hajlando felhuzni a loop device-t. Sima linux alol az losetup es a mount utan rendesen irhato a fajlban levo fajlrendszer, de a busyboxban levo losetuppal mar nem. Kiirni semmit nem ir ki, csak amikor elindul a belso gentoo, akkor derul ki hogy read only a file system.

Gugliztam, regen voltak ilyen bugok a busyboxban, de most mar nem kene hogy legyen. Probaltam felulvagni az losetup-ot a kulso linuxos verzioval, azaz nem symlinken keresztul eri el, de ekkor meg meglepetesemre az ash shell egyszeruen nem latja az losetup progit, pedig ott van, meg ki is listazza. A fuggo libek felmasolasa sem segitett ezen. Egyszeruen nem birom a kulso losetupot hasznalni ash alol, csak azt irja ki hogy command not found. Futasi jogok stimmelnek.

Tudja valaki, hogy hogyan lehet akar kulsoleg bemasolt losetup progit futtatni az initramfs-ben, vagy hogyan lehet a busyboxos losetupot ravenni hogy ne read only-ban mukodjon ?
Mar mindent vegigszivtam, es mar csak ez az egy hianyzik hogy elinduljon :(

Koszi:
Endre

vagy nem egyszerűbb egy pendrive-ra telepyteni, és akkor minden álmod teljesül, ráadásul nem korlátozod magad ilyen tipusú rendszerre?

colinux?
It doesn't matter if you like my song as long as you can hear me sing