fdisk (8) sagt:
Das Gerät ist normalerweise / dev / sda, / dev / sdb oder so. Ein Gerätename bezieht sich auf die gesamte Festplatte. Alte Systeme ohne libata (eine Bibliothek, die im Linux-Kernel zur Unterstützung von ATA-Host-Controllern und -Geräten verwendet wird) unterscheiden IDE- und SCSI-Festplatten. In solchen Fällen lautet der Gerätename / dev / hd * (IDE) oder / dev / sd * (SCSI).
Die Partition ist ein Gerätename, gefolgt von einer Partitionsnummer. Beispielsweise ist / dev / sda1 die erste Partition auf der ersten Festplatte im System. Siehe auch Dokumentation zum Linux-Kernel (die Datei Documentation / devices.txt ).
Auf dieser Grundlage verstehe ich, dass im Kontext von Linux eine Zeichenfolge wie /dev/hda
oder /dev/sda
ein "Gerätename" ist. Ansonsten macht der zweite Satz, den ich oben hervorgehoben habe, keinen Sinn: Stattdessen würde er sagen: " Zum Beispiel ist sda1 die erste Partition auf der ersten Festplatte im System. "
Diese Ansicht wird durch das Linux Partition HOWTO bestätigt :
Üblicherweise erhalten IDE-Laufwerke die Gerätenamen / dev / hda bis / dev / hdd .
Gibt es einen technisch korrekten (und vorzugsweise eindeutigen und prägnanten) englischen Begriff für die Teilzeichenfolge hda
oder sda
für einen solchen Gerätenamen? Wäre es in diesem Fall beispielsweise richtig, sda
die Laufwerke aufzurufen :
- "kurzer Name"; oder
- "unqualifizierter Gerätename"; oder
- etwas anderes?
(Ich frage nicht nach Umgangssprachen, die technisch falsch sind, auch wenn sie allgemein verwendet werden.)
quelle
dkinfo
das nicht Teil von Linux oder GNU / Linux ist (aber stattdessen Teil von SunOS ist ), ist es leider nicht im Umfang.Antworten:
sda
ist das Gerät Name ./dev/sda
ist das Gerät Pfad .Denken Sie an
/sbin/fdisk
,fdisk
ist der Dateiname , während/sbin/fdisk
der Dateipfad .quelle
/dev/sda
ist der Pfad zum Blockgerät, aber der tatsächliche Gerätepfad würde ungefähr so lauten/devices/pci0000:00/0000:00:17.0/ata2/host1/target1:0:0/1:0:0:0/block/sda
mount
auch einen Gerätetreiber an,--bind
einen Teil des Arbeitsspeichers (nicht ein Volume) als Dateisystem abzubilden, kann ein Teil des Dateibaums als Teilbaum usw. Außerdem kann das Mounten einer RAID- "Festplatte" nützlich und / oder bizarr sein Dinge mit mehreren Volumes, um auf Teile davon zuzugreifen oder darauf zuzugreifen. Kurz gesagt,mount
kann viele Dinge tun, aber das typischste ist, dass ein Dateisystem irgendwo in der Dateibaumstruktur angezeigt wird.Der
sda
Teil von/dev/sda
kann abhängig von Ihrer Sichtweise verschiedene Dinge darstellen:Dateiname
Im Allgemeinen ist es der Name einer Datei, die, wenn es sich um eine Festplatte handelt, ein Blockgerät ist, daher ein Gerätename
Als root:
Disk - Name
sda
ist die Zeichenfolge , die einen Namen auf einen Datenträger (diferent als Partitionen sda1, sda2, sdX, etc.) gibt. Es wird normalerweise von udev basierend auf den angewendeten Geräteregeln generiert.Verzeichnispfad
sda
ist der Basisname des Pfads/dev/sda
Beschränkt auf die Interpretation in Bezug auf Datenträgernamen:
In alten Zeiten: sda war der Gerätename der SCSI-Festplatte a .
Da die gleiche Bibliothek auf SATA-Laufwerke erweitert wurde, sollte sie jetzt wohl heißen:
Oder einfach:
quelle
Es handelt sich um den Namen des vom Kernel generierten Blockdatenträgers / Partitionsgeräts :
sda
ist ein vom Kernel generierter Plattenname . Kernel - Treiber (einschließlich SCSI - Stapel, der passiert ist sehr bequem zu bedienen zu sein für SATA - Festplatten) filldisk_name
Bereich dergendisk
Struktur (dh für SCSI: drivers / scsi / sd.c # L3338 ) erzeugensda
Namen.Dieser Name wird später verwendet , ein Name zu sein , der in Blockvorrichtung entspricht
/dev
,/sys
und/proc/{partitions,diskstats}
. Im Handbuch für procfs wird der Partitionsname ( proc (5) ) und in der Dokumentation zur Datenträgerstatistik der Gerätename ( iostats.txt ) genannt.quelle
sda
und bin/dev/sda
austauschbar, und beide werden als Gerätename bezeichnet. Ich denke , das ist , weil (in einem normalen System) Sie montierendevfs
auf/dev
, so Namen wiesda
wiederum in Pfade wie/dev/sda
(die man auch einen Namen nennen könnte).In Linux / Unix ist alles eine Datei. Ein Gerät wird als Datei dargestellt. Alle Gerätetypdateien befinden sich am Speicherort / dev. So sda ist ein Art spezielles Dateiblockgerät.
Hinweis : Dabei ist x eine Variable. x steht für die Position der Festplatte.
Jetzt in sd *
quelle
sd*
Namen mit einigen Treibern oder immer mit modernen Kerneln? Ich vergesse, ich habe keine aktiven Maschinen mit PATA und einem modernen Kernel./dev/sda
,sda
eine Datei ist, und ich verstehe auch, was die Datei darstellt. Meine Frage war, wie die Teilzeichenfolge und Zeichenfolgen aufgerufen werden sollensda
wie es, wenn mündlich auf sie bezogensdX
als auch Festplattenlaufwerke, Namen erhalten und sich auch mit SATA und SUB vermischen.Es scheint mindestens zwei gültige Antworten zu geben
sda
kann korrekt als "Basisname" für das Laufwerk bezeichnet werden.sda
kann auch korrekt als "Name der Kernel-Festplatte" für das Laufwerk bezeichnet werden.Wie sind Sie zu diesem Schluss gekommen?
Nach dem Ausschlussverfahren für jeden der plausiblen Kandidaten:
Dies kann nicht der richtige Begriff sein. Wie in der ursprünglichen Frage erwähnt , bezieht es sich auf den vollständig qualifizierten Namen (z. B.
/dev/sda
) und nicht auf das endgültige Fragment (zsda
. B. ).Belege dafür finden sich in weiteren Quellen, z. B. auf Seite 68 des Definitiven Handbuchs zu SUSE Linux Enterprise Server 12 :
und S.94 der Linux Bible 2008 Edition :
Dies kann auch nicht der richtige Begriff sein, da er in der technischen Dokumentation als Synonym für den vollständig qualifizierten Namen (z. B.
/dev/sda
) und nicht nur für das endgültige Fragment (z. B.sda
) verwendet wird:BASISNAME (1) :
DIRNAME (1) :
Dies kann auch nicht der richtige Begriff sein, da er in der technischen Dokumentation als Synonym für den vollständig qualifizierten Namen (z. B.
/dev/sda
) und nicht nur für das endgültige Fragment (z. B.sda
) verwendet wird:GNU Coreutils: Aufruf des Basisnamens :
GNU Coreutils: Aufruf von dirname :
Dies kann auch nicht der richtige Begriff sein. Ich kann keine technische Dokumentation finden, die auf den letzten Teil eines Gerätenamens als "Kurzname" oder "Kurzname" verweist. Diese Begriffe scheinen verwendet werden, in Linux oder GNU, nur im Zusammenhang mit entweder VFAT Mount - Optionen , oder Host - Namen auf Netzwerke .
Dieser Begriff scheint eine gültige Antwort zu sein, basierend auf S.149 der Installation von Red Hat Linux 7 :
und die Kursunterlagen für CST8207 (GNU / Linux - Betriebssysteme) in Algonquin College - :
und S.1456 eines praktischen Leitfadens zu Red Hat Linux 8 :
Glücklicherweise hat GNU / Linux auch einen
basename
Befehl, mit dem der Basisname abgerufen werden kann:Dieser Begriff scheint auch eine gültige Antwort zu sein, da S.100 des Linux-Kernels in aller Kürze :
Im Übrigen scheint "Name der Kernel-Festplatte" auch im Zusammenhang mit Solaris eine gültige Terminologie zu sein :
quelle
/dev/sda
die von: BASENAME (1) als "Dateinamen" bezeichnet werden; DIRNAME (1) als "Dateiname"; die GNU Coreutils-Dokumente als "Namen"; & von FDISK (8) und TLDP als "Gerätenamen". Keiner dieser Begriffe kann also jemals eindeutig verwendet werden, um sich nur auf die letzte durch Schrägstriche getrennte Komponente der Zeichenfolge zu beziehen. Ergo, wenn wir einen Begriff wollen, der verwendet werden kann, um sich eindeutig auf diesen Teil der Zeichenkette zu beziehen, dann müssen wir etwas anderes verwenden. Die Quellen in meiner Antwort zusammengenommen sagen, dass der Teil vor dem letzten Schrägstrich der "Dirname" und der Teil nach dem "Basename" ist. Voilà .sda
und nicht akzeptiert wurde/dev/sda
, können Sie es als "Basisname" bezeichnen. Oder Sie können in dieser Dokumentation einfach "name" vs. "path" verwenden und ein Beispiel angeben, wie es die meisten Dokumentationen tun. Ich glaube nicht, dass es einen allgemein vereinbarten Begriff außer "Name" gibt, obwohl einige Dokumente "Name" verwenden, um den vollständigen Pfad einzuschließen."Alles ist eine Datei" - ist also nicht
sda
einfach der Dateiname,/dev
das Verzeichnis (und die leere Zeichenfolge die Erweiterung) des Geräts, das über den vollständigen Pfad verfügbar gemacht/dev/sda
wird, die erste Nicht-IDE-Festplatte? Wiepasswd
ist der Dateiname und/etc
das Verzeichnis der Datei zugänglich, da/etc/passwd
diese gemäß Konvention (ed) Passwortdaten enthalten?quelle