Envaderを利用して、システムの確認方法、OSのバージョン確認について学んだ。


30代後半、未経験からIT業界のエンジニア転職へ挑戦している、kobakichiです。

今回は、環境構築が不要で、オンラインでLinuxについて学べるオンライン学習サービス、Envaderを利用して、OSのバージョン確認方法について学んだのでその振り返りとまとめです。

Envaderについて気になる方がいましたら、リンクを貼っておきますので参考までに。。

Envader

コース一覧

今回使用したシナリオ

記事の概要

この記事では、unameコマンドとそのオプション、またその他のOSのバージョン確認の方法についてEnvaderを通して自分なりに解釈したことをまとめました。
未来の自分へ向けて、必要な時にすぐに思い出せるように。。。。

OSのバージョン確認とは。

まずコマンドの使い方などに触れる前に、OSとは何なのか?OSのバージョンとはなんなのか?について考えます。

OS(Operating System)

OSとは、ソフトウェアの種類の一つで、機器の基本的な管理や制御のための機能や、多くのソフトウェアが共通して利用する基本的な機能などを実装した、システム全体を管理するソフトウェア。

IT用語辞典様より引用

OS自体もソフトウェアの一種なんですね。
キーボードやマウス、RAM(Random Access Memory)、外部記憶装置(ストレージ、ディスク、HDDなど)の管理などを行なっていて、電源を入れると最初に起動するのがOSなのか。ふむふむ。

つまりこうやって文字をキーボードから入力できているのもOSさんのおかげということですね!

OSには種類がある

OSは一つだけしか無い。というわけではなく、複数の種類が存在している。

  • Windows
  • macOS
  • UNIX
  • Linux
  • iOS
  • iPadOS
  • Android

などなど。
記事を検索している中で、iPadOSなんてものの存在を初めて知りました。
ただOSと言っても、このほかにもまだまだあるみたいなので、種類だけでもたくさんあるんだな〜と改めて感じています。

OSのバージョンとは

OSにはたくさんの種類がある事は分かりました。
では、unameコマンドを使って確認しようとしている、OSのバージョンとは何なのか?について少し深掘りです。

OSのバージョンの例

分かりやすいであろうWindowsのOSを見てみると、

  • Windows 2000(2000年)
  • Windows XP(2001年)
  • Windows Vista(2006年)
  • Windows 10(2015年)
  • Windows 11(2021年)

なるほど。良くパソコンで表示されている、Windows~というのがOSのバージョンなのか。

これがある事によって、Windows2000で動いていたアプリケーションが、Windows11では動かない。と言った事が起こり得るため、バージョンの確認が必要になる場面があるという事なんですね。

unameコマンドでシステム情報を表示してみる

unameコマンドは、システム情報を表示するコマンドです。

実行してみました。

envader@172-19-1-2:~$ uname
Linux

このように、unameコマンドだけだとOSのカーネル情報のみが出力されるみたいで、バージョンの確認まではできません。
ではどうするか?ですが、unameコマンドにオプションを付けて実行する事で、バージョン確認やCPUの種類などが確認できます。

unameコマンドのオプション

unameコマンドのオプションを見ていきましょう。

-a(all)

全てのシステム情報を表示する。

envader@172-19-1-2:~$ uname -a
Linux 172-19-1-2 5.4.120+ #1 SMP Fri Jul 23 10:06:55 PDT 2021 x86_64 GNU/Linux

まとまって表示できるのは嬉しい気がするけど、実際何が書かれているのか理解しづらい。
このallで表示した内容を細かく切って表示していくのが次から実行していくオプションになるのでしょう。

-v(kernel-version)

カーネルのバージョンを表示する。

envader@172-19-1-2:~$ uname -v
#1 SMP Fri Jul 23 10:06:55 PDT 2021

カーネルが#1SMPでFri Jul 23 10:06:55 PDT 2021にコンパイルされたもの、と読むらしい。

-r(kernel-release)

カーネルのリリース情報を表示する。

envader@172-19-1-2:~$ uname -r
5.4.120+

カーネルは5.4.120+としてリリースされたもの、と読むらしい。

-p(processor)

コンピューターのCPU情報を表示する。

envader@172-19-1-2:~$ uname -p
unknown

Envaderでは環境の理由でかどうか分かりませんが、unknownと表示されたので、自分のpcで確認してみる。

) uname -p
i386

自分のPCには、i386系のCPUが搭載されている事が分かりました。
Intelのx86(当時16bit)を32bitに拡張したCPUとのこと。
ちなみにiはインテルのiみたいで、386系は若干古いやつみたい。
少しショックです。。。。

-m(machine)

コンピューターのマシンタイプの情報を表示する。

envader@172-19-1-2:~$ uname -m
x86_64

x86・x64はCPUのbit数を表していて、
x86→32bit
x64→64bit
という意味になるみたい。
こちらの記事が分かりやすかったです。
x86_64 とは?

-n(nodename)

ホスト名を表示する。

envader@172-19-1-2:~$ uname -n
172-19-1-2

@の次からホスト名なので、上記の表示になるということか。

catコマンドでOSのバージョンを確認する。

OSのバージョンを確認するには、catコマンドを使い、/etc/os-releaseを表示させます。

envader@172-19-1-2:~$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 9 (stretch)"
NAME="Debian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
VERSION_CODENAME=stretch
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

Debianだと、/etc/debian_versionでバージョン情報を表示できるみたいです。

envader@172-19-1-2:~$ cat /etc/debian_version
9.13

まとめ

今回は、OSのシステム情報と、OSのバージョンを確認する方法を学びました。

正直、unameコマンドとetc/os-releaseでは同じことをしていると認識していたのですが、unameではシステム情報を表示させて、etc/os-releaseではOSのバージョンを確認していて、それぞれ役割が違うんだなと認識しました。

最後まで読んでいただき、ありがとうございました。

参考にさせていただいた記事一覧

パソコンのOSとは?OSの種類と自分のパソコンのOSの調べ方

OS 【Operating System】 オペレーティングシステム / 基本ソフト

ITスキルとアプリケーション

unameコマンドの使い方:オプション含めてまとめました 【Linuxコマンド集】

i386って何?

CPUのアーキテクチャの違いまとめ(x86/x64/x86_64/AMD64/i386/i686とはなんなのか?)

x86_64 とは?

Linuxのバージョンの確認方法

Linuxディストリビューションの種類やバージョンを確認する

Linux OSのバージョン確認方法まとめ