Comment installez-vous les sources du noyau FreeBSD10?

19

J'essaie d'exécuter une mise à jour de freebsd10 et on me demande les sources du noyau

===>>> 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

mais sysinstall n'existe plus

sysinstall: not found

Quelle est la nouvelle méthode d'installation des sources du noyau dans FreeBSD10?

Je pensais que bsdinstall, mais il essaie seulement de couper mon disque, ce que je ne veux pas entrez la description de l'image ici

rien
la source
De toute évidence, vous ne mettez pas à jour FreeBSD si vous mettez à niveau un port tiers du nom de sysutils/lsof. Même en dehors du fait que cela se produit dans /usr/ports, la véritable commande du système d'exploitation FreeBSD l'est fstat. Que voulez-vous réellement faire: mettre à niveau la collection de ports? ou mettre à niveau le système d'exploitation? Parce que ce sont deux réponses différentes et deux chapitres différents du manuel FreeBSD . Oui, tout cela est dans le manuel .
JdeBP
lsof les cherchait et je les voulais vraiment. Je ne suis pas gêné par un noyau, mais l'info n'est nulle part où se trouver. Obtenir simplement les sources actuelles du noyau.
nix

Réponses:

6

Tu peux le faire:

git clone https://github.com/freebsd/freebsd.git /usr/src
cd /usr/src; make clean
Golfe Persique
la source
2
Pour les futurs chercheurs, cela réduira une quantité importante de données supplémentaires (trucs git) qui ne sont pas nécessaires pour la construction réelle à partir de la source. La réponse de J. Delgado est la méthode canonique et la plus efficace.
Royce Williams
39

Vous pouvez télécharger et extraire manuellement une archive tar de l'arborescence source complète pour votre version spécifique à partir de ftp://ftp.freebsd.org/pub/FreeBSD/releases/

Par exemple

récupérer ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/10.2-RELEASE /src.txz

tar -C / -xzvf src.txz

10.2-RELEASE DOIT être remplacé par une version correcte de votre système d'exploitation.

On peut trouver la version en utilisant la commande: freebsd-version -k

Les versions mineures doivent être ignorées pour être récupérées à partir de l'URL ci-dessus. Par exemple: si c'est le cas 10.2-RELEASE-p1, utilisez simplement:10.2-RELEASE

J. Delgado
la source
C'est la bonne réponse.
mghaoui
2
Fonctionne avec FreeBSD 11.2.
Code4R7
1
Notez que l' -zoption n'est pas nécessaire ici, car tar détectera automatiquement le format d'entrée. Par la page de manuel, In extract or list modes, this option is ignored.je aime aussi le faire en ligne: fetch -o- ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/X.Y-RELEASE/src.txz | sudo tar -C / -xvf -. Pas besoin de stocker src.txzlocalement.
ghoti
11

Une solution un peu plus générique:

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

Et vous pouvez remplacer /tmppar votre répertoire préféré pour télécharger des choses dans.

Ou:

svn checkout https://svn.freebsd.org/base/releng/`uname -r | cut -d'-' -f1,1` /usr/src
Crash Coredump
la source