Jak zainstalować źródła jądra FreeBSD10?

19

Próbuję uruchomić aktualizację Freebsd10 i jestem proszony o źródła jądra

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

ale sysinstall już nie istnieje

sysinstall: not found

Jaka jest nowa metoda instalacji źródeł jądra w FreeBSD10?

Myślałem, że bsdinstall, ale próbuje tylko podzielić mój dysk, czego nie chcę wprowadź opis zdjęcia tutaj

nic
źródło
Najwyraźniej nie aktualizujesz FreeBSD, jeśli aktualizujesz port innej firmy o nazwie sysutils/lsof. Nawet poza tym, że tak się dzieje /usr/ports, tak naprawdę jest to polecenie systemu operacyjnego FreeBSD fstat. Co tak naprawdę próbujesz zrobić: zaktualizować kolekcję portów? lub uaktualnić system operacyjny? Ponieważ są to dwie różne odpowiedzi i dwa różne rozdziały Podręcznika FreeBSD . Tak, wszystko to znajduje się w podręczniku .
JdeBP
Lsof ich szukał i naprawdę ich po prostu chciałem. Nie boję się jądra, ale w informacjach nie ma gdzie znaleźć. Właśnie pobiera bieżące źródła jądra.
nix

Odpowiedzi:

6

Możesz to zrobić:

git clone https://github.com/freebsd/freebsd.git /usr/src
cd /usr/src; make clean
Zatoka Perska
źródło
2
Dla przyszłych poszukiwaczy spowoduje to usunięcie znacznej ilości dodatkowych danych (rzeczy git), które nie są potrzebne do faktycznego budowania ze źródła. Odpowiedź J. Delgado to kanoniczna i najbardziej wydajna metoda.
Royce Williams
39

Możesz ręcznie pobrać i wyodrębnić plik archiwum pełnego drzewa źródłowego dla konkretnego wydania z ftp://ftp.freebsd.org/pub/FreeBSD/releases/

Na przykład

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

tar -C / -xzvf src.txz

10.2-RELEASE MUSI zostać zastąpiony prawidłową wersją systemu operacyjnego.

Wersję można znaleźć za pomocą polecenia: freebsd-version -k

Drobne wersje należy zignorować, aby pobrać z powyższego adresu URL. Na przykład: jeśli tak 10.2-RELEASE-p1, po prostu użyj:10.2-RELEASE

J. Delgado
źródło
To jest właściwa odpowiedź.
mghaoui
2
Działa z FreeBSD 11.2.
Code4R7
1
Zauważ, że ta -zopcja nie jest tutaj potrzebna, ponieważ tar automatycznie wykryje format wejściowy. Na stronie man, In extract or list modes, this option is ignored.lubię też robić to inline: fetch -o- ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/X.Y-RELEASE/src.txz | sudo tar -C / -xvf -. Nie musisz przechowywać src.txzlokalnie.
ghoti
11

Nieco bardziej ogólne rozwiązanie:

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

I możesz zastąpić /tmpswoim ulubionym katalogiem, do którego możesz pobierać rzeczy.

Lub:

svn checkout https://svn.freebsd.org/base/releng/`uname -r | cut -d'-' -f1,1` /usr/src
Crored Coredump
źródło