2024. március 29., péntek

Gyorskeresés

Útvonal

Cikkek » Számtech rovat

Csináld magad OpenWrt

Az OpenWrt Image Generator segítségével saját firmwaret állíthatunk össze. De miért is jó ez nekünk?

[ ÚJ TESZT ]

Mire jó az Image Generator?

Az Image Generatorral egyszerűen, fordítás nélkül összeállíthatjuk saját OpenWrt rendszerünket, megadhatjuk, hogy milyen csomagokat tartalmazzon a rendszer alapállapotban, és beleintegrálhatjuk az előre elkészített konfigurációs fájlokat a rendszerképbe.

Ahhoz, hogy megértsük, hogy miért jó ez nekünk, jöjjön egy rövid összefoglaló az OpenWrt háttértárszervezéséről.


Teljes memóriahierarchia WR1043ND routernél

A sötétzölddel jelölt firmware részt fogjuk elkészíteni az Image Generatorral. Ebben megtalálható a linux kernel, egy SquashFS és egy JFFS2 fájlrendszerű rész. A SquashFS csak olvasható, tömörített fájlrendszer, a JFFS2 írható-olvasható, szintén tömörített fájlrendszer.

A router bootolása során a bootloader (u-boot) betölti a kernelt. Felcsatolja a SquashFS partíciót (/rom), innen lefut a preinit szkript. A preinit szkript felcsatolja a JFFS2 partíciót(/overlay), végül a két partíció egy virtuális fájlrendszerben egyesül a gyökérben. Ez után, ha bármi módosítás történik - mivel a SquashFS csak olvasható - a módosítás a JFFS2 partíción kerül rögzítésre.

Ennek a felépítésnek van egy óriási előnye: mivel a felhasználó módosításai a JFFS2 partíción vannak tárolva, egy működésképtelenséget okozó beállítás esetén is visszaállítható a rendszer az eredeti állapotba a JFFS2 partíció törlésével, lásd FailSafe.

Minden fájl, amit a kép készítésekor hozzáadunk - így az előtelepített csomagok is - a SquashFS fájlrendszerbe kerülnek. Mivel a SquashFS a csak olvashatósága miatt 20-30%-al hatékonyabban tömörít, mint a JFFS2, az előtelepített, "gyári" csomagok jelentősen kevesebb helyet foglalnak, mint ha utólag telepítettük volna őket. Ennek viszont ára van: a SquashFS fájlrendszert a kép elkészítése után utólag nem módosíthatjuk, tehát hiába törlünk egy előtelepített csomagot vagy fájlt, az általa használt hely nem fog felszabadulni.

Tehát összefoglalva, az alábbi módokon takaríthatunk meg helyet saját rendszerkép összeállításával:
- A számunkra felesleges csomagokat töröljük, illetve nem integráljuk a képbe.
- A használni kívánt csomagokat integráljuk a képbe, így a jobb tömörítés révén helyet takarítunk meg.
- A későbbiekben szükséges fájlokat integráljuk a képbe, így ezek is hatékonyan tömörítve kerülnek tárolásra.

Ha valakit mélyebben érdekel az OpenWrt háttértárhierarchiája, részletes leírást talál angol nyelven az OpenWrt dokumentációban Itt és Itt.

A cikk még nem ért véget, kérlek, lapozz!

Azóta történt

Előzmények

Hirdetés

Copyright © 2000-2024 PROHARDVER Informatikai Kft.