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ユーザーのシェルはshです。ただし、cshインストール後にこれをに変更する必要がありますsubversion

1)現在のユーザーのシェルを確認します。

$ echo $SHELL
/bin/sh

2)現在のユーザーのシェルを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)現在のユーザーのシェルがとして構成された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フラグが表示されます。行番号はviEscキーを押してから次のように入力することでエディターに表示できます: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たディレクトリと問題A 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

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。