FreeBSD vallomásaim
Aug. 1st, 2020 02:19 amJó kérdés, hogy minek kell egy megátalkodott, meggyőződéses linuxosnak még BSD is.
A kihívásért. Az élményért. Azért, mert van abban valami különleges, ha a gépeden az eredeti Berkeley Júnikz közvetlen leszármazottja szaladgál. Azért, mert ez adhatja meg a tősgyökeres UNIX élményt - nem, nem konfigurálja be magát, nem, nem nyújt készen mindent, a parancsok pontosan ugyanúgy működnek, ahogyan az ősidőkben is; alapértelmezett kagylónak az sh-t és nem a Bash-et használja... néha arra gondolok: épelméjű emberi lényezet nem nagyon értheti, hogy az ilyen extraságok miért számítanak ennyit egy megszállott mániákusnak. Utóbbi viszont érti, hogy egy igazzy Júnix félisten által írt félkomoly HOWTO-ban miért szerepelnek ilyen kitételek, hogy "elnézést, ez megint csak egy Linux-gép..."
Most szépítgetések nélkül megírom, mit szopkodtam össze eddig a FreeBSD telepítéssel, és állok a további szopkodások elébe.
A gép, amelyen szenvedéseimet véghezvittem, egy Fujitsu Amilo Pi 3540 gyártmány. Archaikus BIOS-szal, amely arról híres, hogy különösebb kínszenvedések nélkül indíthatóvá lehet rajta tenni operációs rendszereket. A gépen már volt egy standard Debian Buster deszktop. (Ezúttal egy arrogáns barom álatt leszek és nem térek ki az olyan alapkérdésekre, mint lemezterület, meg arkitektúra - ezeket szerintem jobb, ha ki-ki magának fundálja ki. Így elkerülhetőek az olyan helyzetek, hogy valaki betűről betűre követi a HOWTO-t, aztán nagyot koppan és elhallgat, amikor az ő gépén nem működik. Természetesen egy ismerősömmel történt meg ilyesmi :})
Amikor FreeBSD-t telepítesz... a telepítő valójában Live DVD-ként is üzemel, indulás után több bootolási opciót is felajánl.
Érdemesebb a multijúzer módot választani - ez ugyanis egy emberséges telepítő felülethez juttat (szemben a single-user móddal, amellyel csak egy root shellt kapsz. Mármost ha akkora atyaúristen vagy, hogy egy root prompt elég Neked az üdvösséghez, akkor nem az én leírásomra van szükséged szerintem.)
Tehát kapsz egy kék hátterű felületet, szürke szövegdobozzal.
Kezdésnek a klavikiosztásra lesz kíváncsi - jó megfigyelőnek kell lenned ahhoz, hogy miután lehetőséget ad a választott klavikiosztás kipróbálására (fel-le nyilakkal lehet ugrálni közöttük, ha esetleg nem volna ez egyértelmű), legfelül fogod megtalálni a "folytassuk a telepítést ezzel a klavikiosztással" opciót.
Ha telepítettél már akármilyen komolyabb Linux disztribet, akkor valószínűleg nem lesz nagy gondod a FreeBSD telepítőjével sem (bár nagyon sokszor fel fogom én is hívni a figyelmet arra, hogy egy akármilyen BSD változat nem, nem, NEM egy Linux-disztrib. A BSD-guruk is mindig rámutatnak arra, hogy a BSD-változat, amely iránt el vannak kötelezve, nem Linux-disztrib.) Érthető és jól kézben tartja a dolgokat, mindenesetre néhány dologra érdemes odafigyelni - mert ezek nem feltétlenül dobják magukat.
A particionáló nagyon okos ugyan, de Neked is kell, hogy legyen némi eszed.
Amikor megkapod a lemezterületről szóló áttekintést, akkor a fel-le nyilakkal baromi gondosan válaszd ki a használatlan lemezterületet, és erre nyomd az "Auto" opciót - tényleg rá lehet bízni, hogy automatikusan derítse fel, mennyi legyen az oprendszer által használt lemezterület, és mennyi a csereterület (na jó, swap, sznobkodjunk). Ha esetleg kimaradna, akkor a root partíciót - BSD-ül egyébként slice-nak, szeletnek szoktuk nevezni azt, ami máshol partíció - mountolni kell, tehát amikor erre kerül a sor, akkor az obligát / feltétlenül szerepeljen a "mount point"-nál! A csereterület nem szorul mountolásra.
A hálózati eszközök felderítésekor van néhány dolog, amellyel óvatosnak érdemes lenni.
Egyfelől: ha loopback-et ajánl fel konfigurálásra (ennek valószínűleg lo0 lesz a neve), akkor érdemes köszönettel elhárítani az ajánlatot (ezzel ugyanis azt érnénk el, hogy saját magának küldözget a gép DHCP kéréseket, aztán elbeszélget magával jól, hálózatra meg nem fogunk kijutni :Đ).
Másfelől: ha ipv4 és ipv6 protokollokat is felajánl, akkor az ipv6-ra feltétlenül be kell írni az IP-det.
Én legalábbis így jártam, hogy az ártatlan telepítő ipv4-re bekonfigurált mindent, láttam a gépem IP-jét, de ipv6-nál semmyt. Nem is tudtam továbblépni - mert netinstall vagyunk, ugye -, innen született az előző posztban olvasható vicc. Aztán próbaképpen visszaléptem az ipv4-6 konfigurálásához, beírtam az ipv6-hoz ugyanazt az IP címet, amelyet megtalált az ipv4-nél. És már tudott is kapcsolódni.
Kicsit szokatlan lehet a megszokott játékszer linuxokhoz képest, hogy az alaprendszerhez szükséges csomagok becsorgása, feltelepülése kissé időigényesebb. Ez egy nehézsúlyú állat, és ennek megfelelően időt is követel magának.
Miután ez megtörtént, a gyökérjelszót jó alaposan be kell állítani. Ez mondjuk általános érvényű, akármit is telepítesz akárhová: nem, ne a kedvenc repülőgéped, gitáros félistened, gyilkos galócád, kismacskád, tusfürdőmárkád nevét add meg gyökérjelszóként! A jó gyökérjelszót az SEM tudja kitalálni, aki jól ismer Téged, Te viszont könnyedén vissza tudsz rá emlékezni. (Azért vésd fel valahová, és dugd el egy borítékban, amelyet a szekrény háta mögé celluxozol :Đ)
Júzert, mezei júzert se felejts el létrehozni. Haladó *nixeseknek ezt már nem kell agyonmagyarázni: csak akkor jelentezz be rútként, ha nincs más választásod. Ha van júzer júzered, akkor ezt használva a mindennapokban, nem is kockáztatod, hogy használhatatlanná teszed az egész rendszeredet.
Viszont a júzerfiókod létrehozásakor, amikor a telepítő azt kérdezi, hogy hozzáadjon-e más felhasználói csoportokhoz, mindenképpen add hozzá magadat a wheel csoporthoz! Enélkül ugyanis nem tudnád a su parancsot használni és gyökérjogokat szerezni.
Az időzóna, rendszeróra beállításokat értelemszerűen ki lehet tölteni, ezzel nem lehet nagyon sok gond.
Viszont.
A telepítő felajánlja, hogy még újraindítás előtt végezhetsz extra konfigurációkat, ha szeretnél.
Éltem a lehetőséggel - ugyanis a laptopomban egy eléggé elmaradott Nvidia videokártya van, a 290-es szériából. Ehhez az őslényhez külön driver kell.
Ezt így találhatja meg az enba, hogy
# pkg search nvidia
Erre kidob a csomagkezelő egy csomó találatot; én a létező legősibbet választottam ki telepítésre:
# pkg install nvidia-driver-304
(Reménykedtem ugyanis abban, hogy a 304-es verziójú paleozoológiai lelet jó lesz a hártyámhoz. Később kiderült, hogy bevált a reményem.)
Most jön a trükkös része: az ilymódon megszerzett driver létéről informálni is kell a rendszeredet, és el kell látni utasításokkal, hogy miként vegye használatba. (Mondom, hogy ez BSD, nem Linux, nem intézheted el a dolgot egy egyszerű installal!)
Kedvenc módszereddel (van ilyen nagyon minimalista, de nagyon jól működő kis natív szövegszerkesztő a FreeBSD-ben, ee a neve - ú.m. Easy Editor -, de ha igazán keményvonalas vagy, akkor csinálhatod cat >> /etc/rc.conf módon is, csak feltétlenül figyelj arra, hogy két jobbra-kacsacsőr legyen, mert így hozzáadja az új tartalmakat a filéhez, nem pedig felülírja velük a már meglévőt!) add hozzá az /etc/rc.conf filéhez ezt a bejegyzést:
kld_list="linux nvidia"
(Az őslelet videohártyákhoz egyszerűen csak "nvidia" az utasítás, a kissé kevésbé archeológiai hártyákhoz az "nvidia" után még "nvidia-modeset"-et is kell írni. A linux emlegetése azért van, mert linuxos driver került FreeBSD portolásra, naná.)
Még egy konfig filét módosítani kell, ha azt szeretnénk, hogy a dolog működjön is. Ez a /boot/loader.conf filé. (Ne aggódj, ez NEM a rendszer alapértelmezett bootloader konfig filéje. Egy tipikus FreeBSD dolog ez: létezik egy /boot/defaults/loader.conf - ezt, nagyon komolyan mondom, hogy soha, de soha nem szabad baszkurálni! Ha bármit is baszkurálsz FreeBSD-ben, azt soha ne a defaults változatban tedd, mert az azért van, hogy valamiképpen mégis indítható legyen a géped, akkor is, ha valamit elrontottál.)
Az ee-t tényleg öröm használni. Szerintem nem nagyon fogok én élni a nano-val - pedig az is telepíthető :} -, annyira értékelem az ee minimalizmusát.
linux_load="YES" (értsd: linuxos drivert csorgassa bé indításkor, de ezt a szöveget be ne írd a loader.conf-ba)
nvidia_load="YES"
nvidia_name="nvidia"
nvidia_modeset_load="YES"
nvidia_modeset_name="nvidia-modeset"
(Ezeknek az utasításoknak nyelvét egyébként UCL-nek nevezik, Universal Configuration Language. Csomó helyen előkerül, amikor konfigurálsz bármyt is Júnikzban, szóval elő fog kerülni máshol is ez a formátum, hogy változó="érték".)
A grafikus fülület feltelepintését inkább egy új posztba írom bele, a követhetőség kedvéért.