web-dev-qa-db-ja.com

ドライブ名? 「/ dev / sda」の「sda」部分の正しい用語は何ですか?

fdisk(8) は言う:

デバイスは通常/ dev/sda、/ dev/sdbなどです。デバイス名はディスク全体を指します。 libata(ATAホストコントローラーとデバイスをサポートするためにLinuxカーネル内で使用されるライブラリ)のない古いシステムでは、IDEとSCSIディスクが異なります。このような場合、デバイス名は/ dev/hdになります。 *(IDE)または/ dev/sd *(SCSI)。

パーティションは、デバイス名とそれに続くパーティション番号です。たとえば、/ dev/sda1はシステムの最初のハードディスクの最初のパーティションです。Linuxカーネルのドキュメント( Documentation/devices.txt ファイル)も参照してください。

これに基づいて、私はLinuxのコンテキストでは/dev/hdaまたは/dev/sdaは「デバイス名」です。そうでない場合、上記で強調した2番目の文は意味がありません。代わりに、「たとえば、sda1はシステムの最初のハードディスク。 "

このビューは Linux Partition HOWTO によって裏付けられています。

慣例により、IDEドライブにはデバイス名/ dev/hdaから/ dev/hddが与えられます)。

そのようなデバイス名の部分文字列hdaまたはsdaの技術的に正しい(そしてできれば、明確で簡潔な)英語の用語はありますか?たとえば、この場合はドライブのsdaを呼び出すのが正しいでしょう。

  • 「略称」;または
  • 「非修飾デバイス名」;または
  • 他に何か?

(たとえそれらが一般的に使用されているとしても、技術的に不正確な口語表現は求めていません。)

16
sampablokuper

少なくとも2つの有効な回答があるようです

  1. sdaは、ドライブの "basename"と正しく呼び出すことができます。

  2. sdaは、ドライブの "カーネルディスク名"と正しく呼び出すこともできます。

どのようにしてこの結論に達しましたか?

もっともらしい候補のそれぞれについての除去のプロセスによって:

  • "デバイス名"

これは正しい用語にはなりません。 元の質問 で述べたように、これは完全修飾名(たとえば/dev/sda)を指し、最終的なフラグメント(sdaなど)を指します。

p.68 of The Definitive Guide to SUSE Linux Enterprise Server 12などの裏付けとなる証拠が存在します:

…デバイス名に基づくマウント(/dev/sdb1など)を使用することもできます…

および p.94 of The Linux Bible 2008 Edition

[デバイス]タブをクリックして、デバイス名(/dev/cdromなど)を入力します…

  • "filename"または "file name"

技術ドキュメントでは、完全修飾名(例:/dev/sda)の同義語として使用されているため、これは正しい用語ではなく、最終的なフラグメント(例:sda)ではありません。

BASENAME(1)

basename-ファイル名からディレクトリとサフィックスを取り除く

DIRNAME(1)

dirname-ファイル名から最後のコンポーネントを取り除く

  • "名前"

技術ドキュメントでは、完全修飾名(例:/dev/sda)の同義語として使用されているため、これは正しい用語ではなく、最終的なフラグメント(例:sda)ではありません。

GNU Coreutils:basename invocation

basenameは、nameから先頭のディレクトリコンポーネントを削除します。

GNU Coreutils:dirname invocation

dirnameは、各nameのスラッシュで区切られた最後のコンポーネントを除くすべてを出力します。

  • "shortname"または "short name"

これも正しい用語ではありません。デバイス名の最後の部分を「ショートネーム」または「ショートネーム」と呼ぶ技術文書は見つかりません。これらの用語は、LinuxまたはGNUでは、 VFATマウントオプション または ホスト名前 on ネットワーク のコンテキストでのみ使用されているようです。

  • "basename"

この用語はRed Hat Linux 7のインストールp.149 に基づいて有効な回答であると思われます。

パーティションを作成する予定のディスクのベース名がリストされていないことを確認してください(これは、追加したドライブの場合、hdbです)。

コースノート のCST8207(GNU/Linuxオペレーティングシステム)- アルゴンキンカレッジ

ベース名の定義:パス名のベース名は、右端のスラッシュの右側にある、右端の名前コンポーネントです。

および p.1456 of Red Hat Linux 8の実用ガイド

basename:パス名とは対照的に、ファイルを含むディレクトリのいずれにも言及しない(したがって、スラッシュ[/]を含まない)ファイルの名前。たとえば、hosts/etc/hostsのベース名です。

幸いにも、GNU/Linuxには、ベース名を取得するために使用できるbasenameコマンドもあります。

$ basename '/dev/sda'
sda
  • "カーネルディスク名"

p.1 of Linux Kernel in a Nutshellのため、この用語も有効な回答のようです。

/dev/<diskname>

<diskname>で指定されたカーネルディスク名をルートディスクとして使用します。

ちなみに、「カーネルディスク名」も 表示Solaris の文脈では有効な用語です。

このバージョンのiostatコマンドの出力には、論理カーネルディスク名ではなく物理デバイスパス(つまり、c0t0d0ではなくsd0)によって、ゼロ以外のアクティビティを持つディスクデバイスのみの拡張統計が表示されます。 。

1
sampablokuper

sdaはデバイスnameです。 /dev/sdaはデバイスpathです。

のことを考える /sbin/fdiskfdiskはファイルnameですが、/sbin/fdiskはファイルpathです。

25
user207673

/dev/sdasdaの部分は、見方によってはいくつかのことを表しています。

  1. ファイル名
    通常、これはファイルの名前であり、ディスクの場合はblockデバイス、つまりデバイス名です。

    ルートとして:

    $ ls -la /dev/sd*
    brw-rw---- 1 root disk 8, 0 Sep 11 22:01 /dev/sda
    brw-rw---- 1 root disk 8, 1 Sep 11 22:02 /dev/sda1
    brw-rw---- 1 root disk 8, 2 Sep 11 22:01 /dev/sda2
    
  2. ディスク名
    sdaは、ディスクに名前を付ける文字列です(パーティションsda1、sda2、sdXなどとは異なります)。これは通常、適用されたデバイスルールに基づいてudevによって生成されます。

  3. ディレクトリパス
    sdaはパスのベース名/dev/sda


ディスク名に関連する解釈に限定:

昔は、sdaはSCSIディスクaのデバイス名でした。

同じライブラリがSATAドライブに拡張されたので、次のように呼び出す必要があると思います。

device name: SATA/SCSI/SAS disk a

または単に:

device name: first SATA/SCSI/SAS disk
6
Isaac

これはカーネルが生成したブロックディスク/パーティションデバイス名です

sdaは、カーネルによって生成されたディスク名です。カーネルドライバー(SATAディスクで使用すると便利なSCSIスタックを含む)は、gendisk構造のdisk_nameフィールドに入力します(つまり、SCSIの場合: drivers/scsi/sd.c)。 #L3338sda名を生成します。

この名前は、後で/dev/sys/proc/{partitions,diskstats}の対応するブロックデバイスの名前として使用されます。ただし、procfsのマニュアルではパーティション名proc(5) )であり、ディスク統計のドキュメントではこれをデバイス名と呼んでいますiostats.txt )。

3
myaut

Linux/Unixでは、すべてがファイルです。デバイスはファイルとして表されます。/devの場所にあるすべてのデバイスタイプファイル。そう sda ブロックデバイスタイプのスペシャルファイルです。

hd(x) - IDE
sd(x) - SATA,SSD,ISCI,SAS

注意:ここで、xは変数です。 xはハードディスクの位置を表します。

if x = a for IDE disk means hda represents primary master disk
   x = b for IDE disk means hdb represents primary slave disk

今SDで*

if x = a for SATA/SSD/ISCI/SAS sda represents first disk
   x = b fo SATA/SSD/ISCI/SAS sdb represents second disk
1
Rakib

「すべてがファイルです」-sdaは単なるファイル名ではありません/devフルパスで使用できるようにしたデバイスのディレクトリ(および空の文字列、拡張子)/dev/sda、慣例により、最初の非IDEディスクはどれですか?ちょうどpasswdはファイル名であり、/etcとしてアクセス可能なファイルのディレクトリ/etc/passwd慣例により、パスワードデータが含まれていますか?

0