Azure-docs: Непонятно, как пользователь может определить диск, который он хотел бы смонтировать.

Созданный на 24 авг. 2018  ·  12Комментарии  ·  Источник: MicrosoftDocs/azure-docs

Было бы полезно объяснить, как пользователь может определить, какой диск, отображаемый в результате выполнения команды dmesg | grep SCSI представляет интерес.

«Здесь sdc - это тот диск, который нам нужен» бесполезен.

Я узнал, прочитав https://chrismckee.co.uk/creating-mounting-new-drives-in-ubuntu-azure/, где была показана команда sudo lshw -C disk , откуда я идентифицировал диск, глядя на его размер и запись информации о шине, из которой я могу соотнести его с результатами dmesg | grep SCSI . Я уверен, что у тебя есть лучший способ сделать это.

Также было бы хорошо объяснить, почему мы используем SCSI в команде - обратите внимание, что это всегда так, если они просто подключили диск с данными к виртуальной машине на портале Azure.


Детали документа

Не редактируйте этот раздел.

Pri1 assigned-to-author doc-enhancement triaged virtual-machines-linusvc

Самый полезный комментарий

Разочаровывает, что нужно прочитать все закрытые отзывы, чтобы получить эту информацию. Если последний пост действительно полезен, его следует включить в приведенный выше документ.

Все 12 Комментарий

Спасибо за ответ! Я поручил автору содержания решить эту проблему, чтобы он продолжил расследование и при необходимости обновил документ.

Привет, Ян.

Это в значительной степени вещь Linux.

В Azure диск ОС - «sda», а «sdb» - это временный диск, зарезервированный для Azure (например, диск D: \ на сервере Windows).

"sdc" - единственная доступная опция, потому что это единственная оставшаяся опция. Но немного поясняю вам название этого диска:

  • sd означает SCSI
  • c - порядок диска (a - первый диск, b - второй и т. д.)
  • sdc означает, что это третий SCSI-диск на сервере

Я знаю, что это не лучший ответ, но надеюсь, что он вам поможет.

Спасибо @ marcelo-salvatori, это полезно, но я думаю, что было бы хорошо учесть новичков Linux в самом документе. Из одного только этого документа не ясно, что диск ОС и временный диск являются sda и sdb соответственно (можно добавить ссылку, где это объясняется). Кроме того, что, если диски с данными уже подключены или если пользователь подключил более одного на портале перед входом в виртуальную машину - как тогда определить один конкретный?

Твоя забота - реальная вещь @ yangsiyu007. Я тоже немного запутался в этой статье.
Дополнительные советы по идентификации дисков:

  • Чтобы узнать размер диска, вы можете использовать "fdisk -l". Эта команда выведет список всех ваших дисков, их размеров и существующих разделов.
  • Чтобы узнать, является ли диск SSD или HDD, используйте команду «cat / sys / block / sda / queue / rotational», заменив sda на диск, который вы хотите проверить. Вы должны получить 1 для жестких дисков и 0 для SSD.

Честно говоря, в Azure у нас, похоже, есть проблема, заключающаяся в том, что весь диск идентифицируется виртуальными машинами как жесткие диски. Я видел такое поведение как в Windows, так и в Linux Server.
Что касается Windows, это можно изменить с помощью команды «Set-PhysicalDisk». Я не нашел способа сделать то же самое в Linux. Возможно, с помощью PowerShell в Linux вы сможете это сделать, но я сам не пробовал.

Следовательно, способ его идентифицировать был бы юрским. Вы должны добавлять по одному диску и идентифицировать его, добавлять другой и идентифицировать его и так далее. Я знаю, это отстой. Но это единственная работа, которую я нашел. Я надеюсь, что Azure скоро это исправит.

Использованная литература:
https://docs.microsoft.com/en-us/azure/virtual-machines/linux/about-disks-and-vhds# Contemporary -disk
https://unix.stackexchange.com/questions/65595/how-to-know-if-a-disk-is-an-ssd-or-an-hdd

cat /sys/block/[DRIVE]/queue/rotational или lsblk -d -o name,rota не работают в Azure. В нем указано 1 для sda / sdb / sdc, хотя sda - это SSD премиум-класса, sdb - это временный SSD, а sdc - стандартный жесткий диск.

Также fdisk -l ничего не возвращает.

Тестирование на Ubuntu.

Не всегда можно гарантировать, что sda и sdb будут ОС и временным диском соответственно. Лучший способ идентифицировать конкретный диск с данными - через LUN. Фактически вы можете указать LUN при подключении диска через CLI / Powershell, или по умолчанию нумерация будет начинаться с 0 и увеличиваться на 1 для каждого вновь подключенного диска.

Во многих стандартных образах Linux в Azure есть правило udev, которое создает дружественные / постоянные символические ссылки для каждого диска, поэтому вам не нужно беспокоиться о sda / sdb / etc. именование. После подключения диска с данными вы должны увидеть новую символическую ссылку, созданную в / dev / disk / azure / scsi1 / *, которая идентифицирует каждый диск (и его разделы) по LUN.

Смотрите также:
https://docs.microsoft.com/en-us/azure/virtual-machines/troubleshooting/troubleshoot-device-names-problems

Спасибо всем за обсуждение этого вопроса. Мы продолжаем внутреннее обсуждение этого вопроса и в настоящее время не планируем обновлять документ какими-либо дополнительными действиями. @szarkos последний ответ точен и хороший комментарий, который стоит завершить. Эта проблема останется в документе, и если другие пользователи продолжат комментировать ее, мы всегда сможем возобновить обсуждение.

Разочаровывает, что нужно прочитать все закрытые отзывы, чтобы получить эту информацию. Если последний пост действительно полезен, его следует включить в приведенный выше документ.

Я согласен с @pflickin. Должен быть более простой способ получить эту информацию. Было бы очень полезно, если вы хотите автоматизировать это.

Спасибо всем за обсуждение этого вопроса. Мы продолжаем внутреннее обсуждение этого вопроса и в настоящее время не планируем обновлять документ какими-либо дополнительными действиями.

Какого черта? По-прежнему невозможно определить правильные имена дисков, следуя текущим документам. Недавно я выбрал дополнительный диск, потому что те, которые поставлялись с виртуальными машинами, обычно недостаточно велики, и мне потребовалось несколько часов, чтобы выяснить, как его смонтировать. (Он не нашел эту ветку при поиске, поэтому найти решение здесь невозможно.)

Это неприемлемо для того, за что люди платят.

Как бы то ни было, вы можете использовать sudo fdisk -l для получения размеров дисков и mount -l и df -h для определения существующих креплений и их размеров, если вы не пытаетесь одновременное добавление нескольких дисков одинакового размера выполняется путем перекрестного сравнения этих выходных данных.

Это не совсем удобно для пользователя, и необходимость поиска этих команд в течение нескольких часов также неприемлема, и даже тогда, учитывая, что вы можете добавить несколько дисков одинакового размера во время создания виртуальной машины без каких-либо предупреждений или указаний, это ужасно для пользователя. .

Да, этот документ нуждается в обновлении. А пока я собираюсь добавить сюда эти ссылки, если они будут полезны:

https://github.com/canonical/cloud-init/blob/master/udev/66-azure-ephemeral.rules
https://github.com/Azure/WALinuxAgent/blob/master/config/66-azure-storage.rules

Для всех, кто интересуется тем, как определить, какой диск является правильным, я обновил документ, чтобы использовать lsblk -o NAME,HCTL,SIZE,MOUNTPOINT | grep -i "sd" который показывает весь диск, монтирования и т. Д. С номером и размером LUN. Если вы сравните это с порталом Azure> ВМ> Диски, вы сможете найти диск по номеру LUN, если все диски одинакового или похожего размера. Надеюсь на эту помощь!

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

JeffLoo-ong picture JeffLoo-ong  ·  3Комментарии

jamesgallagher-ie picture jamesgallagher-ie  ·  3Комментарии

JamesDLD picture JamesDLD  ·  3Комментарии

spottedmahn picture spottedmahn  ·  3Комментарии

ianpowell2017 picture ianpowell2017  ·  3Комментарии