Задать вопрос
  • Виндовс бут менеджер стоит на одном диске, а сама винда на другом?

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

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

    @rPman
    До нескольких терабайт, при условии что сайтом очень активно пользуются, сотни мегабайт трафика и т.п. - самое дешевое это использовать свое хранилище, на основе hdd (при большой нужде - ssd), настраивать raid1 или raid5, используя минимально возможное количество дисков на массив (т.е. если 10 дисков то делать либо 2 рейда по 5 дисков либо три по 3 диска, не делать один огромный рейд - особенно если это hdd, он будет медленный). Хранить в виде файлов как они должны отдаваться, метаинформацию - в базе данных.

    Если дисков в своем хранилище больше 20, или если сетевой трафик очень маленький, условно за сутки один-два пользователя смотрят фоточек на десяток другой гб. либо если суммарно хранимый объем превышает десятки-сотни терабайт, то строить свое хранилище становится значительно дороже и лучше идти в облака. Самое популярное это амазон s3, в его формате такие услуги предлгают и российские провайдеры типа селектела или яндекса. Тарификация там двойная - за сетевой трафик (по разному на загрузку и выгрузку) и за хранение от объема.
    Ответ написан
    7 комментариев
  • VirtualBox как правильно настроить сеть?

    @rPman
    Скорее всего ip адрес детектировался через WebRTC технологию браузера, она работает по udp и минует прокси. Так же, если прокси http, они могут добросовестно сообщать ip клиента, в соответствующих заголовках. Еще есть dns leak, dns так же должно резолвиться через прокси (соответствующая настройка в браузере).

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

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

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

    При этом, работать все будет нативно, без прослоек, т.е. можно запускать 3d приложения/игры, никаких лагов и задержек.

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

    Необходимо к одному компьютеру подключить нужное количество мониторов (видеокарты обычно имеют 3-4 порта, можно в одну машину вставить любые самые дешевые gpu, хоть через рейзеры), клавиатур и мышек (usb удленители, в т.ч. есть по ethernet кабелю до 200 метров). Приложение ibik aster (примерно в 100 раз дешевле лицензий на windows server) и настраиваешь рабочие места - каждому свой монитор, клавиатуру, мышку, звуковуха (если использовать телевизор с динамиками, то по hdmi будет идти звук) и даже свой ip адрес (там как то не совсем корректно реализовано но в каких то случаях работает).

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

    p.s. Само собой, то же самое можно сделать на linux бесплатно. multiseat штатными утилитами если 1 gpu на одно рабочее место, если же на одну видеокарту нужно несколько рабочих мест, тогда сложнее, с помощью xephyr (это xserver в окне) и чуть чуть скриптов.

    upd. кстати, это можно совместить с vnc/rustdesk/... настраиваешь фейковые мониторы (заглушки стоят 100-200р), без клавиатуры и мышки, каждое рабочее место настраиваешь свой vnc, и к этому монстру можно подключаться удаленно по сети. Тонкие клиенты можно сделать хоть из смартфона/смарт_тв
    Ответ написан
    1 комментарий
  • Как называется видеоплеер с AI переводом?

    @rPman
    Формально такое можно собрать из открытых данных и кода.

    Модель для распознавания речи whisper от openai, есть даже реализация на процессоре whisper.cpp

    Переводчик от facebook - nnlb, у нее даже маленькая версия работает на процессоре быстро со сносным переводом. Модель заточена на перевод коротких фраз, идеально для субтитров.

    И при должном везении это даже будет работать на лету на cpu, готовой реализации именно плеера я не видел, но по отдельности полно на гитхабе.

    P s. Осторожно с лицензиями, они не открытые и применимость моделей для бизнеса нужно изучать
    Ответ написан
    Комментировать
  • Можно ли сделать предварительный торрент файл?

    @rPman
    Тебе нужен p2p метод раздачи и загрузки файлов с возможностью поиска файлов. Тогда можно искать файл по имени и перекачивать его Из современных могу предложить tixati, у него по мимо классического торрент есть и чаты, и шаринг файлов и т.п. в него встроенн веб сервер интерфейса у которого есть api, гулится на github прослойки.

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

    @rPman
    Необходимо дообучить моделью Использовать stable diffusion LoRA (гугли: создание stable diffusion lora), это механизм сохранения информации дообученной модели таким образом чтобы она занимала мало места, всякие UI типа от automatic1111 предоставляют для этого интерфейс.

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

    Чтобы идентифицировать свой стиль, добавляешь в промпты соответствующую пометку типа
    <lora:название_модели:коэффициент_влияния_например_1>


    Там их даже можно смешивать, но чем больше мешаешь дообученные модели тем хаотичнее результат.
    Ответ написан
    Комментировать
  • Как забрать с раздела 500ГБ и передать их другому разделу?

    @rPman
    Самое надежное backup -> format -> restore.

    А вообще, любые манипуляции с разделами умеет штатный gparted/kde partition manager, т.е. уменьшаешь, двигаешь, расширяешь. Совет, перед движением раздела, уменьшаешь его до максимально доступного размера, тогда перемещение будет быстрее (иначе он будет копировать все данные, включая пустые, но это было давно, возможно сейчас он умнее и свободное место не копирует).

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

    Стадию backup настоятельно рекомендую делать в любом случае!
    Ответ написан
    2 комментария
  • Как правильно замедлить трафик на Raspberry?

    @rPman
    можно перевести сетевую карту в более медленное соединение, скорость будет на аппаратном уровне занижена
    ethtool enp3s0 -s autoneg on speed 1000 duplex full

    вместо enp3s0 поставь нужное сетевое устройство (список ip ad), вместо 1000 подставь 10 станет 10мбит
    список доступных режимов:
    ethtool enp3s0
    Ответ написан
    2 комментария
  • Можно ли корректно забэкпить БД Postgres в Proxmox?

    @rPman
    Если в момент создания снапшота ты штатно останавливал 1c (и в идеале всю операционную систему) то снапшот будет консистентным

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

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

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

    @rPman
    К сожалению, все тайминги за пределами 2400Мг считаются слишком крутыми, и в принципе работоспособность на этих частотах, не говоря уже о многоканальном режиме - очень и очень шатка. Очень много должно сойтись звезд чтобы все заработало.

    Например, даже не с младшим чипсетом на геймерской материнке GIGABYTE Z690 GAMING X DDR4, Socket1700, Intel Z690 у меня не заводятся GSkill F4-3600C18-32GTZN на своих штатных частотах во вторых парах разъемов (т.е. в первые разъемы вставляешь - работают на 3600c18 а в другие разъемы - нет, только на легаси минималках 2400 (я перебирал кстати и другие планки, проблема очевидно в материнке и это не брак у них мало какие комбинации работают в офф листе поддержки).
    Ответ написан
  • Как получить доступ до расшаренных папок на удалённом ПК без ВПН?

    @rPman
    Webdav.
    Настраивается даже на не серверных ревизиях win, установкой штатного IIS.
    Диски webdav так же штатного подключаются в windows без дополнительного софта. Возможно будет проблемы с производительностью и не гибкостью прав доступа.
    Ответ написан
    Комментировать
  • Можно ли сделать выделение цветом последних изменений в ячейке?

    @rPman
    Вручную сравнивать с ревизией, получать ее https://developers.google.com/drive/api/reference/... там ещё метод list для получения ревизий.

    Если что мне такой метод кажется сложным. Лучше в документе на onchange менять цвет ячейки а раз в сутки его сбрасывать
    Ответ написан
  • Возможно ли автоматически конвертировать большой проект с Java на C++?

    @rPman
    Все верно тебе ответили - ручками.

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

    Результат будет хуже чем если все делать руками но возможно самую тупую но объемную работу можно будет взять от туда.

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

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

    @rPman
    $_SERVER['REMOTE_ADDR'] устанавливает твой веб сервер, ему вы доверяете.
    Но, если пользователь заходит через прокси сервер - то тут будет выходной ip адрес этого прокси.

    Если прокси сервер не скрывает информацию о своих клиентах то
    $_SERVER['HTTP_X_FORWARDED_FOR'] и $_SERVER['HTTP_CLIENT_IP'] должны содержать ожидаемое, но это значит нужно доверять этому прокси серверу.

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

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

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

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

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

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

    @rPman
    нет конечно.
    с такими мизерными мощностями ты блок будешь искать десятилетиями, т.е. никогда

    Если у тебя нет друзей с мощностями раз в 100 выше, даже думать обэтом не имеет смысла.

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

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

    @rPman
    Объединение каналов с целью повышения скорости существует, называется по разному - link aggregation, trunk, linux bonding (последнее - настраивается штатно в любом linux, именно этот вариант я рекомендую, правда возни в этом случае тьма - поднимать vpn, нужен полноценный tap интерфейс, для каждого модема а затем на сервере и на клиенте объединять их в bonding, само собой простым роутером тут не обойдешься).

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

    Т.е. помимо поиска железки нужно еще проверять, а скорость от их vpn адекватная? 50мбит это очень значительная скорость.

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

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

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

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

    @rPman
    Скопировать через буфер можно только неформатированный текст и только текущие +-10 страниц (вручную можно но долго и нудно, потом сшивать).
    1. Реверсить их вьювер долго и дорого.
    2. Скринить странички - для личного использования подойдет (набор картинок, соединить в pdf и читать не проблема, но железные слабые читалки могут такие не прожевать), сделать не программисту можно с помощью любой автоматизации, например autoit. Логика следующая - открываешь нужный сайт в максимальном размере на полный экран (полный экран и настроить По ширине страницы), затем продумываешь свои действия (мышь/клавиатура) такими, чтобы если их повторять, копировалось все содержимое без пропусков и повторов, в данном случае это кнопка PageDown и копирование экрана (можно по количеству страниц посчитать сколько это будет действий)

    В коде autoit это будет for loop
    For $i = 1 To 100500
    ...
    Next


    шлешь нажатие кнопки
    Send('{PGDN}')

    ждешь секунду (там примерно каждые 10 страниц генерация и удаление старых) sleep

    делаешь скрин с экрана
    _ScreenCapture_Capture(StringFormat('%09i', $i) & '.png', 0, 0, @DesktopWidth, @DesktopHeight, False)

    нужно подобрать размеры чтобы лишнее не копировать
    StringFormat тут добавляет к номеру слева нули, чтобы при сшивании порядок не был 1 -> 11 -> 2 -> 3....

    по итогу работы получишь тысячу картинок, объединяешь их с помощью imagemagic
    magick *.png out.pdf

    3. способ - их pdf просмотрщик генерирует валидный html для текста (с картинками сложнее),
    css selector
    $('#pageContainer2 > .textLayer').innerHTML
    тут номер у pageContainer это номер страницы, но в один момент времени заполнены текстом только текущие видимые +- поэтому код нужно будет написать, чтобы корректно в нужный момент времени читать нужные

    Можно конечно заморочиться и запилить selenium приложение которое будет листать странички и собирать html-ку, можно в полуручном режиме прямо в браузере в консоли написать пару строчек, собирая текст в localStorage (он ограничен 5-мб кажется). html код там прямо такой (по кускам текста как они были в pdf)
    Кликать на следующую страничку - $('#next').click()

    <div style="left: 83.5342px; top: 384.732px; font-size: 20.5963px; font-family: serif; transform: scaleX(0.793798);" data-canvas-width="404.5723586629188">Стенограмма  Нюрнбергского  процесса.  Том </div>

    т.е. останется только стили добавить или скопировать их с сайта и готовая отформатированная html будет готова
    Ответ написан
    Комментировать