Virtualbox com порт как настроить
Перейти к содержимому

Virtualbox com порт как настроить

  • автор:

virtualbox и com порт

Не получается отдать com порт виндам под virtualbox-ом. В настройках VBox выбираю COM1 хост-устройство /dev/ttyS0. Софт в винде ратотать с ним чета не хочет:( Права в /dev вроде как выставлял.

com портов несколько
/dev/ttyS0 — ком порт на материнке
/dev/ttySX — PCI плата с портами
/dev/ttyUSB0 — USB-RS232 адаптер.

Больше всего интересует последний. По идее должны работать все, но не работатет ни одного.

ps: надо, чтоб ресиверы под спутниковое ТВ прошивать.

samson ★★
18.11.09 04:11:17 MSK

хм, а другим система под VirtualBox-ом их отдать удаётся?

spunky ★★
( 18.11.09 05:02:01 MSK )

проверьте чтоб юзер был в группе uucp.

r0mik ★
( 18.11.09 05:52:23 MSK )

Надо юзера вставить в группу tty и проверить группу vboxusers. Могу сказать сразу: Без VirtualBox в любой терминалке в lenny всё работает с /dev/ttyUSB0 (это у меня конвертер), как только запущу сам менеджер VirtualBox, в лучшем случае, я получаю крякозябры в терминалке. Порт пробрасываю в гостевую XP так же (хост устройство), но оно работает через жопу, т.е. практически никак. Сделал вывод, VirtualBox фигово работает с COM.

Phantom_
( 20.11.09 11:16:07 MSK )
Ответ на: комментарий от Phantom_ 20.11.09 11:16:07 MSK

настроил как написанно выше. все заработало, проверял на модеме старом внешнем спорстере и прошил отладочную плату stk500. Все работает нормуль. правда установленная гостевая винда напрочь отказалась видеть ком порты. Поставил винду заново и ком порты появились. virtualbox 3-10 os Archlinux гостевая winXPSP3

anonymous
( 21.11.09 16:45:19 MSK )
Ответ на: комментарий от anonymous 21.11.09 16:45:19 MSK

С пол недели назад снес из-за этого virtualbox вместе с гостевой виндой. Они мне и нужны то были только для заливки книг на телефон. А когда сабж после не увидел какого обновления перестал видеть com-порты..
И исправить (терпения не хватило) не получилось..

Bod ★★★★
( 21.11.09 16:49:26 MSK )
Ответ на: комментарий от Bod 21.11.09 16:49:26 MSK

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

unixforum.org

Здравствуйте.
Надо написать программу для Windows. Программа взаимодействует с АЦП. АЦП подключается через COM. Поставил VirtualBox версии 1.5.0, гостевая система — Win XP PE.
В настройках COM-портов сделал следующее:
Номер порта: COM1
Режим порта: хост-устройство
Путь к порту: /dev/ttyS0

С такими настройками винда не запускается. Сообщение об ошибке:

Serial device 0 cannot attach to char driver
.
VBox status code: -38 (VERR_ACCESS_DENIED).

Код ошибки:
0x80004005
Компонент:
Console
Интерфейс:
IConsole

Настройка Com портов на виртуальной машине

введите сюда описание изображения

На сервере развёрнута виртуальная машина ESXI, в ней поставлен образ Windows xp. Включена функция подключение к удалённому рабочему столу, и к Win xp подключаюсь удалённо. Нужно удалённую машину вставить COM кабель, и передать сигнал по RDP на тот же номер COM порта на виртуальной машине. Рис.1. В RDP включил функцию передачи последовательных портов, но на виртуальной машине они не появились в диспетчере устройств. В настройках виртуальной машины можно добавить последовательные порты, но не совсем понятно какие именно нужно выбирать: Use output file, Use physical serial port, Use named pipe, Use network, если какой либо из них, то не понимаю как его настроить.

Отслеживать

68.2k 225 225 золотых знаков 80 80 серебряных знаков 223 223 бронзовых знака

VirtualBox

VirtualBox это виртуальная машина для архитектуры x86, разработанная фирмой Innotek и поддерживаемая Oracle. Существует две версии: полная сборка VirtualBox с проприетарной лицензией и редакция с открытым исходным кодом VirtualBox Open Source Edition (GPL).

Она проще в конфигурировании, чем QEMU и чуть медленнее, чем VMware.

Примечание: Если вы испытываете какие-либо проблемы с ‘захватом’ курсора мыши в окне виртуальной машины Virtualbox с запущенной в нём ROS, то перейдите к вкладке «Машина» и выберите там «Отключить интеграцию мыши», затем вновь щёлкните по окну с запущенной сессией ВМ, теперь всё должно работать.

Запуск ReactOS Live CD

Далее следует инструкция по созданию совместимой с ReactOS виртуальной машины в среде VirtualBox с последующим монтированием LiveCD в неё. Для подготовки инструкции использовалась среда Virtualbox версии 4.2.14 r86644 запущенная в Windows 7 x64, однако для других операционных систем и их версий процесс подготовки виртуальной машины, скорее всего, будет аналогичен.

  • Загрузите самую свежую версию образа диска LiveCD с http://www.reactos.org/download
  • Запустите VirtualBox.
  • Нажмите на кнопку ‘Создать’.
  • Введите имя виртуальной машины и выберите тип машины ‘Microsoft Windows’, версия — ‘Windows XP’. Нажмите Next.
  • Укажите объём оперативной памяти, которое вы хотите выделить виртуальной машине. Необходимый минимум — 64 Мб, однако рекомендуется выделять 256 Мб и более.
  • Всегда добавляйте виртуальный жёсткий диск, даже если система будет запускаться с CD. Для загрузки системы необходим жёсткий диск. Вы можете создать новый виртуальный жёсткий диск, или же воспользоваться созданным ранее. Нажмите Создать для создания новой ВМ.
  • Выделите созданную ВМ и нажмите Настроить.
  • Перейдите на вкладку ‘Носители’ и выберите диск ‘Пусто’ в списке устройств IDE-контроллера.
  • В панели Атрибуты выберите файл образа Live CD и поставьте флажок в поле ‘Живой CD/DVD’.
  • Нажмите OK. Всё готово для загрузки ReactOS.

Если вы не можете выбрать в ReactOS правильное разрешение экрана, то прочтите эту инструкцию, хотя речь в ней идёт о Windows 8, однако всё сказанное там справедливо и в отношении ReactOS.

Получение отладочных сообщений

Windows

Rosdebug1.png

Необходимо предпринять следующие действия:

1) Настроить последовательный порт в VirtualBox.

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

  • Скачайте VirtualBox, если вы этого ещё не сделали.
  • Вполне очевидно, что для получения отладочных данных от ReactOS, вам также потребуется отладочная сборка ReactOS. Для отладки необходимо использовать ТОЛЬКО отладочную сборку. Кроме того, вам потребуется 7-Zip для распаковки ISO-образа ReactOS из файла .7z.
  • Когда откроется окно VirtualBox, нажмите на пункт «Свойства» и выберите пункт «COM-порты».

Задайте Режим порта = Хост-канал, пометьте галочкой пункт Создать канал, путь к порту: \\.\pipe\ros_pipe.

ВАЖНО: Не изменяйте порт «COM1», который появляется в ниспадающем списке. Оставьте его как COM1.

Rosdebug2.png

2) скачайте и запустите PuTTY или любой другой понравившийся вам терминал последовательного порта (например, HyperTerminal. ).

Эта программа потребуется для создания протоколов отладки. PuTTY может прослушивать COM-порт и выводить данные с него в файл. Если вы не знаете, какой именно вариант поставки PuTTY вам нужен, то скачивайте файл putty.exe «For Windows on Intel x86» («Для Windows на архитектуре Intel x86»). Программа не нуждается в установке, просто скачайте её и запомните папку, где вы разместили скачанный файл. В Windows Vista программа должна быть запущена от имени Администратора, как и любое другое приложение, работающее с именованными каналами.

  • В древовидном списке в левой части окна выберите Session. В правой части окна под строчкой Connection Type («Тип соединения»), выберите Serial («Последовательное»). Под строкой Serial Line («Путь к последовательному соединению») введите \\.\pipe\ros_pipe. Под надписью Speed («Скорость передачи данных»), введите «115200». Если вам необходимо производить запись в протокол, то перейдите в древовидный список слева и выберите подпункт Logging пункта «Session». Под строчкой Session Logging («Протоколирование данных сессии», выберите All session output («Все данные сессии»).
  • В строке Log file name («Имя файла протокола») задаётся имя и размещение файла протокола отладки. Для смены папки с протоколом воспользуйтесь кнопкой «Browse» («Обзор»), однако обязательно запомните имя и путь к папке, куда вы его сохранили!
  • Возвратитесь назад к древовидному списку в левой части окна и выберите подпункт Serial («Последовательное») пункта Connection («Соединение»). Установите параметр Flow Control («Контроль потока») в значение None («Нет»). PuTTY теперь настроена. Обратите также внимание, что в главном окне PuTTY вы можете сохранять и загружать созданные вами конфигурации программы, что значительно упрощает работу с ней.
    • Итак, после того, как вы выбрали тип соединения по последовательному порту, задали скорость порта 115200 бод, а также ввели путь к именованному каналу (\\.\pipe\ros_pipe), можете начинать отладку. Разумеется, вместо ros_pipe вы можете использовать любое другое уникальное имя, только не забывайте пользоваться схемой именования \\.\pipe\[имя_канала].
    • Нажмите на кнопку «Open» («Открыть») в нижней части окна PuTTY, это приведёт к активации встроенных в PuTTY функций создания протоколов отладки, что выразится в открытии чёрного окна с мигающим зелёным курсором. В это окно будет выводиться большое количество текстовых сообщений во время отладки. После окончания работы с ReactOS, вы можете открыть файл с протоколом отладки, кроме того, можно просто скопировать в буфер обмена всё содержимое чёрного окна PuTTY. Когда вы выключаете виртуальную машину, PuTTY переходит в неактивное состояние и выводит сообщение об ошибке, однако, когда вы перезапустите виртуальную машину, вы можете подключиться к сессии заново, для этого вам нужно лишь нажать правой кнопкой на заголовке окна PuTTY и выбрать пункт меню Restart session (Перезапустить сессию).
    • Сначала запустите ReactOS в виртуальной машине, выберите загрузку в режиме отладки (DEBUG MODE), затем откройте PuTTY и смотрите на протокол отладки.

    Выбор режима отладки

    ReactOS запущена + идёт вывод в PuTTY

    Имеется предположение о том, что при передаче большого количества данных через именованные каналы может происходить повреждение выводимых в них данных. Если при отладке вы заметили такое поведение системы, то существует ещё один способ получения отладочного протокола:

    Com0com: Это мост между VirtualBox и PuTTY. Эта программа даёт вам возможность создать несколько пар виртуальных COM-портов, однако вам потребуется лишь одна пара (например Virtual Port Pair 0). Скачайте и установите com0com. Дополнительную информацию вы найдёте в статье com0com. В окне настройки программы вы увидите имена виртуальных последовательных портов (по умолчанию: «CNCA0» и «CNCB0»). Проверьте, правильно ли установлен драйвер com0com (например, при помощи Диспетчера устройств). Запустите виртуальную машину. В VirtualBox, пререйдите в «Свойства», «COM-порты», установите в списке «Режим порта» значение «Хост-устройство» (не «Хост-канал»). Затем, в поле Путь к порту/файлу введите «\\.\CNCA0». Далее, запустите Putty; переставьте переключатель в значение «Serial», а в поле «Serial line» введите «CNCB0», и нажмите на кнопку «open». Как уже упоминалось ранее, должно появиться чёрное окно, и, когда вы запустите ReactOS в отладочном режиме, в этом окне будет появляться текст, предмтавляющий собой протокол отладки.

    ВАЖНО: В 64-х битных системах Windows Vista, а также в более новых версиях ОС Windows для 64-битной архитектуры вы должны использовать драйвер com0com, имеющий цифровую подпись.

    Rosdebug1d.png

    Использование VMwareGateway

    Необходимо загрузить приложение VMwareGateway. В качестве службы его можно запустить воспользовавшись ключом командной строки /r (в Windows Vista вы должны вначале запустить CMD с правами Администратора системы). Загрузить сборку для x86/x64 можно здесь, при её использовании в Vista/Win7 не потребуется запускать VirtualBox с полномочиями Администратора. Далее, необходимо запустить службу, используя команду SC:

    sc start vmwaregateway

    В случае необходимости, отключите блокировку программы сетевым экраном. И наконец, используйте свой любимый telnet-клиент для подключения к localhost на порт 567.

    Для настройки виртуальной машины, установите её в режим Host Pipe с следующим адресом канала:

    \\.\pipe\vmwaredebug

    Убедитесь, что не установили галочку Create Pipe. VMwareGateway уже создал канал. Данные отладки должны появиться в вашем telnet-клиенте PuttyTel.

    Linux

    • Установите пакет VirtualBox, способ установки зависит от используемого вами дистрибутива

    В Debian или Ubuntu:

    sudo apt-get install virtualbox
    • Разумеется для отладки ReactOS вам также потребуется отладочная сборка ReactOS. ( Необходимо использовать ТОЛЬКО отдалочные сборки. Кроме того, вам потребуется 7-Zip для извлечения файла образа в формате ISO из архива 7z.
    • Настройте последовательный порт в VirtualBox.

    Произведите настройку VirtualBox в соответствии с картинкой чуть ниже.

      • После открытия окна VirtualBox, нажмите на вкладку Свойства. Щёлкните на COM-порты.

      В раскрывающемся списке Режим порта выберите Хост-канал, поставьте галочку около параметра Создать канал, параметр Путь к порту/файлу: /tmp/ReactOS-Debug.pipe

      ВАЖНО: Не меняйте номер порта с «COM1» на что-либо другое. Оставьте его как COM1.

      VirtualBox-4.0.8.Setup serial port for socat pipe.png

      Используя minicom

      Это краткое руководство по использованию терминального приложения minicom. Прежде всего установите его, набрав:

      sudo apt-get install minicom
      Настройка последовательного порта в minicom
      • Выполнив команду «sudo minicom -s» вы сможете задать порт и сохранить файл конфигурации приложения (dfl = default)
      • Выберите «Configure serial ports«. Назовите устройство unix#pipe_path где «pipe_path» это файл вроде /tmp/ReactOS-Debug.pipe, который будет выполнять роль канала между виртуальной машиной и minicom.

      Убедитесь, что pipe_path задан абсолютно одинаково и в minicom, и в VirtualBox.

      • Сохраните файл конфигурации при помощи Save config (dfl)
      • Выход по Exit
      • теперь, после запуска ВМ, введите «minicom» без sudo для запуска minicom от имени пользователя
      Перенаправление в файл (в Linux-хосте)

      Запустив minicom, нажмите Ctrl-A, а затем L. Введите имя файла, в который будут записываться сообщения.

      Используя socat
      Только для просмотра
      socat unix-client:pipe_path stdout

      Также вы можете выполнить это:

      socat unix-client:pipe_path stdio

      Замените «pipe_path» на путь к каналу, созданному вами в VirtualBox (т.е. «/tmp/ReactOS-Debug.pipe»).

      В том случае, если вы хотите перенаправить вывод socat в файл, воспользуйтесь следующей командой:

      socat -u unix-client:pipe_path stdio OPEN:log_file_name,creat,trunc

      Где log_file_name это файл, в который VirtualBox должен производить вывод данных из последовательного порта.

      Если в ReactOS произойдёт критический сбой, то вы всё равно сможете вводить команды в окне VirtualBox — т.е. внутри отладочной сессии. Вы увидите вводимые и выводимые данные в окне консоли, в котором запущен socat.

      В интерактивном окне (т.е. для получения обратной трассировки)

      В терминальном окне/вкладке выполните:

      $socat UNIX-CONNECT:/tmp/ReactOS-Debug.pipe PTY,link=/tmp/vbox_term

      А в другом терминальном окне/вкладке выполните:

      $screen /tmp/vbox_term

      Вывод в последовательный порт при использовании com0com

      Установите и настройте Com0com в соответствии с руководством по com0com.

      Активируйте первый последовательный порт на вашей машине ReactOS. Используйте номер порта «COM1», режим «хост-устройство» и путь к порту «COM4» или другой, в зависимости от того, какой виртуальный порт вы создали первым в comocom.

      Подсоедините ваш терминальный клиент ко второму виртуальному порту и запустите VirtualBox.

      Установка дополнений гостевой ОС

      В окне виртуальной машины зайдите в меню «Устройства» — «Установить дополнения гостевой ОС». CD с дополнениями будет смонтирован в CD-привод, откройте его, запустите файл VBoxWindowsAdditions.exe и следуйте инструкциям программы установки.

      ПРИМЕЧАНИЕ: Чтобы установить поддержку Direct3D (Direct3D Support) загрузите ReactOS в безопасном режиме, выбрав в Freeloader пункт ReactOS, нажав F8 и выбрав Safe Mode.

      Настройка аудио

      ReactOS имеет ограниченную поддержку звука еще с версии 0.3.9, но рекомендуется проверять звук в транке.

      В настройках машины VirtualBox, разрешите аудио и задайте следующие настройки:

      • Аудиодрайвер: Windows DirectSound
      • Аудио-контроллер: ICH AC97

      После установки ReactOS:

      1. Загрузите драйвер Intel AC 97 при помощи Менеджера приложений ReactOS
      2. Извлеките файлы в C:\ReactOS\
      3. Перезапустите виртуальную машину
      4. Установите и запустите ваш любимый аудиопроигрыватель или мультимедиа-приложение (т.е. Winamp, VLC, MPlayer)
      5. Откройте аудиофайл и включите режим воспроизведения

      Известные проблемы

      • Драйвер AC97 поддерживает только аудиопоток PCM в диапазоне 8000-44.100Кгц, 16Бит и 2 канала.
      • Конвертирование частоты дискретизации пока не поддерживается
      • При смене частоты дискретизации аудиопотока могут возникнуть проблемы в работе драйвера.

      Отладчик, встроенный в VirtualBox (низкоуровневый отладчик)

      Встроенный отладчик имеется не только в QEMU, свой отладчик есть и в VirtualBox. Для более детального изучения этого отладчика прочтите главу «12.1.3. The built-in VM debugger» файла руководства пользователя VirtualBox.

      Активация отладчика

      Отладчик ВМ доступен во всех версиях VirtualBox, однако по умолчанию он отключен, поскольку зачастую простому пользователю он практически не нужен. Существует два способа доступа к нему:

      • Консольное окно отладчика, отображаемое параллельно с основным окном ВМ
      • При помощи протокола telnet на порту 5000

      Сам по себе отладчик может быть активирован тремя способами:

      • Непосредственным запуском ВМ из командной строки VirtualBox —startvm с дополнительными аргументами —dbg,—debug, или —debug-command-line. Для дополнительных сведений прочтите справочные материалы по использованию VirtualBox.
      • Установкой переменной окружения VBOX_GUI_DBG_ENABLED или VBOX_GUI_DBG_AUTO_SHOW в значение true перед запуском процесса VirtualBox. Установка этих переменных (проверяется лишь их наличие) будет принята во внимание и использована даже тогда, когда уже запущен самый первый процесс VirtualBox — окно выбора виртуальной машины. Во всех впоследствии запущенных ВМ отладчик будет активирован изначально.
      • Установка параметров GUI/Dbg/Enabled в true в файле конфигурации перед запуском ВМ. Эти параметры можно установить как глобально, так и для каждой ВМ в отдельности. Если нужно установить в отдельности для каждой ВМ — измените соответствующий машине файл .vbox, он представляет собой файл настроек виртуальной машины в формате XML.

      Все эти параметры находятся:

      • X:\Users\%username%\.VirtualBox\VirtualBox.xml — для глобальной настройки

      Путь внутри XML: VirtualBox/Global/ExtraData

      • . \%VM_NAME%.vbox — для локальной настройки

      Путь внутри XML: VirtualBox/Machine/ExtraData

      Затем внутри вышеупомянутых путей в XML добавьте ещё один элемент:

      В результате в VirtualBox появится новый пункт меню ‘Debug’. В этом меню пользователь может получить доступ к консоли отладчика.

      Примечание: возможно при таком способе активации отладчика потребуется перезапуск операционной системы.

      Использование отладчика

      Синтаксис команд отладчика ВМ является некоторым подобием отладчиков от Microsoft и IBM, используемых в DOS, OS/2 и Windows. Пользователи, ранее работавшие с symdeb, CodeView, или отладчиком ядра OS/2, смогут без малейших проблем начать работать и с отладчиком ВМ VirtualBox. Наиболее важной и нужной из всех команд является команда ‘help’.

      Для получения дополнительных сведений обратитесь к руководству по отладке VirtualBox.

      Дополнительная информация

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *