Ubuntuサーバーカーネルにパッチファイルを適用する方法を説明できる人はいますか?応募しようこれtcp_collapse_max_bytes
UbuntuサーバーのTCP通信オプションでオプションを有効にするパッチファイル。フォローするこれ答えを聞いて申請しようとしましたが、.patch
同じエラーが発生しました。
私のステップは次のとおりです。まず、ディレクトリをカーネルソースフォルダに変更します。
cd /usr/src/linux-headers-5.15.0-58-generic
その後、コマンドを実行します。patch -p0 ~/file.patch
しかし、次のメッセージが表示され、パッチするファイルを入力するように求められます。
can't find file to patch at input line 44
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
...
...
File to patch:
間違ったディレクトリで作業しているようですが、わかりません。
答え1
ソースコードをダウンロードし、ダウンロードしたソースコードをパッチする必要があることがわかりました。何らかの理由で理解できません。このコードは/usr/src/
公式Linuxの正確なコードではありません。 (私のVPSプロバイダがそれを修正した可能性があります)。フォローするこれら手順に従ってパッチを適用してコードをダウンロードし、カーネルをコンパイルしてインストールします。
それで、次のステップが役に立ちました。
たとえば、公式ウェブサイトから適切なLinuxカーネルソースコードをダウンロードします。kernel.org
カーネルを解凍してディレクトリを変更します。
cd linux-5.15.**
パッチ適用
patch -p1 < path/to/patch/0014-add-a-sysctl-to-enable-disable-tcp_collapse-logic.patch
パッチ付きカーネルをコンパイルしてインストールします。ディストリビューションによっては、この手順は若干異なる場合があり、一部の依存関係が必要になる場合があります。ただし、通常、次のコマンドが関連しています。
make menuconfig
make
手順4はLinuxディストリビューションによって異なり、カーネルをコンパイルしてインストールするために追加のパッケージをインストールする必要があるかもしれません。