Задать вопрос
  • Стоит ли увеличивать ОЗУ при VirtualBox или Nox?

    @rPman
    Виртуальная машина использует только физическую память, т.е. использовать больше памяти чем есть физически, с помощью файла подкачки почти невозможно (кажется qemu умеет). Если у тебя 8гб ram то виртуальную машину можно создать на 6гб (требуется 64-битная ос).

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

    p.s. если тебе надо больше, то лучше купить физически оперативную память, стоит она дешевле гемороя, который тебе создаст файл подкачки
    Ответ написан
    1 комментарий
  • Перенос Ubuntu с SSD на NVMe, проверить NVMe?

    @rPman
    С нуля на NVMe все устанавливается
    отлично, вот у тебя и решение. ставишь с нуля, и подменяешь копированием всю ос, загрузившись с livecd с которого установка проходит.

    Так как совершенно не понятно что у тебя происходит, ты же ничего не показал, ни ошибки ни скрины, ничего... то можно только гадать.
    С высокой вероятностью причина - проблемы с установкой grub и меню загрузки efi, попытка работать с NVMe в режиме legacy, когда как в твоем конфиге загрузка с него возможна только в режиме UEFI, к сожалению чтобы хотя бы настраивать UEFI нужно в этом режиме и грузиться.
    Ответ написан
  • Почему виснет окно Устройства и принтеры?

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

    перезагрузись
    Ответ написан
  • Обработкой фото и видео занимается процессор или видеокарта?

    @rPman
    Благодаря наличию opencv (а часто привязываются к вендору видеокарты, на примере cuda от nvidia) существует возможность разработки почти любых алгоритмов (лимит размера бинарника кажется в десяток мегабайт +-) для работы на gpu, а там очень многоядерный процессор и на порядок более быстрая память (с нелинейным доступом, память делится на банки с паралельным доступом).

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

    p.s. декодирование видео чаще всего проигрыватели делают с помощью видеокарты, так как это заметно экономит энергию, это очень хорошо это видно если смотреть видео youtube в браузере без поддержки ускорения (какой-нибудь webkit встроенный в приложение), а уж 4к и выше и подавно могут быть не доступны для просмотра на cpu.
    Ответ написан
    Комментировать
  • Как реализовать регистрацию пользователей для розыгрыша?

    @rPman
    99% работы - распознавание чеков.

    Из открытых реализаций берешь Tesseract, возможно изображение пропустить через фильтры, так как обычно на чеках текст состоит из точек, и их нужно объединить в линии. Есть куча неоткрытых платных реализаций с api, просто гугли распознование чеков.

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

    @rPman
    https как раз и создан как защита от подобных атак

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

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

    @rPman
    Размер и архитектура сети плюс размер обучающей выборки.

    Не всегда количество ядер GPU оказываются решающими, большее влияние имеет размер и скорость GPU RAM.

    Первая метрика, точнее граница, ниже которой скорость обучения максимальная - объем весов сети плюс обучающая выборка должны вмещаться в оперативную память GPU.

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

    Следующая граница - обучающая выборка не влезает в GPU но вмещается в RAM, сама же нейронная сеть влезает в GPU, т.е. вычисление самой сети все еще быстрое а значит единственное ограничение - узкое горлышко между RAM и GPU.

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

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

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

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

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

    @rPman
    Если без редактирования приложения - подключи к планшетнику/смартфону аппаратную клавиатуру (переходник miniusb - usb стоит порядка 150р плюс в том же фикспрайсе за 99р купи usb расширенную цифровую клавиатуру, тебе же пользоваться ей не надо), android увидит ее и сделает ее по умолчанию при активации поля ввода, т.е. не будет выскакивать экранная.

    p.s. если совсем никак, есть симулятор bluetooth клавиатуры на основе другого android устройства (погугли их много)
    Ответ написан
    Комментировать
  • Ubuntu 20.04 не загружает графическую оболочку?

    @rPman
    в меню загрузки grub (если машина перезагружзалась по reset то меню при следующем включении появится, ну или нажать esc в первую секунду загрузки) выбрать режим восстановления, ввести пароль root (надеюсь его делали, именно для пользователя root иначе придется грузиться livecd и в chroot и прописывать пароль, хотя в этом режиме можно и без resque все сделать), затем ввести команду:
    journalctl -xf
    выдаст лог ошибок системы, стрелками просмотр, изучай, что не срабатывает

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

    Если черный экран все равно появляется в нужный момент, можно отключить лого совсем, для этого в меню загрузки grub нужно нажать 'e' и отредактировать текстовый конфиг файл выбранного пункта меню загрузки, убрав quiet splash везде где найдешь (это строка настроек ядра linux /boot/vmlinuz....) и запуститься с отредактированными настройками f10 тогда лог будет в текстовом режиме (помогает если проблема с драйверами видеокарты или с ней самой)

    в общем пока не диагностируешь проблему, решить ее не сможешь.

    p.s. данные легко копируются загрузившись с livecd, в подавляющем большинстве случаев хватает копии /home (бакап все равно весь сделай) который можно развернуть на новую установку (само собой пакеты доустанавливать вручную, так же конфигурации машины понадобятся, но их можно копировать из бакапа), и все будет работать
    Ответ написан
    2 комментария
  • Как запустить ASP.NET Core приложение без сервера?

    @rPman
    Да, на машине устанавливаешь (с поддержкой asp.net встроено в windows начиная кажется с 7, хотя возможно домашняя версия ОС потребует рукошевелений, но pro или ultimate точно есть) IIS

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

    Сертификат https так же можно установить.

    инструкции

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

    @rPman
    гуглить учись
    android enable notification light led

    первый же результат говорит о программе light manager
    Ответ написан
    Комментировать
  • Как отправлять письма по email через c++?

    @rPman
    google: c++ lib email
    откроет мир готовых библиотек по работе с почтой, выбирай на любой вкус и твою среду и компилятор.

    c++ такой язык что программы на нем достаточно многословные получаются

    p.s. первый же результат из гугла https://github.com/karastojko/mailio

    message msg;
    msg.from(mail_address("mailio library", "mailio@gmail.com"));
    msg.add_recipient(mail_address("mailio library", "mailio@gmail.com"));
    msg.subject("smtps simple message");
    msg.content("Hello, World!");
    
    smtps conn("smtp.gmail.com", 587);
    conn.authenticate("mailio@gmail.com", "mailiopass", smtps::auth_method_t::START_TLS);
    conn.submit(msg);
    это многословно?
    Ответ написан
    Комментировать
  • Как синхронизировать базы данных Test и Production?

    @rPman
    Правильно - исключить 'ручную' работу в процессе переноса релизных изменений в продакшен базу.
    Т.е. задача разработчика делать скрипты, которые будут приводить базу данных предыдущей версии к следующей, при этом это не только обновление структуры (это кстати можно сделать автоматически, сравнив базы разных версий, гуглить ddl diff, к примеру для postgres это pgadmin shema diff) но и данные, например наполнение новых полей данными или к примеру в старой версии поле было текстовое в 'свободном формате', а в новой на его основе целая структура (вырожденный пример - был адрес текстовой строкой а стал чуть ли не целым ФИАС).

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

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

    Тестовая база может быть репликой базы, ей не обязательно быть с самыми свежими данными (хотя если апдейт - фикс бага для данных, которые ввели недавно пользователи - то нужен оперативный бакап).
    p.s. Для эффективного создания реплик продакшн базы можно использовать комбинацию master-slave репликации и снапшоты файловой системы (slave базу можно кратковременно приостанавливать, создавать снапшот файловой системы и запускать из него копию базы, первая же slave реплика должна продолжать работать, накапливая изменения с продакшен)
    Ответ написан
    Комментировать
  • Как переформулировать код?

    @rPman
    если идти строго по поставленной в вопросе задачи, то можно взять список ключей объекта, взять нужный по номеру и использовать
    $items[$key][array_keys($items[$key])[1]]
    но так делать однозначно не нужно, никто не гарантирует что порядок элементов в массиве ключей останется прежним, придется все перепроверять.
    Ответ написан
    Комментировать
  • Где взять голый linux?

    @rPman
    Наиболее 'чистый линукс без графической оболочки без отпечатка какой либо компаний' - это gentoo, если речь идет об операционной системе а не о голом ядре, так как там в большинстве случаев пакеты собираются прямо из исходников, часто ссылка в .ebuild идет прямо на github. Само собой сами 'мейнтейнеры' gentoo так же оставляют отпечаток, в соответствующих патчах, подбору софта в репозитарии (portage) но в наименьшей степени, не мешая гибкости делать все это самому.

    p.s. если что графическая оболочка есть и у gentoo, по желанию, есть даже вариант с прекомпилированными бинарниками, все как вы любите - готовое на блюдечке но настроенное кем то другим.

    Самые подробные инструкции, а главное, проходя по процессу установки, начинаешь понимать как именно внутри все устроено, что очень важно для обучения. Огромное и дружелюбное сообщество, да и многие инструкции от arch подойдут, а так как при работе с gentoo появляется правильное видение концепций linux, инструкции из других linux типа ubuntu так же помогают, хотя начинаешь понимать ущербность большинства из них.

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

    Только gentoo позволяет оттюнить сборку на столько качественно, что потребление ресурсов (ram и диска) будут минимальны, на столько на сколько это в принципе возможно. И при этом очень много чего автоматизировано или снабжено удобными утилитами.

    Но и сил на это уйдет столько, что начнешь понимать, почему в мире именно этим процессом занимаются целые компании, так как в конечном счете с gentoo мейнтейнером ос становишься лично ты.
    Ответ написан
    3 комментария
  • Как устранить черный экран?

    @rPman
    панель управления - программы и компоненты
    удаляй там
    Ответ написан
    Комментировать
  • Почему не прожимаются кнопки q, f,z?

    @rPman
    Не скажу про vnc но всякие anydesk/teamviewer, которые под капотом тот же vnc но переработанный, могут странно работать если на удаленной машине и у клиента на текущий момент стоят разные раскладки клавиатуры, и еще более странно все это работает, если на удаленной машине в принципе нет текущей раскладки (не установлен соответствующий язык)
    Ответ написан
  • Возможно ли подключиться к нескольким wi-fi сетям одновременно через одну беспроводную сетевую карту?

    @rPman
    у wifi карты есть два основных режима работы managed и adhoc, первый - классический способ, подключение к роутеру, второй - подключение к таким же wifi-картам, стандарт сильно старее, максимальная скорость сильно ниже, но именно во втором режиме возможно одновременно несколько подключений.

    точно читал что некоторые карты можно использовать в режиме managed несколько подключений к сети с одним и тем же ssid, в любом случае итоговая скорость не сложится, режим работы попеременный
    Ответ написан
    Комментировать
  • Почему нет подключения в интернет на win10 без причины?

    @rPman
    Вариантов много.

    Если перезагрузка роутера временно дает интернет, значит проблема маловероятно железная, и скорее всего проблема именно в роутере, но не обязательно

    пальцем в небо - настройки ip адреса на windows 10 - статика, в сети есть еще машина, получающая от роутера ip адрес динамически (в т.ч. смартфон wifi но не важно) эта машина получает тот же адрес что и твоя машина и на обоих пропадает интернет, как раз это может происходить раз в несколько минут (как настроен dhcp)
    Ответ написан
    Комментировать
  • Как пустить трафик с определенных сайтов через IP адрес Кипра?

    @rPman
    Да, свой vps, установленный в датацентре нужной страны, завернуть свой трафик на него с помощью socks/vpn.

    Еще как вариант через мозилу настроить выход через socks и на компах настроить открытие нужных ссылок через мозилу. Трудность в том, что это придется каждому ставить и настраивать ручками (у компании нет контроллера домена и используется 50/50 маки и винда)
    socks самое простое

    Однократно настроить все равно придется, так же понадобится сервер, любой, хоть слабая машина, хоть малинка, которая будет выступать прослойкой (vpn или socks клиент, самый простой штатный клиент ssh с опцией -Dпорт), но можно сделать следующее - написать сценарий автонастройки прокси PAC, сам файл разместить хоть в майкрософтовской шаре хоть на http сервере локальном, при необходимости вручную менять его (это простой текстовый файл - javascript скрипт), подправляя нужные условия.

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

    Поэтому когда нужно выходить с другого ip адреса, то лучше прокси использовать сразу на весь трафик, а для того чтобы на все свои задачи не нагружать прокси, использовать для этого второй браузер (второй профиль но удобнее отдельный пользователь ОС и отдельная установка, так как это позволит запустить два одновременно браузера), так же есть вариант - использовать браузер запущенный на сервере, подключившись удаленно к нему (linux x2go или windows rdp/citrix), тем более там есть инструменты запуска приложений, когда они выглядят визуально как отдельное приложение а не как окно-на всю машину.
    Ответ написан
    Комментировать