Задать вопрос
  • Нужно ли ставить антивирус на Microsoft Hyper-V Server free?

    @rPman
    Нет, потому что программы на гипервизор запускать не нужно, доступ к нему должен быть закрыт фаерволом
    Ответ написан
    3 комментария
  • Я придумал свою валюту. Как мне рассчитать курс к другой валюте?

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

    Курс обмена на свободном рынке (а у тебя свободный?) - эфимерная абстракция, зависящая от ликвидности, а именно желания и готовности(и возможности, но если рынок свободный значит она есть) совершить обмен валют. Рынок это место, где клиенты могут оставить свои предложения о покупках и продажах (если примеры когда доступно только одно направление - например в ммрпг играх аукцион однонаправленный) по своим ценам (важнейшее условие, например рынок минут и гигабайтов теле2 - фикция а графики истории цен не настоящие, потому что нет возможности определить цену ниже определенной, рынок в реальности на этой цене и стоит) и возможность совершать сделки по предложенным условиям (бывает, когда участники могут только предлагать свои цены, но само исполнение берет на себя третье лицо, брокер), если клиент совершает сделку (предлагает свою цену и объем) по цене, на которую уже есть предложение, эта сделка тут же исполняется и это называется рыночная цена - это можно считать текущей ценой... так вот эта моментальная цена для покупки и продажи будет отличаться и главное зависеть от объема сделки (разница между ними - спред).

    В реальности крупные сделки (когда на рынке по близким ценам недостаточно предложений и спред увеличивается) дробят на более мелкие, и исполняют последовательно во времени, а скорость заполнения встречными предложениями - ликвидность, будет влиять на итоговую цену.

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

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

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

    p.s. красивых формул и алгоритмов поведения маркетмейкера не будет, точнее они будут сильно зависеть от твоего рынка, люди изучают экономику именно для того чтобы хотя бы понимать как это работает, ну а люди, способные прогнозировать и малипулировать рынком на вес золота и таких очень мало.
    Ответ написан
  • Какое ПО есть для управления ПК в образовательном центре?

    @rPman
    Из windows получается плохой kiosk mode (это то что вам нужно), там мест где можно вылезти из песочницы миллион, отличный пример - просмотрщик документации сделан на основе internet explorer, помню через окно помощи к приложениям помощи слабовидящим запускали проводник и любой софт на окне авторизации (с правами system само собой), ну или к примеру переход через печать выделения, стандартный диалог принтера, поиск принтера, откроет проводник, с возможностью запустить любое приложение.

    Т.е. очень сильно все будет зависеть, что за софт у вас запущен.

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

    p.s. тут где то пробегал вопрос, о какой то железке то ли игровая приставка то ли железка для одного приложения, на windows, но на столько покореженной, что вылезти куда либо невозможно... так вот там это достигалось путем удаления и подмены файлов,.. явно не штатный способ, так как любое обновление вернет все назад.
    Ответ написан
    1 комментарий
  • Где хранить данные?

    @rPman
    В своей базе данных и храни, незачем создавать новые сущности там где они не требуются
    Если базу данных трогать нельзя, создай свою, любую, вон отличный пример с sqlite, локальная база на основе файла, производительная, полнофункциональная sql (без особой переделки можно потом сменить на другую) и главное не требует никакого обслуживания и настройки.
    Ответ написан
    Комментировать
  • Как записать iso образ на флешку из-под Linux Manjaro?

    @rPman
    Если флешка и машина, на которой она будет использоваться, работает в режиме EFI, то достаточно отформатировать флешку как fat32 и распаковать на нее содержимое iso, открыв его как архив. Все делается из GUI в linux штатными инструментами, например работа с разделами, форматирование - gparted/kde patitionmanager

    Если система на флешке не умеет EFI или загружаться это будет на машине с legacy boot mbr, то есть лайфхак (я встречал только одну очень старую машину где это не сработало, речь идет о 10-15-летней материнке), просто скопировать посекторно содержимое iso на устройство, к сожалению gui для этого под linux нет (точнее есть что то типа gdiskdump но не в репозитариях, да и зачем такую простую задачу усложнять), для этого используют dd, причем iso записывается прямо на весь диск а не раздел, пользоваться такой флешкой до переформатирования можно будет только для чтения этого образа.
    Ответ написан
    2 комментария
  • Насколько правильно хранить бекапы БД на почте?

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

    Если говорить про выбор конкретного инструмента, то указанный backup2mail умеет только сохранять бакапы на почту, а вот восстанавливать придется самому. Когда речьидет о резервном копировании, в первую очередь вопрос, как ты будешь это восстанавливать и как ты будешь мониторить работу корректности резервных копий?
    Ответ написан
    Комментировать
  • Как сейчас можно отправлять электронные письма через "небезопасные приложения"?

    @rPman
    Только через приложения, поддерживающие OAuth2 (например у thunderbird поддержка есть)
    Ответ написан
    Комментировать
  • Cтоит ли делать RAID из HDD2,5 и раздела 3,5?

    @rPman
    Да такой подход оправдан, сделать софтварный рейд не на весь диск а на его часть, для критичных данных. Софтварный рейд на основе разделов умеет делать штатно windows даже не серверные ревизии (под вопросом домашние ревизии, скорее всего там это придется делать не в GUI а в консоли с помощью diskpart)

    Возможно будут сложности делать это с тем диском, на котором установлена система, но как минимум все операции доступны из какого-нибудь livecd winpe
    Ответ написан
    1 комментарий
  • Как создать виртуальный мир на основе виртуальных туров?

    @rPman
    Да, реально, но сложно, так как расстояние между 'Отсканировать реальный объект или помещение' и сделать играбельный мир на его основе - много много пота и денег.

    Вот пример статьи где помещали объект из реального мира в 3d
    Ответ написан
    Комментировать
  • Почему VPN-программы не работают через прокси?

    @rPman
    Потому что об этом не подумали их разработчики, особенность работы с прокси такова что приложение должно уметь работать с соответствующим протоколом (и обычно это не так просто как кажется).
    Нормальные vpn, типа openvpn, умеют работать через прокси (как http с поддержкой connect так и socks)
    Ответ написан
  • Как, используя PHP, скачать страницу с динамической подгрузкой?

    @rPman
    У тебя 2 основных способа:
    1. разобраться в том как работает этот сайт, какие http запросы отправляет, как их собирает (можно отследить в инспекторе в браузере по F12 закладка network, можно сохранить запросы в json . har файл и анализировать позже, в худшем случае придется анализировать js код) и написать свое приложение, которое будет отправлять те же самые запросы, библиотек полно, например curl, есть одноименная утилита так и поддержка в языках программирования, в т.ч. на php, кстати в инспекторе браузера, нажав правую кнопку мыши на запросе можно скопировать curl команду для его повтора.

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

    2. используя полноценный браузер, например инжектить свой javascript на его страницу с помощью расширения или вставив код прямо в консоль, или используя удаленное управление из своей программы, например selenium

    этот подход заметно проще, например javscript который будет нажимать на кнопку Подписаться на странице хабр qna:
    $('.btn_subscribe').click()
    Помимо всего, этот способ позволяет обойти большинство защит от автоматизации, так как это буквально кликать мышкой по кнопкам но главный недостаток - на каждого пользователя будет требоваться полноценный браузер (иногда можно сэкономить), что очень затратно по ресурсам
    Еще одна проблема этого способа - нет универсального способа определить момент, когда окончилась загрузка страницы, в каждом случае придется выявлять самостоятельно критерии (например появление определенного html элемента), большинство просто выставляют таймаут по больше, но если будут проблемы с интернетом или на стороне веб сервиса, этот подход даст сбой.
    Ответ написан
  • Почему после синего экрана не удается запустить windows 10?

    @rPman
    Изначально была проблема в синем экране.

    Изначально нужно сказать - 'Вот работало, я сделал что то и появился синий экран'. Что произошло между 'работало' и 'перестало'?
    Я решил переустановить Винду,а именно при запуске нажать ф5 и снести диск под ноль
    чистая установка (сброс до заводских настроек) дает с высокой вероятностью гарантии что причина проблемы не программная а аппаратная

    Чтобы окончательно удостовериться что конфиг более менее рабочий (и причина точно в драйверах или комбинации программ) - запусти livecd linux, да это не совсем в полной мере позволит протестировать GPU (хотя есть способы) но даст хоть какой то ответ (например на случай если проблему создал именно windows)
    Ответ написан
    Комментировать
  • Платёжную систему на сайт, какую выбрать?

    @rPman
    Пользуйся криптовалютами, стейблкоины, размещенные на блокчейне можно отслеживать без необходимости их пересылать 'сайту'
    Ответ написан
    Комментировать
  • Как правильно пропарсить лабиринт в граф?

    @rPman
    Лабиринт в форме - ячейка это либо стена либо проход (0/1)?

    Заводим класс - 'Вершина графа', ребра которого - его параметры ссылок на Смежные вершины, для каждой стороны вверх, вниз, налево и направо. Если нужно выявление замкнутых подмножеств, то добавляем параметр - номер подмножества (значение 0 - неизвестно)

    Создаем временную матрицу для хранения вершин (можно добавить параметр в объект ячейки матрицы, если такой есть) с пустыми/нулевыми значениями
    Пробегаем по матрице лабиринта, на каждую пустую ячейку (проход) создаем вершину графа, пусть перебираем матрицу сверху вниз и слева направо, то для каждой такой ячейки смотрим наличие прохода слева и сверху, если есть, добавляем соответственно ссылки на слева и сверху, а для их вершин ссылку на текущую созданную соответственно справа и снизу.

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

    В результате когда пройдем по всем ячейкам матрицы, у нас будет готовый список графов, ячейки которого пронумерованы (ну не по порядку, будут пропуски номеров), понадобится еще проход, чтобы записать в список эти группы, и можно удалять временную матрицу вершин
    Ответ написан
    Комментировать
  • Как защититься от любых махинаций с донатной валютой?

    @rPman
    Важно как ты получаешь уведомление об окончании просмотра, колбек должен отправить рекламная сеть
    https://support.google.com/admob/answer/9603226?hl=ru

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

    Если всю информацию о игроке хранить на сервере, то мест где можно схитрить не будет, максимум пользователь может не видеть рекламу, но время ждать придется
    Ответ написан
    Комментировать
  • Стоит ли делать кэширование результата запроса из бд?

    @rPman
    Подумай хорошенько, где ты собираешься кешировать и как инвалидировать кеш (проверять что данные в кеше устарели), получишь ответ на этот вопрос почти сразу

    Второй вопрос очень важный, как запускается код бота, в режиме получил запрос (реакция от пользователя) и завершил процесс либо процесс запускается как сервис и работает в единственном экземпляре (тоже важно, так как бывает что то типа кластера, но явно не твой случай)?

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

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

    Вот от сюда и думай, что хранить, где хранить надо ли делать запрос в базу или можно из памяти и т.п.
    Ответ написан
    2 комментария
  • Как сделать бекап ubuntu 18.04 для удаленного развертывания из образа?

    @rPman
    Не каждая вас такое позволит, например на базе kvm можно простым tar сделать копию

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

    Не kvm (типа openvz/lxc с паравиртуализацией) может создать проблемы, с восстановлением, смотреть по месту

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

    @rPman
    Хост - однозначно linux, это на случай совсем проблем с windows (получить мертвую виртуалку гораздо безболезненее чем получить в принципе мертвый парк машин), либо готовый xen либо kvm, можно даже virtualbox (вот уж с чем справится любой будущий админ но не рекомендую), мне нравится не готовый гипервизор а полноценный linux с запущенным на нем libvirt, машины можно настраивать как с полной виртуализацией так и lxc контейнеры.

    Планируй постепенную замену windows решений на linux (раньше об этом говорилось как гипотетический сценарий, теперь - совсем неиллюзорный ближайшего будущего), реалии таковы что иначе можно в один момент получить нерабочее решение, и чинить будет именно в этот момент сложнее всего. У linux просто больше возможностей для разрешения проблем (да и самих проблем больше).

    По отказоустойчивости, если сеть между машинами выше гигабит, можно настроить файловый кластер (любой), виртуальные машины спокойно будут мигрировать в пределах кластера по клику, но из коробки красиво обычно все это доступно только если хранилище на NAS (iscsi), иначе ручками. Баы данных (sql) при наличии возможности настройки master-slave/master репликации, лучше держать не на кластерной fs, да в этом случае восстановление после сбоя потребует больше телодвижений, но эти решения просто эффективнее и шустрее работают.

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

    Бакапы инкрементальные на nas, любыми средствами, можно как средствами хост машины так изнутри виртуалки (если сеть гетерогенная получится, то будут разные инструменты для win и для linux, но зато не будет привязки к гипервизору, что очень полезно в долгосрочной перспективе)

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

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

    @rPman
    stream remote должен быть запущен внутри виртуальной машины
    но в принципе этот способ будет давать накладные расходы виртуалки (10%-30% на cpu и вплодь до невозможности игры из-за gpu)

    настоятельно рекомендую вместо запуска игры в витуалке запустить ее нативно, использовав на выбор:
    1. ibik aster, никакого удаленного управления по сети, нативная работа игр и программ, десктопная версия windows (не серверная) при этом из мощного компьютера легко можно сделать с 10 рабочих мест (на самом деле без ограничений, сколько железо позволит), достаточно подключить нужное количество мониторов, клавиатур и мышек, 10-20 метров без особых затрат (дальше понадобятся удлинители, например при 100 метрах цены в 10-20 т.р. только за кабель монитора). Умеет работать с 1 gpu (когда то давно так успешно запускали какую то ммрпг на двоих)
    Недостаток - одновременно одна и та же игра может не запуститься, так как к этому не готовы античиты (но советую все же попробовать, запускать игру под разными пользователями windows, установив ее в разные каталоги, да неэффективно по месту на диске, но в частных случаях это тоже можно решить)
    2. ibikaster + steam remote - то же самое, только игровое место транслируется с помощью steam (мне кажется у них самый эффективный алгоритм трансляции видео в пределах локальной сети)
    3. rdp - штатный протокол удаленного управления, не всякая 3d игра сможет корректно использовать видеоускоритель, если будет запущена в окне удаленного рабочего стола, но к примеру старые 2d игры вполне идут, отзывчивость в таком режиме, при наличии хорошей локальной сети (гигабит) - очень хорошая
    ограничение десктопных windows на одновременное подключение снимается утилитой rdpwrap

    p.s. одновременно несколько рабочих мест как ibik aster можно сделать бесплатно на linux с помощью ее штатного инструмента multiseat (на каждое рабочее место своя видеокарта) а с помощью xserver xephyr и в пределах одной видекарты (но придется поковыряться), а там возможно ваша игра уже поддерживается официально (вот к примеру только что в офф стим клиенте установил ark survival ребенку, идет даже шустрее чем на win) или не официально с помощью wine (но античит почти наверняка помешает)

    Ну и штатно xserver умеет транслировать видео по сети (поковырять настройки, убрать шифрование и сжатие), я помню очень давно для теста запускал кажется quake, оно в принципе работало и даже не лагало (просто не высокий fps) отзывчивость была явно выше vnc/rdp, но там использовался ускоритель клиента, сейчас наверное это можно как то настроить
    Ответ написан
    2 комментария
  • Если я в Гугле изменю свое местоположение, то смогу ли я зайти к примеру в Инстарграм? То есть будет ли работать смена геолокации как VPN?

    @rPman
    в 99.9999% случаев нет
    каждый сервис самостоятельно определяет твою геолокацию и не только по ip адресу или тому что ты укажешь в профиле

    ну а в данном случае гугл никак не связан с инстаграммом, а значит смена каких либо настроек в аккаунте гугла не повлияет
    Ответ написан
    1 комментарий