您如何安装FreeBSD10内核源代码?


19

我正在尝试运行freebsd10的更新,并被要求提供内核源代码

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

但是sysinstall不再存在

sysinstall: not found

在FreeBSD10中安装内核源代码的新方法是什么?

我以为bsdinstall,但它只会尝试切碎我不想要的磁盘 在此处输入图片说明


如果要升级名称为的第三方端口,显然不会更新FreeBSD sysutils/lsof。即使发生这种情况/usr/ports,实际的FreeBSD操作系统命令还是fstat。您实际上是在尝试做什么:升级端口集合?或升级操作系统?因为它们是FreeBSD手册的两个不同的答案和两个不同的章节。是的,这些都在手册中
JdeBP 2015年

lsof在寻找他们,我真的只是想要他们。我对内核并不害羞,但是在哪里找不到该信息。仅获取当前的内核源代码。
nix

Answers:


6

你能行的:

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

2
对于未来的搜索,这将拉低一个显著是不是需要从源实际建筑的附加数据(混帐东西)量。J. Delgado的答案是规范且最有效的方法。
罗伊斯·威廉姆斯

39

您可以从ftp://ftp.freebsd.org/pub/FreeBSD/releases/手动下载特定版本的完整源代码树的压缩文件。

例如

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

焦油-C / -xzvf src.txz

10.2-RELEASE 必须替换为正确版本的操作系统。

可以使用以下命令找到版本: freebsd-version -k

次要版本应被忽略,以从上述URL中获取。例如:如果是10.2-RELEASE-p1,则使用:10.2-RELEASE


这是正确的答案。
mghaoui

2
与FreeBSD 11.2一起使用。
Code4R7

1
请注意,-z此处不需要该选项,因为tar将自动检测输入格式。每手册页,In extract or list modes, this option is ignored.我也很喜欢做这个在线:fetch -o- ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/X.Y-RELEASE/src.txz | sudo tar -C / -xvf -。无需src.txz本地存储。
ghoti 18/09/25

11

更通用的解决方案:

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

您可以/tmp用自己喜欢的目录替换以将内容下载到其中。

要么:

svn checkout https://svn.freebsd.org/base/releng/`uname -r | cut -d'-' -f1,1` /usr/src
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.