Задать вопрос
  • Вопрос по надежности ZFS. Как лучше делать датасеты: со сжатием или без?

    @rPman
    чем сложнее файловая система, тем менее вероятно восстановление после сбоя.

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

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

    p.s. настоятельно не рекомендую рассчитывать на восстановление данных на основе 'что то смогу восстановить', лучше используйте raid1/5/6 (6 версию рекомендую, от 4 дисков, суммарный объем меньше на 2 диска), в этом случае вы значительно будете защищены от аппаратных сбоев на диске (но не в контроллере и не в софте).

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

    @rPman
    Нарисовать две линии, одну светлым - по толще, а другую - нужную, по тоньше
    пример

    а универсально, рисовать в памяти в битмап разрешением больше чем необходимо, и при копировании на экран - масштабировать
    Ответ написан
    Комментировать
  • Кто отвечает за безопасность VPS?

    @rPman
    Зона ответственности хостера начинается и заканчивается в лицензионном соглашении.

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

    В любом случае VPS это виртуальная машина, по факту - еще один компьютер, который ваш администратор (клиент VPS или если арендует компания, выделенный человек в ней) обязан контролировать и за который он отвечает.
    Ответ написан
    Комментировать
  • Retina 60hz или 4k 144hz? Какой монитор выбрать для работы с текстом?

    @rPman
    При работе с текстом, герцовка не имеет ни малейшего значения. Наслаждаться 'идеальным скролом' это извращение.

    А вот мерцание подсветки, матовый/глянцевый экран, цветопередача и контрастность (oled/ips/lcd), размер пиксела, соотношение сторон, выгнутость монитора и т.п. очень важны. Я к примеру видел человека, который, один раз попробовав, больше не мог отказаться от возможности повернуть монитор на бок (он становится 9:16), так и сидел (он с вордовскими документами работал), правда у него было два монитора...

    Вообще вместо одного монитора два и больше - это отличное решение, на которое заточен софт (все ОС красиво работают именно с мультимониторными конфигами с максимизированными окнами в каждом, вместо один большой экран и двигать окна по нему). Еще беда, многие приложения заточены на fullhd+24", и любые отклонения вынуждают мириться либо с глюками либо с неудобствами...

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

    @rPman
    Как исправить «лагание» 3ds Max при удалённой работе на виртуальной машине?
    Не лагающие протоколы передачи экрана (для работы с графикой), требуют минимум гигабитные сети и алгоритмы, кодирующие изображение видеокодеками.

    Простейший vnc не подойдет.

    Хорошую скорость могут дать к примеру майкрософтовский rdpx (только с серверными ревизиями windows, только с прямым доступом к серверным видеокартам), или что то типа teamviewer/anydesk, попробуй parsec, так же мне очень понравилась работа steam link remote play (бесплатно, win/linux, заточена на realtime игры, и клиенты могут работать на очень старом железе, например планшетниках android, т.е. поддержка очень качественная, хотя что то я не уверен что какая-нибудь малинка тут справится).

    Открытые решения - например sunshine+moonlight (говорят лучшая замена steam link), rustdesk


    p.s. когда графические приложения были поголовно win32 без самостоятельного рисования контролов (теперь уже 100% не так), то майкрософтовский rdp работал ну просто идеально, даже на слабых сетевых каналах

    В linux есть x2go, надстройка над xserver (который сам по себе сетевой но требует очень хорошие пинги) очень оптимизированно работает, но так же не подходит для графических приложений (тот же браузер или cad)
    Ответ написан
    2 комментария
  • Почему при разархивировании папки, где хранится файл с именем на русском языке, он превращается в символы?

    @rPman
    Больно пинать ногами того кто ДЕЛАЕТ такой кривой архив.
    7z прекрасно работает кроссплатформенно, так как имена файлов хранит по умолчанию в utf8
    Ответ написан
  • Как отправить игре клики мыши и клавиатуры в неактивном режиме?

    @rPman
    Попробуй запустить игру под linux, там симуляция нажатий из linux утилит отрабатывает в играх wine/proton как нативная, мало того, может повезти и для нескольких окон не потребуется отключать античит (для каждой игры свой wine preffix), так как игра буквально в песочнице запускается
    Ответ написан
    Комментировать
  • Как сделать чтоб Chrome на андроид не открывал новые вкладки?

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

    обычно webview это хромиум, но в принципе системными настройками можно сделать основанный на фаерфокс (gecko)
    Ответ написан
    Комментировать
  • Как обновить программу "ip" в Linux?

    @rPman
    -br это короткая нотация --brief выводит в коротком виде информацию, странно что у тебя не поддерживается но это не так критично... скорее всего вместо типовой утилиты ip используется упрощенная ее замена (экономят место на диске?)

    По поводу обновления, для начала ты брал образы тут?

    Еще момент, самые свежие образы для малинки скорее всего сделаны на древних версиях linux по причинам желания денег производителям чипов SoC и не желания не просто что то делать, нет, просто следовать лицензии opensource или хотя бы публиковать информацию о железе, что бы сообщество могло запилить самостоятельно поддержку той же gpu. Пока эта ситуация не изменится, будет грустно.

    upd. поддержка --brief появилась в 2021г в версии 5.15 смотри какие версии твоей ОС содержат эту версию или старше
    Ответ написан
    2 комментария
  • Что это за незакрепляемые окна в браузере Google Chrome? И как преобразовать их в обычную вкладку?

    @rPman
    Смутно помню в настройках есть принудительное открытие всех окон во вкладках, как минимум в firefox она есть (я не пользуюсь google chrome, а в чистом chromium такой опции я не нашел).

    Можно написать расширение или воспользоваться чем то вида greasemonkey/tempermonkey, который инежектит пользовательский скрипт на указанный сайт, а сам скрипт будет выглядеть как то так (gpt4o):
    // Сохраняем оригинальный метод window.open
    const originalWindowOpen = window.open;
    // Переопределяем метод window.open
    window.open = function(url, target, features) {
        // Если переданы параметры features для нового окна, игнорируем их
        // и открываем как вкладку.
        // Установим target "_blank", чтобы гарантировать открытие в новой вкладке.
        return originalWindowOpen.call(window, url, '_blank');
    };
    
    console.log("Переопределение window.open: Новые вызовы будут открываться как вкладки.");
    Ответ написан
    Комментировать
  • Нашел старый HDD и подключил к компу, когда включаю пк, винда не грузится, в чем может быть проблема?

    @rPman
    Не понятно как вы смотрите crystaldiskinfo диска, если при включении у вас не запускается компьютер

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

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

    Почему не запускается система, нужно смотреть сообщения на экране, если там что то типа no bootable OS или что то похожее, значит используется legacy mbr режим и после изменения порядка дисков нужно заново в биосе указать, с какого запускаться. Можно однократно без изменений в биосе нажать сразу после включения/перезагрузки F12/F11/F8/F9/Esc (одну из этих кнопок, какую - читать инструкции к материнке или выяснить перебором) и в полученном меню выбора дисков для загрузки, загрузиться.

    Если это EFI загрузка, то необходимо заново указать, на какой диск установлена ОС, сделать это можно установщиком windows (в командной строке) либо в linux утилитой efibootmgr
    Ответ написан
    4 комментария
  • Сайт работает только с мобильного интернета, как запустить с домашнего?

    @rPman
    Это сообщение о блокировки самого сайта, а точнее стандартное окно блокировки cloudflare, который выбирают администраторы сайта для защиты от ддос и в т.ч. автоматизаций.

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

    Ну и конечно можете установить на смартфон какой-либо прокси сервер, штатно в гуглплее их полно, или обычные приложения для linux pc, с помощью debian_no_root или termux или аналогов. НО в этом случае у вас не будет красивого способа подключиться к этому прокси серверу (я помню городил перенаправления портов с помощью ssh port forwarding, подключаясь со смартфона к моему домашнему ssh серверу)
    Ответ написан
    Комментировать
  • Почему яндекс добавляет каналу ТГ "РКН: иностранный владелец ресурса нарушает закон РФ"?

    @rPman
    В избирательности законодательства - т.е. 'одним все другим закон'
    Ответ написан
  • Возможно ли восстановить админские права на windows 10?

    @rPman
    Нет, для удаленного взлома нужно либо заранее заложить 'трояна' либо иметь утилиту, эксплуатирующую 0day уязвимость.

    В теории можно написать скрипт, который пользователь запустит, который пройдется по всем местам, где что то запускается с администраторскими правами (по умолчанию таких нет, но сторонний софт может установить, и если пользователь ставил его к примеру не в program files а туда где имеет доступ, то можно подменить запуск его сервисных утилит на свои), но написание такого скрипта задача не из 'дешевых'

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

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

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

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

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

    Сейчас у llama.cpp есть поддержка kv-кеша (не смотрел), и уж точно эта поддержка есть у топовых openai/anthropic/google, тогда каждый запрос у тебя будет моментальный, и токены тратиться только на название запчасти и ответ.

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

    да это долго, но простого решения тут нет, человек делать это будет еще дольше
    Ответ написан
    Комментировать
  • Как скрыть структуру таблиц postgresql от разработчика в nest.js?

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

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

    Самое 'простое' направление - перенести в эту прослойку абсолютно всю логику приложения, оставив 'снаружи' только отображение. Грубо говоря вместо таблиц users,documents,rights дать объекты-страниц/форм - авторизация пользователя, чтение, создание и редактирование документов. Помню для веб очень удачно с этим справлялись xml/xslt (между сервером и приложением гуляет xml, а в xslt описывается интерфейс, т.е. View в идеологии MVC), поддержка которых встроена в браузер до сих пор...

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

    p.s. так ли важны и ценны эти структуры данных? стоит ли их сохранение затраченных усилий?
    Ответ написан
  • Как заставить oracle linux 9 увидеть рейд 3ware 9690SA-8I?

    @rPman
    Смотришь на работающей centos 7 какой модуль ядра используется, с помощью lspci, lsmod и т.п., ищешь готовый (может он есть, даже в репах оракла, просто не установлен) или исходники, собираешь на linux oracle...

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

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

    Каждому шаблону нужно будет дать соответствие строку sql запроса в базе данных (либо подстрокой выражения)

    p.s. так ли нужно пользователям такое усложнение поиска?
    Ответ написан
    Комментировать
  • FFMPEG одновременное использование CPU и GPU для конвертирования mp4 файла в DASH?

    @rPman
    Подойдет разделить видео на части и запустить двумя процессами, с разными настройками для cpu и gpu, после же объединить полученные куски в режиме copy (на максимальной скорости диска)?

    Размеры кусков подобрать эмпирически после экспериментов, во сколько раз cpu медленнее gpu.

    Что то похожее я делал, перекодируя видео на нескольких физических машинах.
    Ответ написан
    Комментировать
  • Почему отклоняются запросы на перевод субтитров в субтитрах браузера Google Chrome?

    @rPman
    Это точно браузер делает, а не плагин какой? а то мне только яндекс браузер известен, который 'на лету' что то переводит и даже озвучивает.

    Если тебе нужны субтитры - то установи бесплатный whisper от openai, загрузи аудио с youtube (например с помощью yt-dlp) и подсунь его утилите, она выдаст сразу субтитры, которые можно скормить утубу при заливке своего видео или стороннему плееру, если видео скачать себе.

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