Üdv,
Egy FreeBSD 7.0-t konfigolgatok a notimon egy ideje. Ports-ból teszem a csomagokat és minden jól megy. Most már itt van a 7.1, szeretnék upgrade-elni. Az alábbi módon fogok pár nap múlva:
freebsd-update -r 7.1-RELEASE upgrade
Olvasgatom a FreeBSD kézikönyvet a rendszer-frissítésről. Ami nem világos, hogy mit frissít a freebsd-update? Ez csak a rendszer-magot frissíti, és utána ráereszthetem a portupgrade-et, vagy ha port-ot használok, akkor ne használjam a freebsd-update-et?
Az világos hogy port-ból fordítok és nem telepítek régebbi csomagot bináris pkg-ból.
A freebsd-update-ről még a manual-ban is elég kevésnek tűnik a doksi.
Tudnátok segíteni abban is esetleg, hogy ki melyik port-frissítő parancsot pereferálja? (portupgrade és portmaster között vacilálok, de portmaster jobban tetszik olyan szempontból amit a doksi is ír, hogy a rendszer pkg adatállománya alapján jegyzi a csomagokat és nem kell külön db).
Előre is köszi.
- 1913 megtekintés
Hozzászólások
subscribe
- A hozzászóláshoz be kell jelentkezni
freebsd-update csak alaprendszert frissít, ports-ból (vagy akár bináris csomagból) felrakott nem-alaprendszeri dolgokat nem. Érdemes eldönteni, hogy jó-e neked a valamilyen release vagy esetleg forrásból akarsz utánamenni a dolgoknak. Ha nem érdekel a STABLE/CURRENT ág, és ha nem hackeled össze-vissza a rendszered, akkor teljesen jó. Nekem az tűnk gyanúsnak, hogy talán nem szereti a freebsd-update és a c(v)sup-os frissítést, de ez csak egyetlen gép tapasztalata, ami azért nem bizonyított tény.
Én régebben az (akkor szinte egyedüli) portupgrade -et használtam, aztán másfél-két éve (?) áttértem portsnap+portmaster-re. Nincs Ruby-függősége, nem lomha, hanem villámgyors, a fejlesztője készséges és tolja bele a szükséges (és a szükségtelen?) funkciókat, és igen nagy előnye, hogy nem kell plusz adatbázis a működéséhez. Doksit olvasni nem árt, de eléggé stabilan megy. Persze ez is csak egy vélemény.
- A hozzászóláshoz be kell jelentkezni
Nekem elég a stable release. De a csomagokat forrásból akarom / kell feltennem, mert ugye a bináris pkg-ben lévő verziók régiek és ráadásul sok minden nincs benne (ugye a licenc feltételek miatt -úgy olvastam).
portsnap + portmaster -t akkor megpróbálom. (most olvastam portmanager-ről, hogy az tud visszaállítani a portmaster-rel ellentétben + problémánál "okosabban" továbbmegy, míg portmaster csomagot készít és azt teszi fel, ami nem visszaállítható).
Köszi a véleményt.
Akkor az alábbi körvonalazódik nekem:
freebsd-update fetch
freebsd-update install
portsnap fetch
portsnap update
portmanager -u | portmaster -a
...ha jól gondolom a csomag frissítést :)
- A hozzászóláshoz be kell jelentkezni
> míg portmaster csomagot készít és azt teszi fel, ami nem visszaállítható
???? Ezt hol olvastad? A portmaster (nagyvonalakban) egyszeruen :
cd /usr/ports/x/y
make all
pkg_create -b y.elozo-verzio
pkg_delete -f y.elozo-verzio
make install clean
Azaz ha csak nem kered meg ra, hogy ne csinaljon backup-ot az elozo csomagbol (-B opcio, asszem), akkor barmikor visszaallithato. A frissen telepitettbol viszont pont hogy nem csinal csomagot. Annyi trukk persze van benne, hogy (nem neztem hogyan) mielott pkg_delete -tel letorli az elozo verziot, keszit egy listat arrol, hogy kik fuggtek tole, es amikor felrakja az uj verziot, ezt a fuggosegi fat ujraepiti.
- A hozzászóláshoz be kell jelentkezni
Köszi a segítséget.
Egy olyanban tudnál még segíteni, hogy hogyan tudom eltávolítani vajon a nem használt függőségeket?
Vagy másképpen fogalmazva, ha pl. telepítem a k3b-t, akkor ha már nem kell, hogyan tudom úgy levenni pkg_delete-tel (vagy máshogy) hogy törölje a függőségeket is? (hasonlóan a Debian-os autoremove-hoz)
Erre még nem jöttem rá :)
Az megy hogy ha egy csomagot rekurzívan törlök pkg_delete-tel, akkor az "felfelé" leszedi azokat a csomagokat, amik tőle függnek. Nekem a fordítottja kellene :)
- A hozzászóláshoz be kell jelentkezni
No ez például olyan, amit (tudtommal) nem tud se a pkg_delete, se a portmaster. (Ebben pl. jobb a portupgrade.) Én erre a /usr/ports/ports-mgmt/pkg_cutleaves eszközt találtam többé-kevésbé kielégítőnek.
- A hozzászóláshoz be kell jelentkezni
Még egy utolsó kérdésem lenne, meg tudnád azt mondani, hogy a ports minek függvényében frissül?
Arra gondolok, hogy ugye a ports-ban a források követik a RELEASE-t és azok nem a STABIL ágtól függetlenül frissülnek?
- A hozzászóláshoz be kell jelentkezni
Hát a kérdést nem teljesen értem, de amire tudok válaszolni: FreeBSD alatt ports-ból csak CURRENT van, azaz folyamatosan frissítik. Az összes korlátozás amit hozzátettek, hogy minden RELEASE környékén van egy befagyasztási időszak, amikor elvben csak bizonyos fajta ports-javítások kerülnek be a fába (ez pl. most a 7.1 előtt nekem nagyon nem így tűnt, de mindegy), és aztán ebből a fagyasztott állapotból készült csomagok lesznek az ahhoz a RELEASE-hez tartozó készlet - és ezt aztán nem is frissítik nagyon.
- A hozzászóláshoz be kell jelentkezni
> ...és aztán ebből a fagyasztott állapotból készült csomagok lesznek az ahhoz a RELEASE-hez tartozó készlet - és ezt aztán nem is frissítik nagyon...
Készlet alatt a bináris csomagokat érted?
Ha így van egyébként, hogy a ports folyamatosan frissül akkor gyakorlatilag számomra máris érdektelen. Ezen amúgy meglepődtem.
De akkor ha jól értem, és pl. a 7.1-es pkg binárisok a fagyasztott ports-ból készülnek, akkor ok. Mert nekem az kellene. Tehát én fagyasztott stabil 3rd party-kat akarok. Csak úgy vettem észre hogy licenc okok miatt nem minden ports-ból van bináris.
Most azonnal megnézem a pkg-k és ports-ok verzióját..
- A hozzászóláshoz be kell jelentkezni
> Készlet alatt a bináris csomagokat érted?
Igen.
> a ports folyamatosan frissül akkor gyakorlatilag számomra máris érdektelen
Miért? Ez azt jelenti, hogy van egy adott pillanatbeli állapot, ezt a ports-állapotot tudod te telepítéskor feltenni, ha azt választod a telepítés közben, hogy kell a ports. Ebből az állapotból készülnek csomagok - nyilván azokból, amikből jogi okokból egyáltalán lehet. Ha valami nincs meg bináris csomagban, akkor ebből a "fagyasztott" ports-ból tudod feltenni. Ha nem változtatsz semmit, akkor elvben pontosan fog illeszkedni a bináris csomagokhoz és kb ugyanazt a bináris csomagot kapnád belőle magad is, ha a cd /usr/ports/X/Y ; make package parancsokat adnád ki.
Ezen akkor szoktak (?) változtatni a felhasználók, valamit más paraméterekkel akarnak fordítani, mint ahogy "gyárilag" van, illetve ha valamiért szeretnének frisebb csomagokat, mint ami ahhoz a verzióhoz van. Ez utóbbi esetben ports-frissítés után lehet játszani.
- A hozzászóláshoz be kell jelentkezni
Nagyon köszi az eddigi segítségedet, most már kezd letisztulni a kép :)
Leellenőriztem néhány program verzió számát és úgy van ahogy mondtad, hogy akkor az aktuális ports-ból fagyaszthatják, mert most a 7.1-ben stimmel a pkg bináris verzió a ports verzióval.
Akkor úgy néz ki pkg binárist fogok használni elsődlegesen, mivel nem az új verzió hanem inkább a stabilitás fontos számomra. De ha kell valamiből CURRENT, akkor jó hogy ports-ból is feltehetem bármikor.
Köszi mégegyszer.
- A hozzászóláshoz be kell jelentkezni
Ha jol tevedek:
http://lists.freebsd.org/pipermail/freebsd-questions/2005-February/0788…
udv, sjrextor
- A hozzászóláshoz be kell jelentkezni
Köszi, ezt kerestem! Még egy +1 pont a portmanager mellett :)
Azért beírom ide is:
portmanager -slid
- A hozzászóláshoz be kell jelentkezni
most találtam: portmaster -is
:)
--
\\-- blog --//
- A hozzászóláshoz be kell jelentkezni