Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Вс апр 30, 2017 4:03 pm

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 12 сообщений ] 
Автор Сообщение
СообщениеДобавлено: Вт ноя 25, 2014 5:19 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Здравствуйте.

С системой познакомился буквально недавно, хочу поучаствовать в конкурсе игр (писать планирую на Си без плюсов). На данный момент главная проблема - быстрый перенос файлов из хост-системы (работаю в Linux Mint) в Колибри (запущена в Virtualbox). USB-Флешка распознаётся, но она не может быть примонтирована сразу в двух системах. При запуске виртуальной машины флешка пропадает из системы, таким образом, для каждого запуска создаваемой программы приходится перезагружать виртуальную машину, а это неудобно.

Как разработку ведёте вы? Есть ли удобный способ "расшарить" папку, которая распознастся в виртуальной машине и будет одновременно доступна для чтения и записи в хост-машине? Я вместо Виртуалбокса пробовал QEMU с виртуальным .img-образом, как HDD в Колибри он определился, но проблема та же: без перемонтирования не работает. Можно ли перекидывать файлы живьём и на лету?

Ближайшие планы - задействовать FTP. Но если есть более простое решение, подскажите, буду благодарен. Спасибо.

P.S. С FTP не всё так гладко, он не все команды поддерживает, в частности при
Код:
curl -u test:1234 -T ./test.txt ftp://10.15.11.108/test.txt
Получаю
Код:
EPSV
500 Unsupported command

_________________
Roman Shuvalov


Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: Вт ноя 25, 2014 8:33 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Сб окт 05, 2013 9:32 pm
Сообщения: 385
Запускаем виртуалку из под рута, запускаем kos, потом в нижней части окна virtualbox ищем "устройства" и там находим флешку. Флешка отмонтировывается от минта и появляется в кос. Потом там же флешку отмонтировываем от кос, она автоматически монтируется в минт. Ничего перезагружать не нужно.

P.S.: чтобы fm увидел флешку, его нужно обновить. В eolite f5, в других не знаю. Можно перезагрузить fm.


Вернуться к началу
СообщениеДобавлено: Вт ноя 25, 2014 9:00 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Цитата:
Запускаем виртуалку из под рута, запускаем kos, потом в нижней части окна virtualbox ищем "устройства" и там находим флешку. Флешка отмонтировывается от минта и появляется в кос. Потом там же флешку отмонтировываем от кос, она автоматически монтируется в минт. Ничего перезагружать не нужно.
Ну это всё равно долго. Я как-то привык нажав F9 сразу видеть результат, ну или хотя бы скомпилированную программу, лежащую где надо и готовую к запуске. Это осуществимо?

FTP сервер ограничен в возможностях, возможно сервер стоит поднять на хост-машине и из KOS вытаскивать его в рамдиск. Пока попробую потыкаться в TFTP Client.

P.S. "Интернет загрузчик" (HTTP Downloader) не работает. Вбиваю URL, жму "Download", ноль эмоций. При том что текстовый браузер файл открывает успешно.

_________________
Roman Shuvalov


Вернуться к началу
СообщениеДобавлено: Вт ноя 25, 2014 10:01 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
FTP клиент в KolibriOS сработал. Файл получен. Скажите, а нельзя ли каким-нибудь .bat-файлом (в KOS) сразу выкачать файл с ftp- или http-сервера? Чтобы не писать ftp-команды руками. Наподобие wget.

_________________
Roman Shuvalov


Вернуться к началу
СообщениеДобавлено: Вт ноя 25, 2014 10:40 pm 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Пт июн 30, 2006 9:01 am
Сообщения: 1203
To make kolibriOS FTPD run in virtualbox requires correct configuration of FTPD.INI and configuration of NAT in virtualbox
(dont forget to open data ports if you wan to use PASV)
If you want to use active mode, set your client to use local IP 127.0.0.1

Something like .bat files is tricky because there is no real shell/console.
But.. FTPC can transfer all files in a directory at once...

_________________
"Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein


Вернуться к началу
СообщениеДобавлено: Ср ноя 26, 2014 12:41 am 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Цитата:
To make kolibriOS FTPD run in virtualbox requires correct configuration of FTPD.INI and configuration of NAT in virtualbox
It looks like it's not necessary, I configured virtualbox network in bridge mode, so actually host and virtual systems are in same subnet (both got IP from my router). So I have connection between host system and KOS, I can ping each other, both systems have internet access via router, I can access local (host) http webserver via text browser in kos, etc.

Problem is, probably, in particular implementation of FTPD. I'm trying to upload file:
Код:
curl --disable-epsv -u test:1234 -T ./test.txt ftp://10.15.11.108/test.txt

(--disable-epsv is required because EPSV command is not supported by FTPD, see above)
And nothing happens: curl stucks at 0% uploaded, and this is that I see in ftpd log in KOS:

Код:
Thread 27 created
220 Welcome to KolibriOS FTP daemon

USER test
Login ok
331 Please specify the password

PASS 1234
Password ok
230 You are now logged in

PWD
/

PASV
227 Entering passive mode (127,0,0,1,7,208)
_


And that's all. I have no idea why ftpd can't receive a file.

By the way, if I try to configure ftpd.ini and create new user with home directory /tmp0/1/ (RAM disk), I'll got error "Directory /tmp0/1/ doesn't exist", but it actually exists. I'm not sure if it is a bug or I'm doing something wrong.

_________________
Roman Shuvalov


Вернуться к началу
СообщениеДобавлено: Ср ноя 26, 2014 8:43 am 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Пт июн 30, 2006 9:01 am
Сообщения: 1203
FTPD cant receive a file because it's telling curl to try to open a data connection on 127.0.0.1
Цитата:
227 Entering passive mode (127,0,0,1,7,208)

It's quite dumb, so you'll need to set the IP of the correct interface in ftpd.ini (10.15.11.108, since 127.0.0.1 trick will not work in bridged mode)

/tmp0/1/ should work, I'll test again later to be sure.

_________________
"Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein


Вернуться к началу
СообщениеДобавлено: Ср ноя 26, 2014 11:53 am 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Пт июн 30, 2006 9:01 am
Сообщения: 1203
Ps: I would recommend to use another way to transfer your files during development, because of unfortunate stability issues with network stack.
I personally use a USB device, or inject project inside kolibri.img (rebooting VM before every test run is no problem for me)

_________________
"Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein


Вернуться к началу
СообщениеДобавлено: Ср ноя 26, 2014 2:14 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Цитата:
or inject project inside kolibri.img (rebooting VM before every test run is no problem for me)
Yes, I think that batch script which quickly inject executables into .img and than starting VM is good solution, I'll try it. Thank you.

_________________
Roman Shuvalov


Вернуться к началу
СообщениеДобавлено: Ср ноя 26, 2014 5:59 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Solved.

Copying to USB Flash Drive, starting vm (vboxmanage startvm "kolibri", flash drive disappears from host system), testing, closing VM, USB Flash Drive returns to host system. Not ideal, but quite ok for initial development. Next stop - compiling Hello World under linux.

Thank you for your help.

_________________
Roman Shuvalov


Вернуться к началу
СообщениеДобавлено: Пт ноя 28, 2014 3:15 am 
Не в сети

Зарегистрирован: Пн фев 16, 2009 5:40 am
Сообщения: 74
как вариант:
1) в kolobrios.img в фаил settings/autorun.dat в конце дописать /hd0/1/myprog
2) компилировать программу на флешку (например /media/flashka/myprog, где /media/flashka = /dev/sdc1)
3) запуск программы - sudo qemu -fda kolibri.img -hda /dev/sdc -boot a
После чего загрузится система, и запустится только что скомпилированная вами программа. Посмотрели. Закрыли. Опять скомпилировали (п.2) и запустили (п.3), и т. д.


Вернуться к началу
СообщениеДобавлено: Пн дек 01, 2014 5:49 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 25, 2014 5:08 pm
Сообщения: 109
Цитата:
1) в kolobrios.img в фаил settings/autorun.dat в конце дописать /hd0/1/myprog
О, а вот это отличный совет, спасибо. Авторан как раз то, что нужно.

_________________
Roman Shuvalov


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 12 сообщений ] 

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB