Come applicare gli aggiornamenti su OpenBSD, NetBSD e FreeBSD?


25

Sto usando OpenBSD da un po 'di tempo ormai. Tutto quello che faccio, tuttavia, è passare da una versione all'altra, facendo sempre solo un aggiornamento. Ho configurato il sistema in modo che funzioni come router e firewall, e funziona abbastanza bene in questo modo. Ma non aggiorno mai i pacchetti. Tutto ciò che faccio è passare alla versione successiva.

Provenendo dal mondo Linux, sono abituato ad applicare gli aggiornamenti alcune volte alla settimana; ma come posso farlo su * BSD? - O non fa parte della filosofia * BSD?



L'aggiornamento con OpenBSD con pkg_addè pkg_add -uvi, giusto?
polemon,


Sebbene questo collegamento possa rispondere alla domanda, è meglio includere qui le parti essenziali della risposta e fornire il collegamento come riferimento. Le risposte di solo collegamento possono diventare non valide se la pagina collegata cambia. - Dalla recensione
Archemar,

Risposte:


22

OpenBSD è binario-centrico. È possibile aggiornare i file binari (se sono disponibili aggiornamenti / modifiche) eseguendo pkg_add :

pkg_add -Uu

Il team di OpenBSD consiglia di utilizzare i pacchetti sulla creazione di porte: il sistema di pacchetti e porte di OpenBSD

FreeBSD può essere aggiornato tramite pacchetti o porte .


1
pkg_add -uè abbastanza su OpenBSD. Utilizzare -Uquando si installa un singolo pacchetto (o set di pacchetti) se si desidera aggiornare i pacchetti da cui questi (questi) dipendono.
Kusalananda

9

In generale, quando usi OpenBSD aggiorni i tuoi pacchetti solo quando aggiorni il tuo sistema. Quindi, come passaggio finale, dopo l'aggiornamento all'ultima versione, è necessario eseguire:

 # pkg_add -ui

Che (u) aggiornerà i tuoi pacchetti installati ponendoti domande (i) interattive quando necessario.

In generale, i pacchetti per una data versione non vengono aggiornati fino alla versione successiva (ad OpenBSD mancano le risorse dello sviluppatore per fornire aggiornamenti ai pacchetti su versioni diverse da "corrente"). Se si desidera aggiornare i pacchetti più regolarmente, è necessario utilizzare le porte oppure eseguire l'aggiornamento a una nuova istantanea, quindi eseguire pkg_add -uinuovamente.

Per ulteriori informazioni, consultare: http://www.openbsd.org/faq/faq15.html


3
OpenBSD lacks the developer resources for providing updates to packages on versions other than 'current'Questo vale anche per gli aggiornamenti di sicurezza? Quindi, se si riscontra una falla nella sicurezza in un pacchetto binario che uso, devo reinstallarlo dalle porte stabili?
imgx64,

@ imgx64 Le correzioni di sicurezza alle porte vengono eseguite -current. OpenBSD non ricostruirà i pacchetti per -stable.
Kusalananda

4

OpenBSD: M: Tier offre pacchetti stabili per le architetture amd64 e i386. Ciò consente di mantenere aggiornato il sistema con le correzioni di sicurezza più recenti dalla -stablediramazione delle porte.

Un articolo su OpenBSD Journal spiega i dettagli:

In pratica, ciò significa che non appena viene eseguito il commit di un aggiornamento / correzione di sicurezza sull'albero OPENBSD_5_3, un albero verrà creato dall'albero CVS. Questo pacchetto viene quindi testato e inviato al nostro server fan-out su Stable.MTier.org, per essere utilizzato da tutti!


3

I vari sistemi BSD hanno una netta separazione tra "sistema base" e "software di terze parti (porte / pacchetti)". Si aggiornano i due separatamente.

Questo presuppone che tu abbia un'installazione di OpenBSD 6.5 o successive (vedi più sotto per la vecchia risposta):

Il sistema di base è aggiornato con sysupgrade(8):

doas sysupgrade

Questo scaricherà e aggiornerà il sistema di base alla prossima versione "stabile" di OpenBSD se stai seguendo il ramo stable o release, o all'ultima "istantanea" se stai usando snapshot. Si noti che non è necessario utilizzare sysupgradese si dispone di un'installazione personalizzata senza tutti i set di sistema di base.

Dopo aver aggiornato il sistema di base, potresti voler eseguire syspatch(8)(solo per far passare il tuo sistema da "rilascio" a "stabile", i sistemi di snapshot non usano syspatch).

Le porte sono aggiornate con pkg_add(1):

doas pkg_add -u

Su un sistema di istantanee, potresti voler aggiungere -D snapa quello (vedi il manuale).

Prima di eseguire l' aggiornamento, ti consigliamo di controllare anche la sezione pertinente delle FAQ di OpenBSD , ad esempio la sezione " Seguire -corrente e utilizzo di istantanee " o la sezione relativa all'aggiornamento all'ultima versione stabile.

C'è anche una porta / pacchetto chiamato sysclean(in sysutils/sysclean) che ti aiuterà a sottolineare le librerie di sistema di base e altri file che non fanno più parte dell'installazione predefinita. Ti dirà anche quali porte stanno usando librerie obsolete.


Vecchia risposta, pertinente alle versioni OpenBSD precedenti alla 6.5:

Nel caso di OpenBSD, supponendo che si desideri passare da una versione stabile alla successiva versione stabile (le versioni saltanti non sono supportate a meno che non si esegua una nuova installazione), si inizia leggendo le FAQ specifiche per l'aggiornamento che si sta eseguendo. In caso di aggiornamento da 5.9 a 6.0, leggi la " Guida all'aggiornamento : da 5.9 a 6.0 ".

In generale, l'essenza di ciò comporta l'avvio del supporto di installazione per la versione che si desidera aggiornare e selezionando "(U) pgrade" dal menu. Una volta aggiornato il sistema di base, lo avvii e, come root, aggiorni tutti i pacchetti installati con pkg_add -u.

È insolito che i pacchetti appartenenti a una versione OpenBSD stabile si aggiornino molto spesso. Di solito ciò accade solo quando vengono corretti bug critici. Quindi correre pkg_add -upiù volte alla settimana probabilmente non farà molto (ma continuate a farlo poiché potrebbe portare a correzioni critiche).

Se segui "corrente", le cose sono molto diverse. Quindi costruiresti i tuoi pacchetti dall'albero delle porte estratto con CVS sotto /usr/portse probabilmente ricostruiresti anche manualmente il sistema di base (vedi " Costruire il sistema dall'origine "). Le porte installate possono essere aggiornate con dpb(in /usr/ports/infrastructure/bin) se vengono fornite le opzioni corrette e un elenco di pacchetti installati manualmente.

sto usando

#!/bin/sh -x

pkg_info -P -q -m | sort -o "$HOME/packages"
/usr/ports/infrastructure/bin/dpb -scuR -P "$HOME/packages"

Seguito da

$ doas pkg_add -u -D unsigned
$ doas pkg_delete -a

Questo non è incoraggiato per i nuovi utenti.


2

Avevo bisogno di aggiornamenti perché ho installato bash e non volevo soffrire della vulnerabilità di Shellshock, quindi ho seguito il suggerimento di Holu /unix//a/103661/93476 e mi ha fatto riparare.




1

Siamo spiacenti, NetBSD pkgsrcnon supporta una soluzione incurante. Invece dovresti usare un gestore di pacchetti come niho pkgin. Sotto pkgsrcdevi forzare gli aggiornamenti che ignora le dipendenze dei file spesso collegati. Anche copiare la nuova versione sopra la vecchia pkgsrcpuò portare l' pkgsrcalbero in uno stato incoerente.


0

Per me l'aggiornamento dei pacchetti NetBSD è un comando in / usr / pkgsrc:

# cvs update -dP && csup /some-path-to-wip-supfile/netbsd-pkgsrc-wip && pkg_rolling-replace -u
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.