如何在FreeBSD 11上构建和安装自定义内核

默认情况下,FreeBSD操作系统使用GENERIC内核。但是,在本教程中,我们将使用称为的自定义配置重新编译FreeBSD内核CUSTOM

先决条件

1)要遵循本教程,请部署以下实例:

2)部署实例后,sudo以root用户身份安装:

# pkg install -y sudo

3)创建一个本地用户作为wheel组的成员,然后发出密码:

# pw useradd test -g wheel
# passwd test
Changing local password for test
New Password:
Retype New Password:

4)允许wheel组的所有成员执行任何命令

# visudo

更改:

# %wheel ALL=(ALL) ALL

%wheel ALL=(ALL) ALL

通过按键,Esc然后键入来保存并退出:wq!

5)更改为新用户的外壳

# su test
$

1.获取源代码

为了重新编译内核,我们必须首先从FreeBSD的版本控制系统中获取源代码。在这种情况下,subversion

$ sudo pkg install -y subversion
Password:

默认情况下,新的FreeBSD用户的shell是sh; 但是,我们需要csh在安装后将其更改为subversion

1)确认当前用户的shell:

$ echo $SHELL
/bin/sh

2)将当前用户的shell更改为csh

$ chsh -s /bin/csh
Password:
chsh: user information updated

3) 确认外壳已更改为当前用户:

$ grep test /etc/passwd
test:*:1001:0:User &:/home/test:/bin/csh

要么

$ echo $SHELL
/bin/csh

4)现在,当前用户的shell配置为csh,我们现在可以rehash使用目录表:

$ rehash

5)最后,签出最新稳定分支到/usr/src目录的副本:

$ sudo svn co --trust-server-cert --non-interactive https://svn0.us-east.freebsd.org/base/stable/11/ /usr/src
Password:
Checked out revision 317943.

2.创建CUSTOM配置

对于我��的CUSTOM内核配置,我们将复制现有GENERIC配置。

1)GENERIC/usr/src/sys/amd64/conf/目录复制为CUSTOM

$ sudo cp /usr/src/sys/amd64/conf/GENERIC /usr/src/sys/amd64/conf/CUSTOM
Password:

在我们的CUSTOM内核配置中,我们将进行一些更改。

2)打开/usr/src/sys/amd64/conf/CUSTOM

$ sudo vi /usr/src/sys/amd64/conf/CUSTOM

在第22行,您将看到一个ident标志,vi通过按键,Esc然后键入,可以在编辑器中看到行号:set nu

22 ident GENERIC

3)更改GENERIC为自定义内核的名称;在这种情况下CUSTOM

22 ident CUSTOM

此外,在配置的底部,我们将添加以下内容:

options IPSEC
options TCP_SIGNATURE

对更改感到满意后,请Esc按键,然后键入,以保存并再次退出:wq!

可以在NOTES目录中针对每种架构类型的文件中找到有关这些各种选项的附加信息/usr/src/sys/

以下是一些常见的体系结构NOTES位置:

  • /usr/src/sys/amd64/conf/NOTES
  • /usr/src/sys/arm64/conf/NOTES
  • /usr/src/sys/i386/conf/NOTES

可以从以下位置引用体系结构独立的选项 /usr/src/sys/conf/NOTES

有关更多详细信息,请参见FreeBSD手册

3.构建和安装CUSTOM内核

现在,我们将编译CUSTOM您准备的内核。

1)更改到/usr/src目录,并发出make buildkernelCUSTOM配置文件:

$ cd /usr/src
$ sudo make buildkernel KERNCONF=CUSTOM
Password:

完成之前所需的估计时间将根据实例的资源量而有所不同。

在本教程中,我们利用了以下内容:

CPU:        4 vCore
RAM:        8192 MB
Storage:    100 GB SSD

有了这些资源,我们CUSTOM在大约4个小时内完成了内核的编译:

--------------------------------------------------------------------
>>> Kernel build for CUSTOM completed on Sat May 6 00:24:37 UTC 2017
--------------------------------------------------------------------

2)一旦你的CUSTOM内核编译完成后,就可以安装配置:

$ sudo make installkernel KERNCONF=CUSTOM
Password:

安装应该比编译快得多。

3)完成安装后,重新启动实例:

$ sudo shutdown -r now
Password:

现在,您的实例将开始关闭并重新启动进入CUSTOM内核。您可以登录到实例的控制台以观察启动过程。

4)实例重新启动后,登录并确认CUSTOM正在使用您的内核:

$ sysctl kern.conftxt | grep ident
ident CUSTOM

要么

$ uname -i
CUSTOM



Leave a Comment

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

什麼是日誌文件系統,它是如何工作的?

什麼是日誌文件系統,它是如何工作的?

我們的計算機以稱為日誌文件系統的有組織的方式存儲所有數據。這是一種有效的方法,可以讓計算機在您點擊搜索時立即搜索和顯示文件。 https://wethegeek.com/?p=94116&preview=true

技術奇點:人類文明的遙遠未來?

技術奇點:人類文明的遙遠未來?

隨著科學的快速發展,接管了我們的大量工作,我們陷入無法解釋的奇點的風險也在增加。閱讀,奇點對我們意味著什麼。

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

2021 年人工智能對醫療保健的影響

2021 年人工智能對醫療保健的影響

過去幾十年,醫療保健領域的人工智能取得了巨大飛躍。因此,醫療保健中人工智能的未來仍在日益增長。