Я хочу отформатировать SD-карту из моей виртуальной машины Linux. В моем ноутбуке есть встроенный считыватель SD-карт . Я попытался использовать VirtualBox и VMware Player и установил гостевую Ubuntu 10.04. Никто из них не показывает устройство чтения карт SD как устройство. Я могу получить доступ к SD-карте с хоста Windows.
Меня не интересуют решения с использованием общих папок, так как я хочу получить доступ к SD-карте как к оборудованию (оно должно отображаться в /dev
).
Я хочу настроить SD-карту для BeagleBoard , но не хочу устанавливать физическую Ubuntu на свой ПК.
virtual-machine
sd-card
Пунит Сони
источник
источник
Ответы:
На более новых MacBook Pro слот для SD-карт больше не отображается как USB-устройство. Из-за этого вам необходимо подключить необработанное устройство к виртуальной машине, чтобы получить необработанный доступ ко всей карте. Полная документация находится в разделе « Расширенная конфигурация хранилища» документации VirtualBox.
Как четко указано в документах:
В качестве краткого руководства приведем следующие шаги для подключения устройства к виртуальной машине Linux:
Определите устройство блочного диска в вашей хост-системе
Откройте терминал и введите «mount». Вы увидите вывод, идентифицирующий подключенный том с вашей SD-карты. В моей системе я получаю следующее
В моем случае том «NO NAME» - это SD-карта, поэтому я принимаю это к сведению
/dev/disk2s1
. В данном конкретном случае этаs1
часть представляет собой раздел (фрагмент) на необработанном устройстве, поэтому часть, которую мы будем использовать позже, это просто/dev/disk2
часть.Теперь мы настроили VirtualBox для отслеживания необработанного устройства с помощью следующей команды в Терминале.
/path/to/file.vmdk
можно поместить куда угодно, хотя рекомендуется хранить его в папке гостевой виртуальной машины, например~/VirtualBox VMs/guest-vm/sdcard.vmdk
Обратите внимание, что
-rawdisk
мы используем не ссылку на раздел (слайс), а только блочное устройство в целом.Затем мы присоединяем необработанный диск к гостевой виртуальной машине в пользовательском интерфейсе VirtualBox.
/path/to/file.vmdk
вы использовали в шаге 3, и выберите его.file.vmdk
в списке.Обновить
Кажется, что некоторые люди могут иметь проблемы с доступом к необработанному устройству на шаге 3.2 или 4.6. Попытки выполнить некоторые команды с помощью sudo не помогут, так как VirtualBox будет работать, когда вы вошли в систему, и все равно не сможете получить правильный доступ к необработанному устройству или сгенерированному файлу vmdk.
Следующие шаги должны помочь, хотя я не проверял их.
Проверьте разрешения на сырой диск
Эти разрешения должны соответствовать вашей текущей учетной записи пользователя:
Права доступа к устройству также должны позволять вашей обычной учетной записи пользователя выполнять чтение (r) и запись (w) на это устройство. НЕ ИЗМЕНЯЙТЕ РАЗРЕШЕНИЯ НА УСТРОЙСТВО, ЕСЛИ ВЫ АБСОЛЮТНО НЕ ЗНАЕТЕ, ЧТО ВЫ ДЕЛАЕТЕ.
Обновление № 2
Оказывается, OSX Mountain Lion создал устройство с привилегиями «root: operator» и разрешениями 0640. К сожалению, на данный момент единственным способом получить доступ к этому устройству является «sudo chown $ USER» для текущего пользователя при каждой установке устройства, однако это не рекомендуется, если вы действительно не понимаете, что делаете. Надеемся, что либо Apple, либо VirtualBox найдут более подходящее решение.
источник
$ sudo launchctl list | grep diskarbitrationd 188 - com.apple.diskarbitrationd $ sudo kill -SIGSTOP 188 # pauses diskarbitrationd, disabling automount $ sudo kill -SIGCONT 188 # resumes diskarbitrationd, reenabling automount
sudo diskutil unmountDisk /dev/<disk path>
Ответ для пользователей Windows
Получите DeviceID вашего устройства чтения карт SD.
Вам понадобится карта в приводе, смонтированная на Windows.
Введите эту команду
Это должно выглядеть примерно так:
Последнее устройство - это устройство чтения карт SD, поэтому DeviceID
\\.\PHYSICALDRIVE1
Создайте файл ссылки на SD-карту
Откройте командные окна от имени администратора
Это предполагает путь установки по умолчанию - измените его, если вам нужно. (Убедитесь, что кавычки находятся вокруг аргумента rawdisk.)
Файл .vmdk представляет собой ссылку на SD-карту, вы можете поместить ее в любое место на вашей хост-системе, но эта команда просто для удобства помещает ее на рабочий стол.
Выполните шаги 4-6 в ответе JinnKo, единственная незначительная настройка заключается в том, что вам нужно запустить VirtualBox в качестве администратора
источник
cygwin
наблюдением за побегом персонажей. Я не получил правильноеcygwin
решение, но заметил, что команда, которая работаетcmd
, не работает вcygwin
.Скорее всего, вам не хватает расширений, если ваш SD-ридер использует USB-контроллер.
Под File> Preferences, следуйте за изображением. Добавьте и укажите на загруженное расширение.
Перезагрузите виртуальную машину, и у вас должен быть доступ к USB-устройствам.
источник
Чтобы решить эту проблему, вы можете просто использовать внешнее устройство чтения карт памяти USB (например, SD-карта на USB-адаптер) вместо встроенного устройства чтения карт. Он будет отображать вашу SD-карту как USB-устройство, чтобы вы могли легко установить ее, как любое USB-устройство. Это дешевые устройства и было бы приемлемым решением с учетом всех других проблем.
источник
Я использую Kubuntu 15.04, VirtualBox 4.3.26
Это предполагает, что устройство SD-карты есть
/dev/mmcbl0
, и выходной .vdk будетsd-card.vmk
:Не уверен, что это лучший способ исправить разрешения, но это сработало:
Теперь перейдите в настройки VM, выберите Storage, нажмите Controller: Sata, нажмите на иконку Add Hard Disk, выберите ваш .vdk (в данном случае sd-card.vmdk)
источник
У меня было много проблем с получением решения от JinnKo, в основном из-за моего нахождения в Mountain Lion (OS X 10.8) ... Но с его любезной помощью я решил проблемы.
Полное решение подробно описано здесь .
Однако суть моего решения - для пользователей Mountain Lion - заключается в следующем (используйте шаги JinnKo, описанные выше, но вставьте мой шаг здесь, прежде чем запускать команду 'VBoxManage internalcommands createrawvmdk [...]' (то есть между его шаги 2 и 3):
** Специально для Mtn Lion ** Убедитесь, что вы являетесь владельцем этого устройства. На 10,8 Mtn Lion вы, вероятно, обнаружите, что это не так. Проверьте это, выполнив:
С '*' вы увидите ВСЕ ваши дисковые устройства, вы также можете сделать: ls -l / dev / diskX, чтобы просто увидеть 'X', например, я сделал:
На Mtn Lion (10.8.x) вы увидите что-то вроде:
Где «X» - это номер вашего устройства, например «5» в / dev / disk5 ...
На Lion (10.7.x), Snow Leopard (10.6.x) или, возможно, более ранних версиях OS X, вы - если ваше имя пользователя 'brad' - скорее всего увидите что-то вроде:
Где «X» - это номер вашего устройства, например «5» в / dev / disk5 ... Если вы владелец, то все хорошо, ничего не поделаешь, переходите к следующему шагу, то есть шагу createrawvmdk ( в замечательных инструкциях @JinnKo выше).
Если вы не являетесь владельцем (но «root» или какой-либо другой пользователь), то либо (a) войдите в систему под этим именем администратора, либо (b) сделайте следующее (опять же, убедитесь, что вы используете правильный номер / букву устройства) Вот!):
* ВНИМАНИЕ * Ниже только для тех , кто хочет рисковать , постоянно уничтожая данные на жестком диске или флэш - накопитель. DO NOT это сделать , если вы не уверены , что вы знаете , что вы делаете:
* ВНИМАНИЕ * DO NOT это сделать , если вы не уверены , что вы знаете , что вы делаете. Вышеуказанное предназначено только для тех, кто хочет РИСК навсегда уничтожить данные на своем жестком диске или флэш-накопителе.
Вам нужно будет сделать это для ВСЕХ ваших срезов (s1, s2, s3, ... сколько бы их ни было). Например, мое имя пользователя - «brad», поэтому я сделал:,
sudo chown brad /dev/disk5
затемsudo chown brad /dev/disk5s1
, дляs2
иs3
(поскольку у меня уже было 3 существующих раздела или фрагмента).Если вы не разбили SD-карту на разделы, вам может потребоваться сделать это
sudo chown <your username> /dev/diskX
только один раз (без каких-либо срезов / разделов)Надеюсь, что это поможет некоторым другим бедным пользователям Mtn Lion!
источник
До сих пор мне не удавалось найти способ сделать это напрямую, даже с помощью USB-кард-ридера (он поставил карту
/dev/dm-1
вместо ожидаемого/dev/mmcblk1
).Моя работа заключалась в создании виртуального диска 4 ГБ в VirtualBox. Это может затем (как
/dev/sdb
) принять установку BeagleBoard Ubuntu, как это задокументировано.Затем я выключил виртуальную машину, преобразовал ее в файл RAW DD и использовал DD, чтобы поместить ее на карту: (на хосте Mac):
(
/dev/disk2
в моем случае, но тройная проверка на неправильность может привести к повреждению жесткого диска).Команда
dd
заняла около 1 часа 20 минут!Надеюсь, это поможет. Я все еще работаю над более простым и быстрым способом - нам не нужно передавать 4 ГБ данных для 600 МБ ОС.
источник
Для меня решение было включить USB-устройство с SD-картой, используя
Devices -> USB devices ->My card reader
,и через несколько секунд новые диски появляются в моей виртуальной машине.
Я установил пакет расширений VirtualBox до этого.
источник
Я установил файлы "Virtual Box Guest Additons CD", но устройство чтения карт SD не отображалось на моей виртуальной машине с Windows XP. Я смог начать работать, включив USB-устройство в Virtual Box, а затем перезапустив виртуальную машину.
источник
Как упомянул Кобальц. Для поддержки версий USB 2.0 и 3.0 вам необходимо установить Virtual Extension Pack, я установил 5.2.22 Oracle VM VirtualBox Extension Pack, и вы можете загрузить его со страницы загрузки Virtual Box. После того, как вы загрузите файл, вы сможете напрямую его установить и установить, то же самое будет добавлено в ваши расширения Virtual Box.
Вы также должны добавить свою SD-карту в фильтры устройства в нашей виртуальной коробке, перейдите в «Настройки» -> USB -> нажмите «Добавить SD-карту в приложении».
Теперь вы сможете на своей SD-карте в Фильтрах.
Перейдите в Файлы и увидите папки с SD-картами (я использую Ubuntu Linux Distribution)
источник
Для тех, кто использует макросы и читает предыдущие ответы, если вы все еще не можете получить доступ к SD-карте из-за проблем с разрешением,
запустите virtualbox с sudo, это решит проблему.
Обратите внимание, что путь к файлам vm отличается, в моем случае это:
Если это по-прежнему не работает, измените владельца и доступ к диску SD-карты на свою учетную запись и 666 соответственно.
источник