Come installi i sorgenti del kernel di FreeBSD10?


19

Sto cercando di eseguire un aggiornamento di freebsd10 e mi vengono richiesti i sorgenti del kernel

===>>> Launching child to update lsof-4.89.b,8 to lsof-4.89.d,8

===>>> All >> lsof-4.89.b,8 (9/9)

===>>> Currently installed version: lsof-4.89.b,8
===>>> Port directory: /usr/ports/sysutils/lsof

        ===>>> This port is marked IGNORE
        ===>>> requires kernel sources


        ===>>> If you are sure you can build it, remove the
               IGNORE line in the Makefile and try again.

===>>> Update for lsof-4.89.b,8 failed
===>>> Aborting update

ma sysinstall non esiste più

sysinstall: not found

Qual è il nuovo metodo di installazione dei sorgenti del kernel in FreeBSD10?

Ho pensato bsdinstall, ma cerca solo di tagliare il mio disco che non voglio inserisci qui la descrizione dell'immagine


Evidentemente non stai aggiornando FreeBSD se stai aggiornando una porta di terze parti con il nome di sysutils/lsof. Anche a parte il fatto che ciò sta accadendo /usr/ports, l'attuale comando del sistema operativo FreeBSD è fstat. Cosa stai effettivamente cercando di fare: aggiornare la collezione di porte? o aggiornare il sistema operativo? Perché sono due risposte diverse e due diversi capitoli del Manuale di FreeBSD . Sì, questo è tutto nel Manuale .
JdeBP,

Isof li stava cercando e li volevo davvero. Non sono timido su un kernel, ma le informazioni non sono dove trovarle. Sto solo ottenendo i sorgenti del kernel correnti.
nix,

Risposte:


6

Puoi farlo:

git clone https://github.com/freebsd/freebsd.git /usr/src
cd /usr/src; make clean

2
Per i futuri ricercatori, questo ridurrà una quantità significativa di dati aggiuntivi (roba git) che non sono necessari per la costruzione effettiva dalla fonte. La risposta di J. Delgado è il metodo canonico ed più efficiente.
Royce Williams

39

Puoi scaricare ed estrarre manualmente un tarball dell'albero dei sorgenti completo per la tua versione specifica da ftp://ftp.freebsd.org/pub/FreeBSD/releases/

Per esempio

prendere ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/10.2-RELEASE /src.txz

tar -C / -xzvf src.txz

10.2-RELEASE DEVE essere sostituito con la versione corretta del sistema operativo.

Si può trovare la versione usando il comando: freebsd-version -k

Le versioni secondarie devono essere ignorate per recuperare dall'URL sopra. Ad esempio: se lo è 10.2-RELEASE-p1, basta usare:10.2-RELEASE


Questa è la risposta esatta.
mghaoui,

2
Funziona con FreeBSD 11.2.
Code4R7,

1
Si noti che l' -zopzione non è necessaria qui, poiché tar rileverà automaticamente il formato di input. Per la pagina man, In extract or list modes, this option is ignored.mi piace anche fare questo in linea: fetch -o- ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/X.Y-RELEASE/src.txz | sudo tar -C / -xvf -. Non è necessario archiviare src.txzlocalmente.
ghoti,

11

Una soluzione un po 'più generica:

fetch -o /tmp ftp://ftp.freebsd.org/pub/`uname -s`/releases/`uname -m`/`uname -r | cut -d'-' -f1,2`/src.txz

tar -C / -xvf /tmp/src.txz

E puoi sostituirlo /tmpcon la tua directory preferita in cui scaricare le cose.

O:

svn checkout https://svn.freebsd.org/base/releng/`uname -r | cut -d'-' -f1,1` /usr/src
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.