Windowsを使っている限りでは、ほとんど聞いたことが無いような単語が、Linuxでは気軽にでてきて戸惑いますよね。
ちょっと挙げてみると、以下のような単語が馴染みがないと思います。
- Linuxディストリビューション
- Linuxカーネル
- ディレクトリ
- シェル
- パッケージ
今回は、その中の一つのLinuxカーネルを取り上げます。
Linuxカーネルとは
世界中で使われているすべてのLinuxディストリビューションに共通する中心部分(核)が、Linuxカーネルと呼ばれています。
Linuxカーネルは以下のような機能で構成されています。
- プロセス管理
- プロセス間通信
- メモリ管理
- ファイルシステム
- ネットワーク
- カーネルプリミティブ(基本機能、割り込みなど)
これらの機能は、Linuxディストリビューションごとに変更する必要がないため、中心部分(核)であるLinuxカーネルで提供されています。
この機能(Linuxカーネル)もバージョンアップを繰り返していて、1994/3/14にバージョン1.0がリリースされました。
それから24年を経て、2018/6/3にバージョン4.17がリリースされています。
Linuxカーネルは、Linuxのリーダーとも言えるLinus Torvaldsさんが、維持管理しています。
一方、Linuxカーネル部分は誰でも自由に変更できるため、Linuxディストリビューションによっては、Linuxカーネル部分も変更している場合があります。
そのため、変更したLinuxカーネルを、元々のLinuxカーネルと区別するためにディストリビューションカーネルと呼ぶことがあります。
Linuxカーネルのバージョンを確認しよう
あなたが使っているLinuxディストリビューションもLinuxカーネルを使っています。
(1)Linuxカーネルのバージョンを確認するには、以下のコマンドを入力します。
uname -r
Linux Mint Cinnamonエディション(18.3)では、以下のように表示されました。
4.10.0-38-generic
ここで表示された文字列が、ディストリビューションカーネルのバージョンです。
そして、1つ目の「-」の左側がLinuxカーネルのバージョンです。
上のように表示された場合は、Linuxカーネルのバージョンは4.10.0であることを意味します。
他のLinuxディストリビューションも見てみると、以下のようにいろいろなバージョンが使われています。
Linuxディストリビューション | ディストリビューションカーネル |
---|---|
Linux Mint Cinnamonエディション(18.3) | 4.10.0-38-generic |
linuxBean 16.04(16.04-20180131) | 4.4.0-112-generic |
Ubuntu Desktop日本語Remix(18.04 LTS) | 4.15.0-22-generic |
Debian 9.4.0 | 4.9.0-6-amd64 |
CentOS 7 | 3.10.0-327.18.2.el7.x86_64 |
では、各バージョンで何が変わってきたのでしょう。
バージョンアップの内容については、OSDNマガジンの記事が読みやすいので、ぜひそちらをご覧ください。
Linuxカーネルのバージョンと、Linuxディストリビューションの関係は以下のとおりです。
OSDNマガジン | Linuxカーネル | Linuxディストリビューション |
---|---|---|
https://mag.osdn.jp/16/01/12/155000 | 4.4 | linuxBean 16.04(16.04-20180131) |
https://mag.osdn.jp/16/03/15/140000 | 4.5 | |
https://mag.osdn.jp/16/05/17/154000 | 4.6 | |
https://mag.osdn.jp/16/07/26/163000 | 4.7 | |
https://mag.osdn.jp/16/10/04/163000 | 4.8 | |
https://mag.osdn.jp/16/12/13/163000 | 4.9 | Debian 9.4.0 |
https://mag.osdn.jp/17/02/21/170000 | 4.10 | Linux Mint Cinnamonエディション(18.3)、CentOS 7 |
https://mag.osdn.jp/17/05/02/163000 | 4.11 | |
https://mag.osdn.jp/17/07/04/163000 | 4.12 | |
https://mag.osdn.jp/17/09/05/161500 | 4.13 | |
https://mag.osdn.jp/17/11/14/164500 | 4.14 | |
https://mag.osdn.jp/18/01/30/164500 | 4.15 | Ubuntu Desktop日本語Remix(18.04 LTS) |
https://mag.osdn.jp/18/04/03/163000 | 4.16 | |
https://mag.osdn.jp/18/06/06/163000 | 4.17 |
Ubuntu Desktop日本語Remix(18.04 LTS)が最も進んでいて、この中ではlinuxBeanが最も古いLinuxカーネルを使用していることがわかります。
Linuxカーネルをバージョンアップしてみる!
Ubuntu派生のLinuxディストリビューションは、Linuxカーネル(実際は、ディストリビューションカーネル)を思いのほか簡単にバージョンアップできます。
ここでは、正確を期すため「Linuxカーネル」ではなく「ディストリビューションカーネル」と表記します。
(1)現在のディストリビューションカーネルのバージョンを再確認するため、以下のコマンドを入力しましょう。
uname -r
Linux Mint Cinnamonエディション(18.3)では、以下のように表示されます。
4.10.0-38-generic
(2)インストールできるディストリビューションカーネルを検索するため、以下のコマンドを入力します。
apt search linux-image-extra-4.1[0-9].*
以下のように、Linuxカーネルのバージョン4.10~4.19のディストリビューションカーネルが一覧表示されます。
このときは、バージョン4.16以降のパッケージは用意されていませんでした。
p linux-image-extra-4.10.0-1004-gcp - Linux kernel extra modules for version 4.10.0 on 64 bit x86 SMP p linux-image-extra-4.10.0-1006-gcp - Linux kernel extra modules for version 4.10.0 on 64 bit x86 SMP p linux-image-extra-4.10.0-1007-gcp - Linux kernel extra modules for version 4.10.0 on 64 bit x86 SMP (省略) p linux-image-extra-4.14.0-1003-azure-edge - Linux kernel extra modules for version 4.14.0 on 64 bit x86 SMP p linux-image-extra-4.15.0-1005-azure-edge - Linux kernel extra modules for version 4.15.0 on 64 bit x86 SMP p linux-image-extra-4.15.0-13-generic - Linux kernel extra modules for version 4.15.0 on 64 bit x86 SMP p linux-image-extra-4.15.0-13-generic:i386 - Linux kernel extra modules for version 4.15.0 on 32 bit x86 SMP p linux-image-extra-4.15.0-15-generic - Linux kernel extra modules for version 4.15.0 on 64 bit x86 SMP p linux-image-extra-4.15.0-15-generic:i386 - Linux kernel extra modules for version 4.15.0 on 32 bit x86 SMP
たくさんの候補がありますが、今回は、「linux-image-extra-4.15.0-15-generic」をインストールします。
(3)以下のコマンドを入力します。
sudo apt install linux-image-extra-4.15.0-15-generic
ディストリビューションカーネルのインストール情報が確認されます。
パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 以下の追加パッケージがインストールされます: linux-image-4.15.0-15-generic 提案パッケージ: fdutils linux-hwe-edge-tools linux-headers-4.15.0-15-generic 以下のパッケージが新たにインストールされます: linux-image-4.15.0-15-generic linux-image-extra-4.15.0-15-generic アップグレード: 0 個、新規インストール: 2 個、削除: 0 個、保留: 332 個。 53.4 MB 中 32.6 MB のアーカイブを取得する必要があります。 この操作後に追加で 246 MB のディスク容量が消費されます。 続行しますか? [Y/n]
(4)Enterキーを押します。
新しいディストリビューションカーネルのインストールが始まります。
(5)インストールが終了したら、Linux Mint Cinnamonエディションを再起動します。
(6)再起動したら、現在のディストリビューションカーネルのバージョンを再確認するため、以下のコマンドを入力します。
uname -r
ディストリビューションカーネルのバージョン情報が表示されます。
4.15.0-15-generic
確かにディストリビューションカーネル(Linuxカーネル)がバージョンアップされました!
この記事を書いた時点では、この手順では4.16や4.17にはバージョンアップできませんでした。
まとめ
今回は、すべてのLinuxディストリビューションに共通のLinuxカーネルと、Linuxディストリビューションごとに異なるディストリビューションカーネルについて説明しました。
いくつかのLinuxディストリビューションで、Linuxカーネルのバージョンを調べました。
最後に、Linux Mint CinnamonエディションのLinuxカーネルを4.10.0から、4.15.0にバージョンアップする操作を説明しました。
Linuxディストリビューションによっては、バージョンアップの方法が異なりますので、この手順のとおりにできない場合は、じっくり調べていただければと思います!
では、よいLinux生活をお過ごしください!