Az LFS, a BLFS és a DIY Linux leírásainak tanulmányozásának eredményeit próbálom ebben a kísérletben összevonni.
32 bites rendszert építek egy 32 bites gépen. Viszont ez alkalommal jóval nagyobb eltéréseket tervezek a könyvtől, mint előző alkalommal.
Főbb tervezett sajátosságok:
- Továbbra is vim marad az alapértelmezett editor
- Az LFS-ben bevett gyakorlat szerint nem lesz net-tools (ebben van pl. az ifconfig), hanem csak IPRoute2 (ebben van pl. az ip)
- bash helyett dash-t fogok használni /bin/sh-ként
- GNU tar helyett bsdtar/libarchive használata
- sysklogd helyett metalog lesz a rendszernaplózó
- fcron (mert az jó) és at fogja az időzített parancsokat végrehajtani
- Tisztán upstart alapú, teljesen párhuzamosított bootolás (Na ez nem lesz könnyű, meglátjuk, mire jutok vele.)
- Az alaprendszer csomagjait az Arch Linuxból idecsempészett pacman-nel fogom kezelni. (Ez nem lesz szerintem túl nehéz, csak időigényes, mert minden csomag csomagolásával külön kell majd szöszölni. Viszont cserébe a későbbi eltávolítások/frissítések zökkenőmentesebbek lesznek, mintha egyáltalán nem használnék csomagkezelőt.)
- Jelenlegi terv szerint a további felhasználó programokat pkgsrc-vel próbálom majd meg rávarázsolni a rendszerre. (Mert a BLFS sokkal időigényesebb, mint az LFS. Kíváncsi vagyok, hogy a saját GNU/Linuxon hogy muzsikál majd a pkgsrc.)
Hát körülbelül ezek a főbb irányvonalak. Az apróbb részleteket majd ezen blogsorozat későbbi részeiben tárgyalom.
Update: Az alábbiakban bővítem a célkitűzéseket! A felsorolt pontok az alaprendszerre vonatkoznak.
- A rendszernek akkor is teljes mértékben korrektül kell működnie, ha a
/boot
,
/home
,
/var
,
/tmp
,
/usr
,
/usr/local
külön partíción
foglalnak helyet. Ennek érdekében a gyökérpartíción kell lennie minden olyan binárisnak és egyébnek, amely a bootolás korai szakaszában (a többi fájlrendszer felmountolása előtti szakaszában) szükséges. Amennyiben a valamelyik partíció mountolása nem sikerül, a gyökérpartíción ott kell, hogy legyenek azok az eszközök, amelyekkel az alapvető javítások elvégezhetők. - Ugyanakkor semmi értelme annak, hogy egy bináris a
/bin
-ben vagy
/sbin
-ben legyen, ha olyan shared library-k kellenek a működéséhez, melyek a
/usr
-ben találhatók. Ezért minden
/bin
-ben ill.
/sbin
-ben található bináris működéséhez szükséges shared librarynek a
/lib
-ben a helye.
- Ugyanakkor a statikus könyvtáraknak (
*.a
) és libtool fájloknak (
*.la
) semmi keresnivalójuk a
/lib
-ben; nekik a fejállományokkal együtt (
*.h
) a
/usr
-ben a helyük, mivel csak fordításkor van szükség rájuk.
- Az alaprendszer nem pakolhat semmit a
/usr/local
-ba
, kivéve az alapvető könyvtárstruktúrát és linkeket. - A rendszernek akkor is tökéletesen működnie kell, ha a
/usr
csak olvasható
an van mountolva. Használat közben változó adatoknak a/var
-ban, konfigurációs fájloknak a
/etc
-ben a helye. A
/usr
-nek csak akkor szabad/kell változnia, ha a csomagtelepítés, -eltávolítás ill. frissítés történik. Ahol csak észreveszek developerek által helytelenül beállított programokat, igyekszem ilyen működésre kényszeríteni.
- Minden csomag tartalma legalább ránézésre ;) rendezett és áttekinthető legyen.
- utpKabel blogja
- A hozzászóláshoz be kell jelentkezni
- 2091 megtekintés
Hozzászólások
"bash helyett dash-t fogok használni /bin/sh-ként"
ezt ne! dash nagyon bugos regi snapshotja a netbsd ash-nak.
nagyon problemas. inkabb mksh-t rakj bele. van neki MKSMALL opcioja,
ha a kis meret a fontos szamodra.
ez egy nagyon jo shell, interaktiv hasznalatra es scriptelesre is.
--
When in doubt, use brute force.
- A hozzászóláshoz be kell jelentkezni
Nekem csak scriptfuttatásra kell. Nekem Arch és Debian alatt is jól működik a dash. Állítólag Ubuntuban is az megy.
Itt pedig van egész friss kiadás is, tehát úgy tűnik azért foglalkoznak azzal a dash-sel.
- A hozzászóláshoz be kell jelentkezni
Hmmmm....
ifconfig nélkül én nem tudnám elképzelni, ez már valami rossz beidegződés?
kötöjelkötöjel
Pedig ez nem az! - lécinetámagy!
- A hozzászóláshoz be kell jelentkezni
Pedig az ip valójában jobb. Pl. még madwifi-ng-vel a wifi0 interfésznek az ifconfig valami kötőjeles meg soknullás MAC címet dobott ki, és nem is tudta megváltoztatni. ip pedig rendesen mutatta és meg is lehetett vele változtatni. Ez azért volt (van), mert az ifconfig nem tud valamilyen formátumot, amit az ip igen. Ugyanis az iproute2 a Linux kernelhez készül, még a net-tools-ról fogalmam sincs.
- A hozzászóláshoz be kell jelentkezni
No igen, hasonlót láttam bcm43xx fw -vel; nem gondoltam, hogy ez az ifconfig hibája (is).
kötöjelkötöjel
Pedig ez nem az! - lécinetámagy!
- A hozzászóláshoz be kell jelentkezni
kíváncsian várom a fejleményeket...
LFS-t én elkezdtem, sajnos abbahagytam. ha lesz időm ismét nekiugrok és legyűröm:)
- A hozzászóláshoz be kell jelentkezni
Lesz, csak terv szerint akkor közlök le egy részt, amikor már úgy érzem, hogy nem kell még egyszer oda visszatérni javítani valamit. Most ott tartok, hogy rendesen rá kell hegesztenem a pacman-t az ideiglenes /tools rendszerre, mert míg a pacman hegesztés az ideiglenes fejlesztőgarnitúra készítéséhez tartozik, addig a teszteléséhez előre kell szaladnom az igazi alaprendszer építéséhez.
- A hozzászóláshoz be kell jelentkezni
cuki ez az lfs
kérdés ha mondjuk neki kezdek és tegyük fel lesz valami belőle, akkor el tudom inditani virtualboxon?
vagy egy virtualis gepen?
- A hozzászóláshoz be kell jelentkezni
Elvben igen. Csak ehhez a gyakorlatban ...
1) fizikai partíciót kell használni a virtuális gép alatt.
vagy
2) valahogy meg kell oldanod a fájlok átvitelét a fájlrendszerből a virtuális gép által ismert image formátumba.
- A hozzászóláshoz be kell jelentkezni
Itt olvashatjátok a következő részt!
- A hozzászóláshoz be kell jelentkezni