fdisk (8) говорит:
Обычно это устройства / dev / sda, / dev / sdb или около того. Имя устройства относится ко всему диску. Старые системы без libata (библиотека, используемая в ядре Linux для поддержки хост-контроллеров и устройств ATA) делают разницу между дисками IDE и SCSI. В таких случаях имя устройства будет / dev / hd * (IDE) или / dev / sd * (SCSI).
Раздел - это имя устройства, за которым следует номер раздела. Например, / dev / sda1 - это первый раздел на первом жестком диске в системе. См. Также документацию по ядру Linux ( файл Documentation / devices.txt ).
Исходя из этого, я понимаю, что в контексте Linux строка похожа /dev/hda
или /dev/sda
является «именем устройства». В противном случае второе предложение, которое я подчеркнул выше, не имеет смысла: вместо этого оно говорит: « Например, sda1 - это первый раздел на первом жестком диске в системе ».
Это мнение подтверждается разделом Linux HOWTO :
По соглашению, дискам IDE будут присвоены имена устройств от / dev / hda до / dev / hdd .
Существует ли технически правильный (и, предпочтительно, однозначный и лаконичный) английский термин для подстроки hda
или sda
такого имени устройства? Например, было бы правильно в этом случае вызвать sda
диск:
- "короткое имя"; или
- «неполное имя устройства»; или
- что-то другое?
(Я не прошу разговорные выражения, которые технически некорректны, даже если они используются в общем.)
источник
dkinfo
который не является частью Linux или GNU / Linux (но вместо этого является частью SunOS ), выходит за рамки, извините.Ответы:
sda
это имя устройства ./dev/sda
это устройство путь .Подумайте
/sbin/fdisk
,fdisk
это имя файла , а путь/sbin/fdisk
к файлу .источник
/dev/sda
это путь к блочному устройству, но фактический путь к устройству будет примерно таким/devices/pci0000:00/0000:00:17.0/ata2/host1/target1:0:0/1:0:0:0/block/sda
mount
также указывает драйверу устройства отображать некоторую оперативную память (а не том) как файловую систему, может--bind
часть дерева файлов как поддерево и т. д. Кроме того, монтирование «диска» RAID может быть полезным и / или странным вещи с несколькими томами для доступа или доступа к его частям. Короче говоря,mount
может делать много вещей, но наиболее типичным является создание файловой системы где-то в дереве файлов.sda
Часть/dev/sda
может представлять несколько вещей , в зависимости от вашей точки зрения:Имя файла
В общем, это имя файла, которое, если это диск, является блочным устройством, следовательно, именем устройства.
Как корень:
Имена дисков
sda
- это строка, которая дает имя диску (отличается от разделов sda1, sda2, sdX и т. Д.). Обычно он генерируется udev на основе применяемых правил устройства.Путь к каталогу
sda
- это базовое имя пути/dev/sda
Ограничено толкованием имен дисков:
В старые времена: sda раньше было именем устройства SCSI-диска a .
Поскольку эта же библиотека была расширена для дисков SATA, я думаю, что теперь она должна называться:
Или просто:
источник
это сгенерированное ядром имя блочного диска / устройства раздела :
sda
это имя диска генерируется ядром. Драйверы ядра (включая стек SCSI, который очень удобно использовать для дисков SATA) заполняютdisk_name
полеgendisk
структуры (т. Е. Для SCSI: drivers / scsi / sd.c # L3338 ) для генерацииsda
имени.Это имя в дальнейшем используется как имя соответствующего блочного устройства в
/dev
,/sys
и/proc/{partitions,diskstats}
. Однако руководство для procfs называет его именем раздела ( proc (5) ), а документация по статистике диска называет его именем устройства ( iostats.txt ).источник
sda
и/dev/sda
взаимозаменяемы, и оба называют именем устройства. Я думаю , что это потому , что (в нормальной системе) вы устанавливаетеdevfs
на/dev
, так как именаsda
превращаются в пути , типа/dev/sda
(которые можно также называть имя).В Linux / Unix все является файлом. Устройство представляет собой файл. Файл всех типов устройств находится в каталоге / dev. Таким образом, sda - это специальный файл блочного устройства.
Примечание : где x - это переменная. х представляет положение жесткого диска.
Сейчас в сд *
источник
sd*
имена с некоторыми драйверами или всегда с современными ядрами? Я забыл, у меня нет активных машин с PATA и современным ядром./dev/sda
,sda
это файл, и я также понимаю, что представляет собой файл. Мой вопрос был о том, как вызвать подстрокуsda
и строки нравится, когда речь идет о них в устной формеsdX
имена, а также смешиваются с SATA и SUB.Кажется, что есть как минимум два правильных ответа
sda
можно правильно назвать «базовым именем » для накопителя.sda
Также можно правильно назвать «имя диска ядра» для накопителя.Как вы пришли к такому выводу?
По процессу исключения по каждому из вероятных кандидатов:
Это не может быть правильным термином. Как отмечено в исходном вопросе , оно относится к полностью определенному имени (например
/dev/sda
), а не к окончательному фрагменту (напримерsda
).Подкрепляющие доказательства существуют в дополнительных источниках, такие как стр.68 из Полного руководства по SUSE Linux Enterprise Server 12 :
и стр.94 из Linux Linux 2008 Edition :
Это также не может быть правильным термином, так как он используется в технической документации как синоним для полного имени (например
/dev/sda
), а не только конечный фрагмент (например,sda
):BASENAME (1) :
DIRNAME (1) :
Это также не может быть правильным термином, так как он используется в технической документации как синоним для полного имени (например
/dev/sda
), а не только конечный фрагмент (например,sda
):GNU Coreutils: вызов базового имени :
GNU Coreutils: вызов dirname :
Это также не может быть правильным термином. Я не могу найти никакой технической документации, в которой последняя часть имени устройства называется «коротким именем» или «коротким именем». Эти термины, похоже, используются в Linux или GNU только в контексте параметров монтирования VFAT или имен хостов в сетях .
Этот термин , как представляется, действительный ответ, основанный на стр.149 из Установка Red Hat Linux 7 :
и примечания к курсу для CST8207 (операционные системы GNU / Linux) в Algonquin College :
и стр.1456 из Практического руководства по Red Hat Linux 8 :
К счастью, в GNU / Linux также есть
basename
команда, которую можно использовать для получения базового имени:Этот термин также представляется действительный ответ, из - за стр.100 из ядра Linux в ореховой скорлупе :
Кстати, «имя диска ядро» также появляется в силе терминологии в контексте Solaris :
источник
/dev/sda
называются: BASENAME (1) как «имена файлов»; DIRNAME (1) как «имена файлов»; документы GNU Coreutils как «имена»; & FDISK (8) и TLDP как «имена устройств». Таким образом, ни один из этих терминов не может быть однозначно использован для обозначения только конечного компонента строки, разделенного косой чертой. Следовательно, если нам нужен термин, который можно использовать для однозначной ссылки на эту часть строки, то мы должны использовать что-то еще. Источники в моем ответе, взятые вместе, говорят, что часть перед последней косой чертой - это «dirname», а часть после - «basename». Вуаля .sda
а что нет/dev/sda
, вы могли бы назвать это «базовым именем». Или вы можете просто использовать «имя» или «путь» в этой документации и привести пример, как это делает большинство документов. Я не думаю, что существует общепринятый термин, отличный от «имени», хотя некоторые документы используют «имя» для включения полного пути.«Все есть файл» - так не
sda
просто ли имя файла,/dev
каталог (и пустая строка расширение) устройства доступны по полному пути/dev/sda
, который по соглашению является первым не-IDE-диском? Также какpasswd
имя файла и/etc
каталог файла доступны, так как/etc/passwd
по соглашению содержат (ed) данные пароля?источник