Задать вопрос
  • Клонирование приложение windows?

    @rPman
    Именно функционал клонирования, причем запущенного, есть у систем виртуализации, если физически машины имеют одинаковое железо то, на этом даже основаны системы резервирования приложений, позволяющие не прекращать их работу (доля секунды пауза) даже после смерти одной из машин (Fault Tolerance как часть High Availability у vmware).

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

    На практике никто конечно не решает это проблему в лоб, на целевую машину производят штатную установку приложения, а затем копируется реестр (с помощью штатного regedit) из HKLM и HKCU /Software/.. и и файлы из appdata (плюс собственно файлы приложения, где их хранят)
    Ответ написан
    Комментировать
  • У меня USB-хаб 3 версии. К нему подключен внешний диск тоже USB 3.0 и мышь USB 1.1 - значит ли это что диск работает не на 3 а на 1.1?

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

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

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

    @rPman
    Правильно - не заводить систему entity-value где ни попадя, у вас там действительно новые типы данных появляются и меняются каждый день?
    Храни значения как полагается - в таблицах и колонках

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

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

    @rPman
    Осторожно с windows, оно внезапно по своему желанию может вместо включения, остановить запуск и показать картинку - 'купите нашу новую версию', а если будить из сна - загрузить обновление и самостоятельно перезагрузиться (хотя windows 10 вроде бы уже перестали этим маразмом маяться?).

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

    @rPman
    Совершенно бессмысленно серверу для такой задачи докупать оперативной памяти.
    win2016 server в качестве домен контроллера будет работать чуть ли не на 512мб, kaspersky sequrity потребует 1гб

    под описанную задачу нужно выделять самую медленную машину, и правильно сказали - резервный тоже надо

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

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

    @rPman
    Если брата с linux нет а самому в linux ковыряться нет желания, то берешь установочный диск windows той версии что у тебя стоит (включая ревизию и битность, например если стоит home версия то не получится использовать ultimate для починки), загружайся в консоль восстановления и восстанавливай загрузочный раздел

    вернется брат он вернет и починит grub

    p.s. если чинить тебе - то livecd в руки, проверяй что файлы на месте и grub-install
    Ответ написан
    Комментировать
  • БД с возможностью синхронизации внутри локальной сети, если пропадает интернет?

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

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

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

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

    Вообще понятие 'конфликтное или неточное состояние' - нормальное, в разных системах это представляется по разному, например понятие 'черновик', или статус - принято/на рассмотрении, когда есть специальные люди, приводящие базу в консистентное состояние, и этот процесс непрерывный. Полноценная поддержка всех возможных конфликтов - мечта, так или иначе это реализуют поверх и удерживают способы в голове самих пользователей, ну к примеру в базе нет возможности указать что запись дубликат, на время пока этот дуп разруливается а его связи корректируются и переносятся на один объект, будущий удаляемый помечается как удаляемый через пометку в наименовании... т.е. база статуса на это не имеет но операторы друг с другом договариваются что такие объекты не использовать
    Ответ написан
  • Как запустить проект который написан на QT windows в Linux?

    @rPman
    в подавляющем большинстве случаев приложения windows, написанные с помощью opensource библиотек и слабо завязанные на майкрософтовские (т.е. только то что идет в поставке с ос, максимум нужна правильная версия visual studio redistributable), могут работать в windows с помощью wine, либо напрямую готовый бинарник либо собираться с ее помощью

    К тому же фреймворк qt - кроссплатформенный, должен собираться везде, и дальше вопрос больше в том какие у тебя проблемы с этим возникают.

    p.s. при использовании linux, а точнее адекватные дистрибутивы типа debian/ubuntu/... с поддерживаемыми репозитариями пакетов, уже содержат в своей поставке несколько версий qt и всего ее окружения, не понятно что у тебя там от куда не скачивается
    Ответ написан
    2 комментария
  • Возможен ли запуск Windows 7 на новых материнках?

    @rPman
    говорят с этим можно что то сделать но хз на сколько это надежно
    Ответ написан
    Комментировать
  • Как обойти ограничения по количеству TCP-подключений у интернет-провайдеров?

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

    Тебе же советую заниматься подобным с VPS-ок установленных в датацентре, либо с помощью VPN перенести выход своих подключений туда где провайдер таких ограничений не делает
    Ответ написан
    1 комментарий
  • Зачем у некоторых java программ имеется exe файл запускающий jar архив?

    @rPman
    В зависимости от того, как именно создан exe файл, а точнее какая именно версия java и как распространяется вместе с приложением.

    В подавляющем большинстве случаев, windows сборки (например oracle java или или от redhat) ограничены лицензией на распространение, т.е. разработчики не имеют права распространять даже просто установщик jre вместе с приложением (полагаю можно получить персональное разрешение), а пользователь при загрузке таковой с офф сайта должен принять лицензионное соглашение.

    Так вот в java имеется официальный метод деплоя приложений без необходимости установки jre на машину (это начиналось с javafx packager и подхвачено почти всеми пакерами в т.ч. launch4j), а сама java прикладывается к приложению в виде пакета .dll (т.е. там нет ни одного exe-шника), в этом случае на машине клиента ничего не нужно настраивать и устанавливать и не требуется принимать никакие лицензии.

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

    Совершенно нормально, когда пользователь желает только согласиться с установкой программы (поверьте, были просьбы убрать даже окно подтверждения загрузки и установки от браузера, т.е. кликнул на сайте и все заработало, и запустилось и заколосилось), то, что это возможно не всегда буквально не дело пользователя, а проблемы, которые искусственно были созданы некомпетентностью разработчиков (например microsoft, до сих пор не создавших адекватной системы репозитариев, анально огороженный высер с их магазином даже рассматривать не стоит)
    Ответ написан
  • Debian и весь его траффик через proxy на другой VPS, реализуемо?

    @rPman
    гугли: transparent socks proxy iptables
    учти трафик пойдет только tcp, без пингов, udp и броадкастов
    Ответ написан
    Комментировать
  • Как настроить под windows подключение монитора вручную?

    @rPman
    Добавить кастомное разрешение можно в панели правления amd radeon settings, настройки монитора, плюсик снизу Custom resolution
    если в safe mode оно не запускается, то смотри в том меню где ты выбирал safe mode пункт - запустить в vga режиме.... добавив разрешение, оно должно сохраниться и после перезагрузки.

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

    @rPman
    В конечном счете все решает стоимость решений

    Выделенный сервер (dedicated server upd или bare metal) - это буквально физический сервер, мощности которого принадлежат тебе и твоим программам
    Виртуальный сервер (virtual private server) - это когда физический сервер делят на части и продают по отдельности, что сильно дешевле, и удобнее хостеру (он может перекидывать виртуальные машины между физическими, оптимизируя нагрузку), мало того он может оверселить, продавая и обещая больше мощности чем доступно в среднем, надеясь что пиковую нагрузку сервис клиента будет давать редко а остальное время она будет низкой (так обычно и бывает), такие машины обычно самые дешевые (когда видишь предолжения ниже ~30$ это оно самое)

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

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

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

    И еще одна услуга у хостеров - предоставление не сервера а услуги - доступа к програмному обеспечению по какому то внутреннему алгоритму тарификации (Software As A Service). Например можно приобрести услугу http сервера (или к примеру хостинг nodejs бакэнда, отдельно базы данных, сервиса бакапов и т.п., такие точно есть), без покупки самой машины, с тарификацией по запросам, трафику или по внутренним cpu тикам, при этом пользователю не важно, сколько там в реальности задействовано серверов, хостер будет обеспечивать заказанный трафик с обещанной скоростью, только плати. Такие крупные провайдеры как гугл или амазон могут встраивать в свои прайсы на такие сервисы ловушки, не изучив и не подготовившись как следует к которым можно попасть на значительное повышение стоимости, к тому же часто такой доступ еще и привязывает клиента к конкретному провайдеру, так сильно что когда придет известность и нагрузка, может не получиться легко сменить хостера на более оптимальный.
    Ответ написан
    Комментировать
  • Как добавить людей в телеграмме из других каналов?

    @rPman
    Эта операция доступна в интерфейсе в настройках самого канала (будет выдан список из контактов и всех пользователей, которые есть на каналах где ты есть)
    Код телеграм открытый, модифицируешь его, добавляя свою логику, и автоматизируешь. Или просто кликер пишешь.

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

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

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

    Это так просто не работает. Ты потратишь время и нервы народонаселения, но результата скорее всего не дождешься или он будет минимальный.
    Ответ написан
    Комментировать
  • Невозможно вносить изменения в Excel файл пока он открыт. Openpyxl. Python. Что можно сделать?

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

    львиная доля кодинга тут именно средства коммуникации IPC

    p.s. может всю логику полностью в скрипты документа запихнуть? а не писать ее на питоне (хотя VBS тот еще язык)
    Ответ написан
    Комментировать
  • Как пустить через прокси весь HTTP трафик из подсети?

    @rPman
    да это возможно, на любом дешевом сервере снаружи, где нет блокировок и фильтрации интернета, устанавливаешь vpn с поддержкой http туннелированием, например популярный openvpn это умеет, внутри ограниченной сети поднимаешь openvpn клиент по ссылке написано как настраивать

    p.s. в данном конфиге http прокси должно понимать CONNECT, с другой стороны если не понимает то https на ней бы не работало

    но даже в этом случае тоже возможно, каким либо отдельным способом настраиваешь туннель через http (на сервере снаружи должен быть поднять фиктивный веб сервер с этой фишкой)... каких только способов нет, есть к примеру туннель через ping icmp запросы, или через dns запросы
    Ответ написан
    Комментировать
  • Можно ли форматировать dvd диск?

    @rPman
    Такое возможно на основе не обычной windows а winpe, вот почитай пример инструкции но почти наверняка будут проблемы с установкой драйверов, отличных от стандартных (особенно с видеоускорителями)

    на основе winpe делали разные реаниматоры, где почти полноценная windows с тонной утилит запускалась с dvd а для записи использовалась оперативная память
    -----

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

    @rPman
    Самое простое и правильное - в файле, как есть, для удобства обслуживания в файловой системе, контейнер которой отделен от всего остального (лучше отдельный раздел или диск, но при особой бедности - файл, который можно примонтировать в любой фс, например в windows это .vhd/.vhdx образы, а в linux вообще просто образ диска в raw формате), зачем отдельное устройство? - для упрощения обслуживания, когда там будет миллион файлов... в linux настоятельно рекомендую пользоваться cow fs (btrfs/zfs/xfs) ради встроенных бесплатных транзакций на основе снапшотов, плюс инкрементальные бакапы эффективно делать.

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

    Во многих случаях рекомендуется не хранить много (десятки тысяч) файлов в одном каталоге, отсюда сразу напрашивается способ - если имя файла состоит из цифр (или hex или вообще base64, на выбор) то разбив его на фиксированной длины части можно использовать их как имена каталогов, последняя часть - имя собственно файла в них (типа /datastore/0d6a/011fc/0012.jpeg).

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

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

    p.s. ну или вот qna.habr.ru/q/10694/#answer_46206
    Ответ написан
    Комментировать
  • Апи binance ДОЛЛАР-РУБЛЬ. Найти не могу. Может кто имел дело?

    @rPman
    что значит нет?
    https://api1.binance.com/api/v3/ticker/price

    usdt_rub например или tusd_rub
    Ответ написан
    Комментировать