Načtení OS squashfs - vyreseno

Problémy s instalací nebo spouštěním systému Linux Mint
Zpráva
Autor
menom
Příspěvky: 2757
Registrován: 12 pro 2012, 15:10

Re: Načtení OS squashfs

#11 Příspěvek od menom »

.

Uživatelský avatar
Ventero1
Příspěvky: 2763
Registrován: 31 říj 2016, 14:17
Bydliště: Sokolov, Olomouc

Re: Načtení OS squashfs

#12 Příspěvek od Ventero1 »

Takže instalace takto naroubovaného Lubuntu do instalačky Mintu se nezdařila. Pokus s implementací initrd.lz a vmlinuz z Lubuntu nefungoval vůbec. Ohlášeny neoriginální balíčky. Možná, že to bude fungovat mezi Ubuntu, Xubuntu a Lubuntu.
Jisté je, že je to kolem toho casperu daleko složitější - jak jsem pochopil z popisu Lombarda zbytečná šaškárna - daleko komplexnější a na to už nestačím, abych se dál dopracoval.

Zdá se, že bez pomoci někoho hodně fundovaného, je to slepá větev pouze na zkoušení Live ...
Zvuky jsou mantrami a myšlenky moudrostí, prostě proto, že se mohou objevovat ...

Uživatelský avatar
Ventero1
Příspěvky: 2763
Registrován: 31 říj 2016, 14:17
Bydliště: Sokolov, Olomouc

Re: Načtení OS squashfs

#13 Příspěvek od Ventero1 »

Takže ještě to nevzdávám.

Nově jsem úmornou detektivní selektivní prací a se štěstím zjistil, že instalačnímu médiu (asi nějakému dočasnému virtuálnímu) casper přiděluje identifikační číslo, které je jednak zapsáno v initrd v souboru uuid.conf a druhak v adresáři .disk v souboru casper-uuid-generic. Tyto čísla se porovnají a nedojde-li ke shodě, tak není identifikována instalační jednotka a je ohlášeno "(initramfs) unable to find a live medium containing a live file system"

Je velice pravděpodobné, že možná pouze na tom kolabuje použití originálního initrd.lz v původní hostitelské instalačce. Použije-li se totiž původní initrd-lz, tak si načte i implementovaný squashfs a najede do live jiného systému, který normálně funguje. Akorát, že při následné instalaci dojde k havárii a ta neproběhne ...

Pokusím se tedy modifikovat hledaný název souboru ve scriptu casper např. na lubuntu-uuid a ve složce .disk tento soubor přejmenovat. Podaří-li se, tak tam může být více takovýchto souborů s různými jmény a nemělo by dojít k nenalezení "live medium containing a live file system"
Zvuky jsou mantrami a myšlenky moudrostí, prostě proto, že se mohou objevovat ...

Uživatelský avatar
Ventero1
Příspěvky: 2763
Registrován: 31 říj 2016, 14:17
Bydliště: Sokolov, Olomouc

Re: Načtení OS squashfs

#14 Příspěvek od Ventero1 »

Takže empiricky se to jako řešení ukázalo a je to možné. Už mi funguje dualboot Xubuntu 64bit a Lubuntu 32bit a dále se pokusím přidat Mint, který byl původně výchozí. Narazil jsem však na jeden technický problém a tady bych chtěl požádat o zapojení zdejších matadorů.

Jak jsem psal, je nejprve třeba rozbalit initrd.lz, tam provést modifikace a následně zabalit zase do souboru .lz. Postupoval jsem dle tohoto návodu:
Modify the initrd

Extract the contents of the initrd:

mkdir initrd-tmp
cd initrd-tmp
gzip -dc /mnt/casper/initrd.gz | cpio -id

or for Ubuntu 9.10 and later:

lzma -dc -S .lz /mnt/casper/initrd.lz | cpio -id

Modify the files
Repack them into a new initrd:

find . | cpio --quiet --dereference -o -H newc | gzip -9 > ~/new-initrd.gz

or, if you want an initrd.lz (for Ubuntu 9.10 and later):

find . | cpio --quiet --dereference -o -H newc | lzma -7 > ~/new-initrd.lz

You can now remaster a cd with this new initrd.gz replacing the old /casper/initrd.gz.
Zatímco u initrd z Lubuntu 32bit finální komprimace proběhla s tím, že tam neexistují nějaké 2 soubory v jedné složce, tuším plymouth, nicméně to asi nebylo nic důležitého a tento soubor po zabalení s příslušnou modifikací funguje tak jak má, tak u souboru initrd z Xubuntu 64bit, se objevilo, že neexistují jiné dva soubory, které jsou nejspíš důležitější a takto znovu komprimovaný initrd i bez jakékoliv modifikace již nefunguje. Pokračovat budu s initrd Mintu - tam to balo předtím v pořádku, tak se rýsuje tripleboot ...

Rád bych věděl, proč tomu tak je, že ty soubory neexustují a jestli je jiný spolehlivější nástroj pro rozbalení a zabalení, než lzma či cpio nebo jak se to jmenuje. Popř, jak jinak to vyřešit. Tak prosím o pomoc s tímto technickým problémem.

Ještě zítra dodám přesnější informace a podrobnosti.
Zvuky jsou mantrami a myšlenky moudrostí, prostě proto, že se mohou objevovat ...

Uživatelský avatar
Ventero1
Příspěvky: 2763
Registrován: 31 říj 2016, 14:17
Bydliště: Sokolov, Olomouc

Re: Načtení OS squashfs

#15 Příspěvek od Ventero1 »

Ještě zkusím s těmito parametry:
Also, I have read a few articles mentioning that Karmic (9.10) uses initrd.lz instead of initrd.gz. I do not know if this is true, but should mention it in case you are not getting the expected results. To unpack the initrd.lz file, you need to do this:

lzma -dc -S .lz ../initrd.lz | cpio -imvd --no-absolute-filenames

And to re-create the initrd.lz file:

find . | cpio --quiet --dereference -o -H newc | lzma -7 > ../initrd.lz
Nebo tohle se 7zip: https://linuxconfig.org/how-to-extract- ... isk-initrd
Zvuky jsou mantrami a myšlenky moudrostí, prostě proto, že se mohou objevovat ...

Uživatelský avatar
Ventero1
Příspěvky: 2763
Registrován: 31 říj 2016, 14:17
Bydliště: Sokolov, Olomouc

Re: Načtení OS squashfs

#16 Příspěvek od Ventero1 »

Kód: Vybrat vše

ng@ng-esp:~$ cd /home/ng/Linux/initrd-tmpng@ng-esp:~/Linux/initrd-tmp$ lzma -dc -S .lz /home/ng/Linux/initrd.lz | cpio -id
152682 bloků
ng@ng-esp:~/Linux/initrd-tmp$ find . | cpio --quiet --dereference -o -H newc | lzma -7 > ~/xub1464rd.lz
cpio: ./etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf: Cannot stat: Adresář nebo soubor neexistuje
cpio: ./etc/ld.so.conf.d/x86_64-linux-gnu_EGL.conf: Cannot stat: Adresář nebo soubor neexistuje
ng@ng-esp:~/Linux/initrd-tmp$ 
Tyto 2 soubory zobrazené ve správci souborů, jako neplatné odkazy jsou během procesu komprimace vyjmuty a v novém souboru initrd již nejsou obsaženy. To bude nejspíše příčina následujícího.

Chyba, která se pak vypíše s tímto pouze rozbaleným a zabaleným initrd, bez jakékoliv modifikaze je:

Kód: Vybrat vše

/init: line 7: /sbin/udevadm: not found
Nejspíše tedy potřebuji nějaký parametr, který vynutí zahrnutí těchto souborů nebo jiný nástroj. Ale může to být úplně jinak - napadá někoho něco?
Zvuky jsou mantrami a myšlenky moudrostí, prostě proto, že se mohou objevovat ...

Uživatelský avatar
Ventero1
Příspěvky: 2763
Registrován: 31 říj 2016, 14:17
Bydliště: Sokolov, Olomouc

Re: Načtení OS squashfs

#17 Příspěvek od Ventero1 »

Takže i tohle jsem už vyřešil, podařilo se i docílit toho, že oba live systéme korektně naběhly a také z obou systémů proběhla instalace bez havárie. Zatímco Mint, na flashce hostitelský, se nainstaloval a naběhl úplně v pořádku, tak instalace hostujícího Lubuntu sice proběhla bez havárie, ale ukázala se jako špatná - na puvodnim PC boot systému havaroval během initramfs a na druhém PC sice normálně naběhl do lxde, ale prostředí nešlo ovládat ...

Docházejí mi nápady. Ta koncepce Ubuntu-based médií je opravdu zbytečně zhovaděle monstrózní komplex. Namísto, aby to vše bylo obsaženo nějak kompaktně, tak je to postaveno tak, že si kdejakou kravinu čerpá z pomocných souborů s předem definovaným jménem v předem definovaných složkách, takže upravit pouze 2 atributy a sloučit či doplnit balíkové složky nestačí.

Technicky tato koncepce možná je, ale musel by mi pomoc někdo z vývojářů nebo někdo, kdo tu koncepci má zmáklou a ví přesně, kde co hledat. Jinak bych tím strávil opravdu hodně času a energie z nejistým výsledkem. Posledních 5 dní od rána do večera jako ukázka stačí :D
Zvuky jsou mantrami a myšlenky moudrostí, prostě proto, že se mohou objevovat ...

Uživatelský avatar
Ventero1
Příspěvky: 2763
Registrován: 31 říj 2016, 14:17
Bydliště: Sokolov, Olomouc

Re: Načtení OS squashfs

#18 Příspěvek od Ventero1 »

Takže se to nakonec povedlo.

Jen jsem musel opustit ideu elegantního užití jedné instalačky jako hostitelské a jen tam doplnit přejmenované složky "casper" - to dělalo neplechu při následné instalaci hostujících instalaček. Buď havaroval instalátor nebo instalovaný OS nebyl plně funkční.

Každý komplet instalátor potřebuje mít vlastní složku, která se dá definovat ve scriptu casper. No a co je nejvtipnější (a původně jsem si to myslel, jen mi to nikdo nepotvrdil, tak jsem se nechal svést), že toto se dá určit i předáním parametru z Grubu a nadefinováním, že se i USB bude pracovně považovat za cd-rom - také parametrem v grub.cfg. Toto jsem zjistil po týdením úsilí až díky tvůrcům aplikace Sardu ... casper se tedy modifikovat nemusí!

... pak už jen celodenní selekce toho, co který instalátor potřebuje mít v rootu. - Lubuntu třeba nic, zatímco Mint tam něco mít musí - a zkoušení korektnosti jednotlivých instalací ...

Časem bych mohl do nějaké vhodné sekce udělat stručné návody. Jak správně rozbalit a po modifikaci zabalit initrd.lz (může se hodit k tomu, aby flashka z které běží liveOS zůstala nadále zapisovatelná - to se k tomu může dohledat a doplnit - zkusím, až zas bude dost času) a návod, jak vytvořit opravdu spolehlivou multiboot flashku s různými distribucemi (jak jsem zmiňoval, na bázi loop ISO to nefunguje na všech mašinách) a ten by se dal třeba dát i někam do návodů ...

Toto vlákno považuji spíše za svůj poznámkový list během mé práce ;) , takže se možná může i smazat ...
Zvuky jsou mantrami a myšlenky moudrostí, prostě proto, že se mohou objevovat ...

Zamčeno