Infra Engineer

デバイスファイルについて
2022.01.06
Lv1

デバイスファイルについて

本記事の対象者

LPIC level1習得を目指す初学者の方
コマンドの基本的な用途について、要点を絞って解説します。


今回の内容

今回は、デバイスファイルについて解説します。

デバイスファイルとは
デバイスファイルの種類
まとめ

デバイスファイルとは

まず、デバイスとはハードディスクやUSBメモリ、プリンターなどコンピュータに接続して使用する機器のことです。
そして、「デバイスファイル」とは物理的なそれら(仮想的であることもある)を、「ファイル」として抽象化したものです。
デバイスを動かすためのドライバと、デバイスを動かしたいユーザーの仲介となるものとも言えます。
デバイスファイルのおかげで、ファイルシステムを介して、ユーザはデバイスの操作をすることが可能になります。
デバイスファイルは基本的に「/dev」配下に作成されます。


デバイスファイルの種類

デバイスファイルには主に以下の2種類があります。

①ブロックデバイスファイル

ブロック単位でデータ転送を行うデバイスのファイル。
ハードディスク、USBメモリなど。

②キャラクタデバイスファイル

文字単位でデータ転送を行うデバイスのファイル。
プリンターなど。

例)
デバイスファイルの種類
[root@localhost ~]#ls -l /dev/sda   # ブロックデバイスファイル
brw-rw----. 1 root disk 8, 0  12月 26 20:45 /dev/sda
[root@localhost ~]# ls -l /dev/null  # キャラクタデバイスファイル
crw-rw-rw-. 1 root root 1, 4  12月 26 20:45 /dev/null

 

ブロックデバイスファイルは行頭が「b」、キャラクタデバイスファイルは行頭が「c」で表されます。
「8, 0」「1, 4」などの数字は、「メジャー番号」「マイナー番号」と呼ばれるもので、この番号が対応するドライバを決定しています。

 


まとめ

今回は、デバイスファイルについて解説しました。
LPICにおいて、この記事で解説したようなメジャー番号やマイナー番号の内容は基本的には出題されません。

デバイスファイルについて理解したら、「パーティション」や「マウント」について学習しましょう。

最後に確認問題で今回学習した内容を確かめてください。


確認問題

問題1

デバイスファイルについて、正しくないものはどれか。

A) /dev配下に作成する必要がある。
B) メジャー番号、マイナー番号で対応するドライバを管理している。
C) ブロックデバイスファイルとキャラクタデバイスファイルが存在する。
D) 「ls -l」でデバイスファイルの種類を判別することができる。

解答・解説
答え:A

デバイスファイルは慣例的に「/dev」配下に作成されますが、ドライバとの対応情報を保持しているのはあくまでもメジャー番号とマイナー番号であり、ファイルがどこにあるかは関係ありません。よって、基本的にどんな場所にも作成することが可能です。