LoginSignup
0
0

RHEL8/9のカーネルソースを調査する方法

Posted at

1. SRPMを入手

YUMの場合

$ sudo yum install yum-utils
$ yumdownloader --source kernel

DNFの場合

$ dnf download --source kernel

RedHatカスタマーポータルサイトからダウンロード

RHELサイトにアカウントがある場合はログインしてsrc.rpmをダウンロードする方法もある。
https://access.redhat.com/
ダウンロード > RPM パッケージ検索 > [kernel]を検索 > Source Package - kernel-*.src.rpm をダウンロード。

2. SRPMの展開

インストールと同じ。

$ rpm -ivh kernel.src.rpm

ホームディレクトリにrpmbuildというディレクトリが作成され、その中にSPECSとSOURCESが展開されるはずだが、気になる場合は以下で確認できる。

$ rpm --showrc | grep _topdir
-13: _builddir  %{_topdir}/BUILD
-13: _buildrootdir      %{_topdir}/BUILDROOT
-13: _rpmdir    %{_topdir}/RPMS
-13: _sourcedir %{_topdir}/SOURCES
-13: _specdir   %{_topdir}/SPECS
-13: _srcrpmdir %{_topdir}/SRPMS
-13: _topdir    %{getenv:HOME}/rpmbuild

3. SPECSフォルダに移動

$ cd ${HOME}/rpmbuild/SPCES

4. rpmbuildコマンドを使ってソース展開とパッチ適用

$ rpmbuild -bp kernel.spec

pathfix.py command not found のエラーが出る場合は以下パッケージをインストールで解決するかも。
RHEL8の場合:yum install platform-python-devel
RHEL9の場合:yum install python3-devel

${HOME}/rpmbuild/SOURCES 配下のソースをVSCodeなどで確認する。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0