Linuxの/dev/sdaとは何ですか?
1. 概要
多くの場合、Linuxターミナルのコマンド出力には、ディレクトリ / dev /sdaへの参照が含まれている場合があります。 このディレクトリは何を表していますか?
このチュートリアルでは、 / dev /sdaが何を表すかを学習します。 最初に/dev ディレクトリを確認し、次に / dev / sdaを確認します。最後に、に関する詳細情報を取得するために使用できるコマンドを確認します。 / dev /sda。
2. /devディレクトリとそのコンテンツ
Linuxは伝統的に、すべてを読み取りまたは書き込み用のファイルまたはディレクトリとして扱います。 したがって、 / dev / sda、を見ると、それが絶対パスであると見なすことができます。 この道が重要なのはなぜですか、そしてそれは私たちをどこに導くのですか?
/ dev は、すべてのデバイスファイルを含むルートフォルダー内のディレクトリです。 システムはインストール中にこれらのファイルを作成し、ブートプロセス中にそれらが利用可能である必要があります。 / dev のコンテンツをリストすると(つまり、 ls コマンドを使用して)、リストされているファイルのほとんどがブロックまたはキャラクターデバイスであることがわかります。 。 ただし、これら2つとは別に、他のタイプのデバイスファイルも /devディレクトリに存在します。
/ dev ディレクトリ内のデバイスファイルを識別するためのより詳細で直接的な方法は、デバイスのメジャー番号とマイナー番号を使用することです。 たとえば、ディスクデバイスのメジャー番号は8であり、SCSIブロックデバイスとして割り当てられます。 SCSIサブシステムはすべてのPATAおよびSATAハードドライブを管理することに注意してください。 これは、コードの品質が低いために、古いATAサブシステムを保守できないためです。 その結果、以前はhd[az]と呼ばれていたハードドライブがsd[az]と呼ばれるようになりました。現在、sd[az]がハードを指す最もよく使用される方法です。ディスク。ただし、一部のディストリビューションはまだ hd[az]を使用しています。
SCSI は、マイクロプロセッサ制御のスマートバスです。 これにより、最大15台の周辺機器をコンピューターに追加できます。 これらのデバイスには、ハードドライブ、スキャナー、USB、プリンター、およびその他の多くのデバイスが含まれます。 small computer systeminterfaceの略です。
2.1. / dev / sda
/ dev ディレクトリを確認し、その内容の一部について説明したので、 /devのブロックデバイスである/dev / sda、について説明します。 ]ディレクトリ。 まず、次のコマンドを実行して、 /devディレクトリにある/dev /sdaデバイスファイルの数を調べます。
$ ls -l /dev | grep "sda"
brw-rw---- 1 root disk 8, 0 Apr 29 22:33 sda
brw-rw---- 1 root disk 8, 1 Apr 29 22:33 sda1
brw-rw---- 1 root disk 8, 2 Apr 29 22:33 sda2
brw-rw---- 1 root disk 8, 3 Apr 29 22:33 sda3
brw-rw---- 1 root disk 8, 4 Apr 29 22:33 sda4
brw-rw---- 1 root disk 8, 5 Apr 29 22:33 sda5
brw-rw---- 1 root disk 8, 6 Apr 29 22:33 sda6
示されている出力から、 grep を使用して結果をフィルタリングし、sdaのみを含む結果を取得します。 上記の例の最初の行について説明します。
brw-rw---- 1 root disk 8, 0 Apr 29 22:33 sda
以前、 / dev /sd[az]はハードドライブの略であることがわかりました。 インストール中に、 Linuxは最初に見つかったハードディスクを取得し、それに値sdaを割り当てます。 見つかったディスクの数に応じて、アルファベット順に名前が付けられます。 次の行では、 sda[1-15]に番号が追加されています。 たとえば、2行目と3行目には、次のようなものがあります。
brw-rw---- 1 root disk 8, 1 Apr 29 22:33 sda1
brw-rw---- 1 root disk 8, 2 Apr 29 22:33 sda2
ハードディスクに複数のパーティションがある場合、システムはsda1からsda15までの番号を連続して追加しました。 1台のハードディスクには、最大15個のパーティションしかありません。
3. / dev /sdaに関する詳細情報の一覧表示
/ dev / sda がハードディスクを参照していることを確認したので、次に、ハードディスクとその中のパーティションに関する詳細情報を取得するために使用できるコマンドを見てみましょう。 最初に使用するコマンドはfdiskです。
$ sudo fdisk -l
Disk /dev/sda: 465.76 GiB, 500107862016 bytes, 976773168 sectors
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 104447 102400 50M 7 HPFS/NTFS/exFAT
/dev/sda2 104448 484152681 484048234 230.8G 7 HPFS/NTFS/exFAT
/dev/sda3 484155392 485249023 1093632 534M 27 Hidden NTFS WinRE
/dev/sda4 485251070 976771071 491520002 234.4G 5 Extended
/dev/sda5 485251072 974772223 489521152 233.4G 83 Linux
/dev/sda6 974774272 976771071 1996800 975M 82 Linux swap / Solaris
このコマンドは、ハードディスクの容量、その中のパーティション、およびそれぞれのサイズを表示します。 次に、lsblkを見てみましょう。
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 50M 0 part
├─sda2 8:2 0 230.8G 0 part
├─sda3 8:3 0 534M 0 part
├─sda4 8:4 0 1K 0 part
├─sda5 8:5 0 233.4G 0 part /
└─sda6 8:6 0 975M 0 part [SWAP]
sr0 11:0 1 1024M 0 rom
このコマンドは、RAMを除く、システムに接続されているすべての使用可能なブロックデバイスを表示します。 出力をツリーのような構造で表示します。 以下の例では、外部ストレージデバイスを追加しました。 fdiskとlsblk、の両方をそれぞれ実行したときの出力を見てみましょう。
$ sudo fdisk -l
Disk /dev/sdb: 115.32 GiB, 123828436992 bytes, 241852416 sectors
Device Start End Sectors Size Type
/dev/sdb1 2048 241852382 241850335 115.3G Microsoft basic data
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sdb 8:16 1 115.3G 0 disk
└─sdb1 8:17 1 115.3G 0 part /media/gt3/BK
sr0 11:0 1 1024M 0 rom
最初の例では、プライマリハードディスク / dev / sda、があり、次のパーティションがありました: sda1、sda2、sda3、sda4、sda5、およびsda6。たとえば、外部ストレージデバイスを追加しました。これは、 / dev / sdb、として表示されるフラッシュドライブであり、単一のパーティション / dev/sdb1。のみがあります。
4. 結論
この記事では、 / dev/sdaが使用しているコンピューターのハードディスクであることを学びました。 また、 sd [az] が、Linuxのディスクで現在使用されている命名形式であることがわかりました。 最後に、、 / dev / sda [1-15] は、ハードディスク内のパーティションを示しています。 したがって、システムに3つのディスクがある場合、ディスクは / dev / sda 、 / dev / sdb 、最後に/devと表示されます。 /sdc。