Kvm shared folders windows

Sharing a folder a windows guest under virt-manager

Sharing data between guest and host system is necessary in many scenarios. If the guest is a Linux system, you can simply add a shared folder that will be automatically mounted. However, this does not work if the guest is Windows. Sometimes, you can simply workaround it by using Samba shares, but in some scenarios network configuration makes it difficult. For example, when using usermode networking, the host machine can’t communicate easily via the network with the guest.

However, there is another way to share folders in virt-manager that actually works for Windows guest – SPICE . The first step is to configure the sharing in virt-manager . In the VM details view, click on “Add Hardware” and select a “Channel” device. Set the new device name to org.spice-space.webdav.0 and leave the other fields as-is.

Now start the guest machine and install spice-webdav on the guest machine. After installing spice-webdav make sure the “Spice webdav proxy” service is actually running (via services.msc ).

Now running C:\Program File\SPICE webdavd\map-drive.bat will map the shared folder, which is by default

/Public . If you encounter the following error

It means that the Spice webdav proxy service is not running.

If you want to change the shared folder, you will have to use virt-viewer instead of virt-manager , and configure it under File->Preferences.

Share this:

14 thoughts on “Sharing a folder a windows guest under virt-manager”

I got this running with a linux virt-manager and windows guest.
Seemed to be working, though extremely laggy while browsing directories.
However, when I try to copy or access large files, say only 400-500 MB and larger, the windows guest errors out with a message to indicate the file size limit is exceeded.
Really? Have you ran into this before?
Thank you.

I didn’t stress test it, so I didn’t run into large files problems. When I need to copy very large files back and forth, I usually just mount the disk image and work directly on it.

I really like this concept, but it’s not ready for prime time….at least from my experience. It was far too laggy to be useful. For some of my windows-based applications, in order to access files over the share, I had to keep a windows explorer window open and continually refresh the shared folders. This would allow the application to access the files from a hang state. It would work for a few seconds, then I’d need to refresh again. Apparently, whatever file library the application used was not compatible with this share.

I’ve abandoned this concept and run a local samba share. Orders of magnitude better performance (once I got the samba tricks figured out).

Didn’t work for me, seemed like the server process was crashing.

A bit more googling got me to https://blogs.msdn.microsoft.com/commandline/2019/02/15/whats-new-for-wsl-in-windows-10-version-1903/ , which talks about sharing files between WSL linux and windows. Not terribly interesting for us… except that it says the sharing is done over 9p and mentions a 9p client.

Once this update is out, I’m wondering if that 9p client (or server) would work for filesharing between linux hosts and windows guests.

In the meantime, though, WSL got me thinking – how would I transfer files from one linux host to another? scp, of course! So I generated a key, added the pub component to my host’s authorized_keys, and now I can scp files around. The lack of gui could be an issue for some, but I’m quite happy with the command line myself.

What should I set the target in the target path, and the driver type and mode type in virt-manager to? (see here: https://i.imgur.com/cksNRqv.png)

I am trying to find a way to share files between a linux host and a window7 VM that does require exposing the VM to my network. We are trying to keep it isolated from the greater network on purpose. This eliminates the samba method of sharing as far as I can tell. Any suggestions?

This method would work without network, but it’s buggy/laggy. I switched to samba instead. But if you must remain off the network, then give this method a try.

Cant get it to working, “Spice webdav proxy service” wont start, with error: 1067
Windows could not start the Spice webdav proxy service on local computer

Unfortunately, when installing ‘Spice webdav’ an error occurs.
As an alternative, I found a way to share a ‘host’ machine folder by logging in as a user with a password from the XP guest (guest ok = no). The registry must be modified as follows:
[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Lsa] “LmCompatibilityLevel” = dword: 00000001
Also. deselect ‘USE SIMPLE SHARED USE OF FILES’ in ‘folder options’ tab ‘see’
and put the machine in ‘WORKGROUP’
Sorry, English is not my native language!
Source:
‘https://bgstack15.wordpress.com/2017/10/01/samba-and-ntlm-for-windows-clients/’

This post was promising but I too got the 1067 errors and could not get the service to start. The missing part of the puzzle for me was that the latest guest tools have to be installed on the windows guest also (https://www.spice-space.org/download/windows/spice-guest-tools/spice-guest-tools-latest.exe). The guest tools installed a lot of what I believe are the virtio drivers, so I think I got much more than necessary. But once installed the proxy service started. Then I was able to configure virt-viewer for share, and the map-drive.bat script mapped the shared folder to z:

No such menu item as “Menu -> Preferences” under either the manager window or the VM config window. And under Edit -> Preferences, there’s nothing for editing the path to the shared directory. (and the version that comes with Linux Mint 19.x doesn’t have an XML edit window).

First I got error 1067 too – turns out that I installed x86 spice-webdav instead x64. After changing it to valid version service starts properly.

Then when I tried to run .bat, i encountered error 67 (with webdav proxy running!). Found out on github.com/lofyer/spice-webdav that firewall should be disabled. Can confirm, it fully works now.

Читайте также:  Mac os running apps

jrv Said the missing part of the puzzle for him was figuring out that the guest tools had to be installed on the client. It’s the opposite problem for me. Apparently there are tools that need to be installed on the host. Could someone tell me what those tools are (for Ubuntu 20.04 x64) ? BTW, the map-drive.bat file worked perfectly for me in my Win7 guest and the Spice webdav proxy service is running in services.msc.

Leave a Reply Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Как хранить файлы в установленной общей папке?

Я запускаю виртуальную машину рабочей станции Fedora на узле Ubuntu.
Я создал папку /home/cl/share в гостевой системе и установил общую папку /media/cl/system/virtual/share в качестве пользователя root, следуя инструкциям linux-kvm :

Я могу получить доступ (чтение) файлов и папок из общих папок, но я не могу писать им.

Пример: я пытаюсь сохранить файл mount-share.txt в папку /home/cl/share

Обе папки (хост и гость) имеют права на чтение и запись, тем не менее я получаю сообщение об ошибке

  • Операционная система хоста: Ubuntu 15.10 настольный 64-разрядный
  • гостевая операционная система: рабочая станция Fedora 23 64-разрядная
  • Программное обеспечение для виртуализации: qemu qemu-kvm virt-manager
  • Расположение хост-системы: 1-й встроенный SSD-формат ext4
  • Место виртуального хранения: второй встроенный жесткий диск — формат NTFS
  • Расположение общих папок: 2-й встроенный жесткий диск — формат NTFS

Как я могу совместно использовать каталог между гостем и хостом и разрешить гостевой доступ для чтения и записи?

sudo chmod a+x /media/cl и sudo chmod -R 777 /media didn ‘ изменить ситуацию.

2 ответа

Я мог бы воспроизвести проблему в своей системе.
Основная проблема заключается в ограничениях ACL вашего хоста.
По этой причине измените атрибуты ACL пользователя libvirt-qemu :

Измените настройки Mode для Файловая система /хост из Passthrough на —- +: = 3 =:. + —-

Почему? Вот почему:

Ваша гостевая система работает как пользователь Mapped , а ваши настройки ACL ограничивают права доступа этого пользователя.

Правильный вывод user:libvirt-qemu:—x должен быть:

Если ваша основная цель — просто делиться файлами взад и вперед, и вы можете использовать TCP, вы можете просто делиться файлами по ssh или аналогичным.

Например, если вы перенаправляете локальный порт в разумный порт на гостевом компьютере, вы должны иметь возможность использовать этот порт для доступа. Я использую SSH /SCP.

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

И затем для доступа к виртуальной машине я использую SSH; Я открываю терминал на своем хост-компьютере:

fish или sshfs в любом Диспетчер файлов GUI, который вы используете, работает так же хорошо, пока вы устанавливаете порт.

Как правильно настроить Virt-Manager (QEMU/KVM) с гостевой Windows

В настоящее время я переключаюсь на Virt-Manager (QEMU/KVM) и оставляю VirtualBox (поскольку он медленный), но я считаю, что Virt-Manager сложно настроить. В VBox и VMware все, что вам нужно сделать, это установить гостевые дополнения, тогда все будет работать, включая отображение, общий доступ к папкам и т. Д.

Я хотел бы иметь гостя Windows (7 или 10) с хотя бы работающей сетью, драйверами дисплея и общим доступом к папкам. Настройка прохода файловой системы, похоже, не работает в гостях Windows (и я тоже устал от попыток работы Samba).

Как правильно создать гостевую ОС Windows с рабочим дисплеем и общим доступом? Может быть, я пропустил некоторые зависимости или специфические настройки Virt-Manager?

«Как» руководств я следовал:

Я попробовал nautilus-share и руководство /etc/samba/smb.conf конфигурации, и попробуйте смонтировать папку в гостевой ОС с \\IP.ADDRESS\SHARED_FOLDER , но ничего не получалось.

РЕДАКТИРОВАТЬ

К сожалению, нет поддержки 3D-ускорения для гостя Windows. Думаю, я сейчас просто остановлюсь на VirtualBox/VMware.

Для дальнейшего использования, вот моя полностью работающая настройка QEMU / KVM для работы с сетями, дисплеями и общими папками на 18.04 LTS на основе Ubuntu (в частности, Pop! OS 18.04). Изначально я использую эмулятор Android для разработки с установленным KVM. Итак, тогда я решил перейти с VBox и VMware на Virt-Manager для тестирования ОС, и в первую очередь, для программ, которые я использовал в Windows, поскольку он также предназначен для виртуальных машин на основе ядра и работает быстрее.

Настроить

1. Установите и проверьте KVM:

Требуется перезагрузка для правильной работы.

2. Установите Red Hat Virtual Machine Manager:

3. Создайте виртуальную машину Windows:

Я использую динамически распределяемый формат хранения QCOW2:

с хранилищем и сетью типа VirtIO (требуются драйверы VirtIO):

Включите файл образа драйверов VirtIO:

4. Гостевая установка Windows:

Загрузите драйверы VirtIO Storage и Network (и перейдите к стандартной установке):

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

5. Установите и настройте Samba для общего доступа к общим папкам по сети:

Установите Samba на хост-систему:

Добавьте базовую конфигурацию общих папок:

Добавьте следующие строки:

Перезапустите сервис Samba (или выполните полный reboot ):

Затем вы можете сопоставить папку в гостевой Windows с помощью \\ \Public :

6. Загрузите гостевые инструменты SPICE для дисплея и другие драйверы VirtIO и т. Д.

Затем вы можете использовать общую общую папку, чтобы установить ее на гостевую ОС Windows.

Shared папка с Windows 10 на Virt Manager

Недавно было высказано мнение, что Virtualbox фуфло и нет никакого смысла в нем даже для запуска Windows в качестве гостя.

Я задумался, и решил пропробовать поднять Windows 10 гость через Virt Manager.

И уперся в казалось бы, простейший вопрос — как создать shared папку? Кто использует винду на KVM, подскажите, как вы делаете.

ИТАК, РЕШЕНИЕ. Со встроенной в qemu самбой. Есть в треде, но там пропущен один пункт и оно не работает. Здесь — полное.

Создаем виртуальную машину с Win10 в Virt Manager, все по дефолту.

Удаляем сетевую карту (дефолтную) из оборудования.

Включаем редактирование XML в настройках Virt Manager, переходим на вкладку XML и добавляем:

И одновременно с этим — именно одновременно! Иначе никакие изменения сохраняться не будут! Меняем /path/to/folder на свой путь.

  1. Теперь сетевая карта и QXL устройство окажутся на одном слоте PCI, устраняем этот конфликт. Находим кусок и заменяем slot=«0x01» на slot=«0x03», как в примере ниже.
  1. Перезапуск systemctl libvirtd restart

7.После этого в винде:

Проводник -> Этот компьютер -> Подключить сетевой диск

Читайте также:  Список сканеров windows 10

ВАЖНО. Чтобы был доступ не только на чтение, qemu должен иметь права на работу с расшаренной папкой. А через Virt Manager он запускается по умолчанию не от имени текущего пользователя! (В отличие от прямого запуска qemu_system из консоли, как многие тут любят, и с чем проблемы нет).

Исправляем это в /etc/libvirt/qemu.conf

где username, groupname это ваш текущий пользователь и группа, которому принадлежит расшариваемая папка!

Плюс к этому — есть способ через Virtio FS, расписан тут. Подключает папку как локальный диск, без всякой самбы, и с высокой производительностью. Но — там какие-то заморочки с правами на запись, я пока не разобрался, и в этом случае перестает работать Выключить -> Сохранить (состояние виртуалки).

Вот ссылка на источник, из которого брался процесс настройки для этого случая

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

Потому что я за 10 лет попыток так и не понял этот кошмар с однострочником на полэкрана.

К тому же, при запуске из консоли qemu-system все то же самое — qemu не запускает самбу, никаких сообщений об ошибке нет.

Я уже давно понял, что не для меня. К сожалению я давно вышел из возраста, когда на десктопе запускал софт из консоли командами на полэкрана. А теперь мне работать надо, а ее страдать херотой. Благо, любая другая вириуалка элементарно работает без этого маразма с невозможностью за 2 дня полключить папку.

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

Бридж на kvm по умолчанию такой, что гость и хост друг друга не видят. Так что надо не лениться и проверить.

Я не осилил qemu/kvm + samba, простите меня. На самом деле я хороший.

И все. Не надо таких нервов.

Я не знаю как еще объяснить. Мне не нужна самба (в гробу я ее видел кстати, но сейчас не об этом), мне нужна папка с хоста на госте.

Если для этого внутри автоматически при запуске виртуалки запускается самба и все само работает через нее — это меня устраивает. А поднимать самбу ради виртуалки я не вижу смысла. К тому же меня от ее конфигов тошнит.

А как это поможет? Я и так через virt manager делаю.

Да осиль уже. Черт бы побрал этот развратный виртуал-бокс!

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

Вот -net user,smb= отлично подходит, но жто не работает.

А вот это уже крайне интересно. Спасибо!

А вот это уже крайне интересно

Аллилуйя! Ну коль ты уже коснулся мизинцем qemu/kvm, то устанавливай виртуалки в lvm тома. Не смей! Не смей использовать qcow образы. И тогда ты поймешь, сын, за что так любят qemu/kvm.

А самба-то стоит? А каталог как указан? Вообще ж не видно, что и как ты запускаешь.

Вот как запускается через virt manager, это из его лога.

Ставлю на то, что эта опция отключает запуск smbd.

Если я правильно понял https://libvirt.org/kbase/qemu-passthrough-security.html, тебе должно помочь set seccomp_sandbox = 0.

Но это не точно.

Ох блин, действительно в этом дело! Все заработало.

ls-h

Что я сделал. Пусть изначально у нас виртуалка в Virt Manager для Win10 с настройками по умолчанию.

  1. Я удалил сетевую карту (дефолтную) из оборудования.
  2. В XML добавил:
  1. Перезапуск systemctl libvirtd restart

После этого в винде:

Проводник -> Этот компьютер -> Подключить сетевой диск

Свали на винфак, вендузоед.

Дурачок, я на линуксе и тут дольше тебя.

Спасибо. В принципе у меня на хосте samba есть и с ней вышло даже проще, чем с отдельной в qemu. С NFS тоже без проблем прошло, одну строку в конфиг и права на директорию поменять. Но меня больше всего заинтересовал вариант через virtio. Кстати, у тебя какая версия qemu? На Arch, по идеи, должна быть свежая и virtio-fs должно заработать. Скорость там однозначно больше, чем по samba или NFS. И, насколько я понимаю, шара будет выглядеть как локальный диск.

Ну вот, это же совсем другое дело! Ну почему никто из защитников KVM и опускателей VirtualBox ни в одном треде сразу не мог об этом сказать.

post-factum

Ведь это отличный, самый адекватный и удобный способ иметь общие папки! Не требуется никакой самбы, ни встроенной, ни внешней. Вообще красота, и диск как локальный — а в VirtualBox он сетевой, с сопутствующими проблемами.

У меня qemu 5.1.0. Все настроил, все работает, единственное — пишут что с 5.0 можно без NUMA, но Virt Manager без NUMA не дает сделать конфиг, пришлось с ней.

Итак, начнем утреннее воскресное богослужение секты Пердоликов Черной Консоли (ПКЧ).

Раскомментируем memory_backing_dir по дефолту в /etc/libvirt/qemu.conf

В XML конфиге модифицируем тег CPU, чтобы стало так

  1. В блок добавляем, заменяем путь на свой. Я добавлял через GUI устройство «файловая система», затем в XML добавил строчку . Перед этим должна быть добавлена NUMA, иначе Virt Manager выдает ошибку.

Запускаем винду. В диспетчере устройств появится устройство хранения данных без драйвера. Нажимаем «Обновить драйвер», подсовываем папку viofs/w10/amd64 с iso образа VirtIO (в Arch Linux этот iso ставится пакетом AURа). Ставится драйвер, появляется устройство VirtIO FS.

Папку viofs/w10/amd64 с iso диска копируем куда-нибудь, например в C:\Program Files.

Создаем службу, которая будет монтировать диск. В консоли Администратора (cmd запущенная от имени администратора) вводим

Запускаем эту службу, либо перезагружаем винду. В «Этот компьютер» появится диск с содержимым шареной папки.

Во имя редхата, Торвальдса и святого RMS, админь!

Радость оказалась несколько преждевременной.

Во-первых, какие-то непонятки с правами — из винды доступ «только чтение». Ну это я думаю можно решить если разобраться.

Главное — с virtio-fs не работает функция «сохранить состояние виртуалки», которая для меня ключевая. Поэтому возвращаюсь на вариант со встроенной самбой.

Нет, все. Пошло это чертово корявое уродство нахрен! Это недоразумение создано только лишь чтобы издеваться над людьми.

Все эти шаги, которые я расписывал — они больше не работают. Не знаю почему. Не вносятся изменения в XML больше в этом дебильном Virt Manager. Все сношу и остаюсь на Virtualbox.

Читайте также:  Точка доступа йота windows

Всему же есть предел, два дня долбиться из-за элементарной функции которая должна делаться одной кнопкой и просто все это время потратить впустую…

Я тебе virtiofs не предлагал потому, что оно довольно сырое. Даже чтобы завести его удобно только с линуксами, нужно поиметь боль.

Юзай самбу и не болей.

Так я не могу юзать самбу — теперь изменения в XML, которые я делал для встроенной самбы — не вносятся. Хотя вот только что они вносились. Ну и зачем я все это расписывал как дурачок… Люди почитают, у них ничего не получится и только плеваться будут.

Запускать отдельную самбу — это бл%:?% не серьезно. Мне не нужна самба на ноутбуке. Мне нужна шареная папка. Долбаная папка, и я уже два дня блина пытаюсь это сделать! Вашу мать…

Запускать виртуалки из консоли либо скриптами на десктопе — я могу написать что это, но меня забанят. Хотя, пусть забанят, надоело все это дерьмо.

А мне вот интересно, чем ваш менеджмент там занимается?

Ну реально, ну вот, ну кааак? Ну даже если набрать самых дешевых индусов на оценку пользовательских качеств программных продуктов, чтобы они сравнили virt manager с конкурентами и написали предложения по улучшению.

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

А чо ты истеришь? Наслушался тут экспертов с красными глазами? (Это не про пост-фактума, это про «евангелистов» из интерентов, которые вещают о небывалых высотах качествах и легкости освоения линукса.

А так да. самый простой выход и дешевый по времени — прочитать туториал про самбу. Я тоже начал читать, а потом психанул откатился назад на винду. И тут как из союза в какой техасский супермаркет прилетел в 1987 году.

самый простой выход и дешевый по времени — прочитать туториал про самбу

Ответ неверный. Самый простой выход — установить виртуалбокс. Там все это делается одной кнопкой и используется мной более 10 лет без нареканий.

Я тоже начал читать, а потом психанул откатился назад на винду.

Я про линукс ничего вообще-то не пишу. У меня линукс как основная система используется 16 лет как. Так что я бы попросил без подобных предложений.

Все претензии тут даже не к KVM и qemu, которые сами по себе — отличные приложения, особенно на серверах, а к Virt Manager.

Но как альтернативу виртуалбоксу я рассматриваю только Virt Manager. Консольные утилиты и баш скрипты вместо виртуалбокса — это просто вызывает у меня гомерический хохот. У меня тут не сервер и не хостинг, вообще-то. Это ноутбук, и софт на нем должен быть соответствующий — десктопный. Благо, в линуксе в таком софте недостатка нет.

лiл, тогда попробуй aqemu Ж8-) Но там всё еще веселее, чем в вирт-менеджере.

Да ну его в зад. Я уже понял что все это фуфло, для виртуалки с виндой на десктопе лучше виртуалбокс.

Ох, вот и тема про похороникс и Х сервер появилась. Но блин, как его развивать, если ломается наглухо обратная совместимость, например, с карточками 2010 года, которые винда переваривает вполне сносно, с их DX10.

Это очень хорошо, что только патчат и патчат, иначе пришлось бы топать за непоняттно чем.

Если ты о красношапке, то мы ж заабандонили виртманагер ☺. Теперь все на cockpit.

Я понимаю, что хочется клац-клац и збс, но чем твоё клац-клац в виртуалбоксе отличается от моего alt+enter для нового терминала, ctrl+r для поиска и «win»+enter чтобы запустить именно тот скрипт для виртуалки, который виндовый, — я не знаю. КМК, у меня выйдет быстрее даже.

Сравни клац-клац с состоянием когда нет ни скрипта, ни знания как его написать.

У VB кстати тоже есть консольный интерфейс. Некоторые вещи, например конверсия образов, делаются только через него

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

Не ну а зачем я тогда свой скрипт публикую?

И зачем сюда захожу, когда спрашивают? Ведь спрашивают же.

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

Во-вторых, дело не заканчивается на запуске виртуалки. Виртуалбокс имеет кучу GUI элементов для работы с уже запущенной, включения-выключения оборудования на лету, проброса устройств, индикации активности устройств, причем даже не сворачивая окно виртуалки. В Virt Manager я даже не понял как свернуть окно не выходя из полноэкранного режима.

В третьих, виртуалбокс предоставляет пусть корявое, но 3D ускорение на виртуалке даже с виндой и даже с DirectX без всякого проброса видеокарты, которой у меня во-первых нет, во-вторых возможности проброса нет.

В четвертых, виртуалбокс хранит настройки и образы простым, понятным и предсказуемым образом, все вместе в соответствующей папке в /home/user/. При необходимости она просто копируется и переносится на другую машину, и опа оттуда запускается виртуалка. Пока я нашел XML конфиги создаваемые libvirt у меня маты кончились. А образы дисков еще в другом, совершенно не ожидаемом месте оказались.

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

Это ж не просто так взял и пришёл, когда кто-то прислал. ТС самому захотелось. А захотелось — получай.

Ой да пожалуйста, если нравится. Я ж не агитирую. Меня спросили — я ответил ☺. Жизнь есть и в другом месте тоже.

Не ну а зачем я тогда свой скрипт публикую?

Это очень характерный пример. Вот беру я этот скрипт — и что? И ничего. Мне надо его переписать под свои реалии. А для этого надо полностью заранее знать, как пишется скрипт, знать все опции qemu. Но если я это знаю, мне не нужен чужой скрипт.

Ну дык это, вот твои знания и используют. Но не все же знаю, что ты на ЛОРе обитаешь :)))

Короче, у вас там путают корпорации, где на 1 задачу — одна голова с руками и малый бизнес с его попрыгунами-контракторами, типа нашего Шульмана.

Оцените статью