Portál AbcLinuxu, 10. května 2025 16:17

Dotaz: Debootstrap do image bez prav roota

20.7.2015 22:31 Harvie.CZ
Debootstrap do image bez prav roota
Přečteno: 293×
Odpovědět | Admin
Ahoj, nenapada vas nekoho zpusob, jak instalovat debian do image disku bez prav roota.

technicky to samozrejme mozny je, ale hledam nakej elegantni a podporovanej zpusob. Potrebuju v praci vygenerovat vetsi mnozstvi imagu routeru a chci, aby ten skript mohli pripadne pouzivat i dalsi lidi bez prav roota.

Taky je dulezity, aby to fungovalo i v dalsich verzich debianu bez vetsich uprav.

Tj. chci zadat seznam balicku, par parametru co se doplni do konfiguraku (adresy, hostname, ...) a na vystupu mit obraz disku s ext4 oddilem a grubem, abych ho jenom nahral na disk a mel bezici router...

napada vas nejaky elegantni reseni? pokud mozno bez mountovani image...
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Josef Kufner avatar 20.7.2015 22:35 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Debootstrap do image bez prav roota
Odpovědět | | Sbalit | Link | Blokovat | Admin
Na balení balíčků se používá fakeroot. Možná ti to bude stačit.
Hello world ! Segmentation fault (core dumped)
21.7.2015 00:29 Harvie.CZ
Rozbalit Rozbalit vše Re: Debootstrap do image bez prav roota
no toho jsem si vedom. ale potreboval bych minimalne nak vytvorit image disku z chrootu a zapsat do nej grub...
Josef Kufner avatar 21.7.2015 10:58 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Debootstrap do image bez prav roota
Bez roota si nepřipojíš image disku. Leda bys ho napsal do fstab. To ti pak ale zas bude dělat problémy s uživatelskými oprávněními u vytvořených souborů. Možná by to šlo přes FUSE, ale přijde mi to krkolomné.

Ale pokud máš script, který ten image ubalí z dané konfigurace a bez ručních zásahů, pak nevidím důvod ho nespustit s právy roota přes sudo. Ten script bude muset být trošku lépe napsaný, aby se na ničem nezasekl a při chybě po sobě uklidil, ale jinak by to mohlo v pohodě fungovat.
Hello world ! Segmentation fault (core dumped)
22.7.2015 09:06 2X4B-523P | skóre: 38 | blog: Zelezo_vs_Debian
Rozbalit Rozbalit vše Re: Debootstrap do image bez prav roota
jeste by se mozna hodilo udelat si dva image, s tim ze ten druhy uz by se pouzival jen jako obnoveni partysny, aby se nemusel pokazde instalovat grub... ten by se dal presvedcit, aby vzdy spustil nejake to jadro, co najde na te dynamicke partysne...
Josef Kufner avatar 22.7.2015 11:52 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Debootstrap do image bez prav roota
Instalace grubu je v podstatě o tom, že se zapíše kus kódu na ty správné bloky na disku. V dobách MBR to byl ten první sektor na disku, jak to je u GPT už jsem nezkoumal, ale bude to něco podobného.

Tedy v podstatě ti nic nebrání mít připravený image začátku disku, kde bude zavaděč a partition pro /boot. Ty si pak ten image zvětšíš na požadovanou velikost (tzn. připíšeš nuly na konec, nebo spíš uděláš mezeru pomocí dd skip=...), přidáš partition pro systém (spustíš fdisk nad souborem) a nakopíruješ image filesystému na vhodný offset. Možností, jak to udělat je více, všechny vyžadují trochu kouzlení s kopírováním bloků sem a tam, počítání správných offsetů a podobná kouzla.

Nicméně pořád zbývá problém s vytvořením filesystému tak, aby soubory měly správná oprávnění a nepotřeboval jsi ho mountnout.
Hello world ! Segmentation fault (core dumped)
Jendа avatar 22.7.2015 12:02 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Debootstrap do image bez prav roota
V dobách MBR to byl ten první sektor na disku
Víc, typicky 32 KiB.
jak to je u GPT už jsem nezkoumal
Stejně.
Jendа avatar 21.7.2015 00:40 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Debootstrap do image bez prav roota
Odpovědět | | Sbalit | Link | Blokovat | Admin
Obávám se že budeš muset v qemu spustit Linux s rootem a udělat to z něj.
21.7.2015 22:44 Harvie.CZ
Rozbalit Rozbalit vše Re: Debootstrap do image bez prav roota
Nemusi se to vubec pripojovat. Uplne by mi stacilo jednorazove vygenerovat ten image z adresare. Ovsem i se zapsanim tabulky oddilu a grubu.
Jendа avatar 21.7.2015 23:16 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Debootstrap do image bez prav roota
A já ti říkám že přímou cestu k tomuhle nikdo nenaprogramoval.
Josef Kufner avatar 22.7.2015 00:46 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Debootstrap do image bez prav roota
Připrav script a nastav sudo, aby ten script běžel pod rootem. Cokoliv jiného bude nechutně komplikované a/nebo to bude vyžadovat kopec magie. Díky sudo nemusíš dávat roota uživateli, dáš mu to jen na ten tebou připravený script.
Hello world ! Segmentation fault (core dumped)
21.7.2015 06:45 smartass
Rozbalit Rozbalit vše Re: Debootstrap do image bez prav roota
Odpovědět | | Sbalit | Link | Blokovat | Admin
Navrhoval bych schroot s union overlay. Pod rootem se vytvoří jeden chroot a pak se nastaví možnost schroot do union overlay pro normální uživatele, ve kterém uživatelé mohou mít roota. Není to sice super bezpečné, ale pro zničení systému by to vyžadovalo aktivní snahu o prolomení. V podstatě takhle nějak funguje buildování Debian balíčků.
21.7.2015 12:13 Sten
Rozbalit Rozbalit vše Re: Debootstrap do image bez prav roota
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zkusil bych fuse-ext2. Sice píší, že write support není úplně otestovaný, ale pokud to generuje image, tak by mělo stačit to zkontrolovat s fsck.ext4 po vygenerování.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.