Linux にはブロック デバイス以外にどのようなデバイスがありますか?

青灯夜游
リリース: 2023-04-17 10:29:44
オリジナル
1650 人が閲覧しました

Linux には、ブロック デバイスに加えて、キャラクター デバイスとネットワーク デバイスもあります。キャラクタ デバイスは、バイト ストリームのようにアクセスできるデバイスです。キャラクタ デバイスに読み取りまたは書き込みリクエストが発行されると、対応する IO 操作が即座に発生します。一方、ネットワーク デバイスは Linux ネットワーク サブシステムによって駆動され、データ パケットの送受信: ネットワーク デバイスはストリーム デバイスを指向しているのではなく、Linux システム ファイル システムにノードを持ちません。

Linux にはブロック デバイス以外にどのようなデバイスがありますか?

#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。

Linux には、ブロック デバイスに加えて、キャラクター デバイスとネットワーク デバイスもあります。

Linux システムのデバイスは、キャラクター デバイス、ブロック デバイス、ネットワーク デバイスの 3 つのカテゴリに分類できます。

(1) キャラクタデバイス

キャラクタデバイスは、バイトストリームのようにアクセスできるデバイスで、キャラクタデバイスに対して読み取りまたは書き込みリクエストが発行されると、対応するIO操作が発生します。すぐに。 Linux システムの多くのデバイスは、キャラクター端末、シリアル ポート、キーボード、マウスなどのキャラクター デバイスです。組み込み Linux 開発で最も一般的なのは、キャラクター デバイスとドライバーです。

(2) ブロックデバイス

ブロックデバイスは、Linux システムで TO 操作を行う際にブロック単位でアクセスする必要があるデバイスで、ファイルシステムをインストールできます。ブロック デバイス ドライバーはシステム メモリの一部をバッファとして使用するため、ブロック デバイスへの読み取りおよび書き込みアクセスを発行しても、必ずしも直ちにハードウェア I/O 操作が行われるわけではありません。 Linux システムの一般的なブロック デバイスには、ハードディスク、フロッピー ドライブなどが含まれます。

(3) ネットワーク機器

ネットワーク機器は、ネットワーク カードなどのハードウェア デバイス、またはループバック デバイスなどの純粋なソフトウェア デバイスのいずれかです。ネットワーク デバイスは Linux ネットワーク サブシステムによって駆動され、ストリーム デバイスではなくデータ パケットの送受信を担当するため、ネットワーク デバイスは Linux システム ファイル システムにノードを持ちません。ネットワーク デバイスへのアクセスは、オープン/クローズや読み取り/書き込みなどの通常のファイル操作ではなく、ソケット呼び出しを通じて生成されます。

Linux にはブロック デバイス以外にどのようなデバイスがありますか?

#Linux ブロック デバイス情報の表示

Linux では、lsblk コマンドを使用してブロックを表示できます。デバイス情報。

英語の lsblk コマンドは「list block」です。これは、使用可能なすべてのブロック デバイスに関する情報を一覧表示し、それらの間の依存関係も表示するために使用されますが、RAM ディスク情報は一覧表示されません。ブロック デバイスには、ハードディスク、フラッシュ ドライブ、CD-ROM などが含まれます。 lsblk コマンドは util-linux-ng パッケージに含まれていますが、このパッケージは現在 util-linux に名前変更されています。

lsblk コマンドにはいくつかのオプションがあります。

デフォルト オプション

lsblk コマンドは、デフォルトでツリー ビューにすべてのブロック デバイスをリストします。ターミナルを開いて次のコマンドを入力します:

$ lsblk
ログイン後にコピー
出力は次のとおりです:

lsblk default
lsblk default
ログイン後にコピー
7 つの列名は次のとおりです:

NAME : 这是块设备名。
MAJ:MIN : 本栏显示主要和次要设备号。
RM : 本栏显示设备是否可移动设备。注意,在本例中设备sdb和sr0的RM值等于1,这说明他们是可移动设备。
SIZE : 本栏列出设备的容量大小信息。例如298.1G表明该设备大小为298.1GB,而1K表明该设备大小为1KB。
RO : 该项表明设备是否为只读。在本案例中,所有设备的RO值为0,表明他们不是只读的。
TYPE :本栏显示块设备是否是磁盘或磁盘上的一个分区。在本例中,sda和sdb是磁盘,而sr0是只读存储(rom)。(LCTT译注,此处sr0的RO项没有标记为1,可能存在一些错误?)
MOUNTPOINT : 本栏指出设备挂载的挂载点。
ログイン後にコピー

すべてのデバイスをリストします:

デフォルトのオプションでは、空のデバイスがすべてリストされるわけではありません。これらの空のデバイスを表示するには、次のコマンドを使用します。

$ lsblk -a
ログイン後にコピー

このオプションでは、空のデバイスを含むすべてのデバイスが一覧表示されます。

lsblk bytes sda

lsblk bytes sda

デバイスの権限と所有者のリスト:

lsblk コマンドも使用できます所有権のリスト特定のデバイスのグループとモードも一覧表示できます。この情報は、次のコマンドで取得できます。

$ lsblk -m
lsblk permissions
lsblk permissions
ログイン後にコピー

指定したデバイスの一覧を表示します。

このコマンドは、指定したデバイスの情報のみを取得することもできます。これは、lsblk コマンドに指定されたオプションの後にデバイス名を指定することによって実現されます。たとえば、ディスク ドライブのサイズをバイト単位で知りたい場合は、次のコマンドを実行して確認できます:

$ lsblk -b /dev/sda
ログイン後にコピー

または、次のコマンドも同等です:

$ lsblk --bytes /dev/sda
ログイン後にコピー

リスト形式でヘッドなしデバイスをリストします:

いくつかのオプションを組み合わせて特定の出力を取得することもできます。たとえば、デフォルトのツリー形式ではなくリスト形式でデバイスを一覧表示したい場合があります。別の列名のヘッダーを削除することもできます。次のコマンドで 2 つの異なるオプションを組み合わせて、目的の出力を取得できます。

$ lsblk -nl
ログイン後にコピー

あるいは、以下の長いオプションを使用しても、同じ出力が得られます。

$ lsblk --noheadings --list
lsblk no header and list
lsblk no header and list
ログイン後にコピー

SCSI デバイスのリスト:

SCSI デバイスのリストを取得するには、-S オプションのみを使用できます。このオプションは大文字の S であり、依存関係を逆の順序で出力する -s オプションと混同しないでください。

$ lsblk -S
ログイン後にコピー

lsblk は SCSI デバイスをリストし、-s は逆順オプション (LCTT アノテーション: 表示するデバイスとパーティションの構成関係を逆にする) で、次の出力が得られます。コマンドを入力します:

$ lsblk -s
ログイン後にコピー

または

$ lsblk --inverse
ログイン後にコピー

lsblk を使用してブロック デバイスに関する詳細情報を取得できます。自分で表示してみてください。

関連する推奨事項 :Linuxビデオチュートリアル>>

以上がLinux にはブロック デバイス以外にどのようなデバイスがありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!