Задать вопрос
  • Какой лучше RAID сделать на 4 дисковом NAS для дома?

    @rPman
    raid5 - это возможность без опаски потерять один диск
    raid6 - возможность потерять два диска

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

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

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

    @rPman
    machine learning
    чтобы обучаться, логично особых мощностей не требуется но есть нюанс.

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

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

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

    Т.е. знания в machine learning это вот эта борьба, а не умение использовать фреймворк и загружать туда картинки.

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

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

    @rPman
    Низкоуровневое форматирование - это нужны утилиты от производителя, у каждого свои.
    ssd диск можно 'отформатировать' запустив команду trim на весь диск (утилита blkdiscard)

    Вторая команда неправильная, /dev/zero возвращает бесконечные нули, а /dev/null нельзя читать, только бесконечно что угодно в него записывать

    Чтобы подготовить диск к продаже, dd if=/dev/zero of=/dev/sdX. более чем достаточно.
    С бэдами ничего не сделаешь, они будут видны в отчетах смарт (причем еще до их появления), такой диск только на свалку/запчасти ремонтникам (продавайте на авито, могут купить как донор, приложив скрин SMART).
    Ответ написан
    3 комментария
  • Как можно сделать откат и повтор OOP?

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

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

    Так же возможно сочетание обоих подходов, для оптимизации ресурсов.
    Ответ написан
    Комментировать
  • Почему чтение базы данных SQLite, параллельно записи в нее, медленное?

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

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

    Да да, не обязательно пользоваться attach database, и да за локами и уже не атомарными транзакциями придется самому следить и прочее... просто нужно понимать где можно этим пренебречь а где остановиться и все же выбрать готовый мощный инструмент вида mysql/postgres/oracle...
    Ответ написан
    Комментировать
  • Как правильно отправлять header, get и post запросы при парсинге, чтобы не банили?

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

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

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

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

    А так. Организуешь машину (например виртуалка на смартфоне), раздающую dhcp и tftpd для pxe network boot, собственно по сети только загрузочный диск (боюсь для windows придется попотеть но в теории это возможно).

    Для linux подобная схема позволяет вводить парольную фаразу удаленно, подключившись по ssh к мини серверу в момент загрузки, например с того же смартфона. Т.е. вся возня в настройке подобной схемы - инструменты, которые позволяли бы проконтролировать со смартфона что именно к нужному железу произошло подключение и нет прослойки злоумышленника/подмены этого железа.
    Ответ написан
    Комментировать
  • Windows 10 для vps?

    @rPman
    Разве вы имеете право переустанавливать windows у провайдера? Я молчу про легальность этого процесса, не много лицензий позволяют запускать windows как гость в виртуалке.

    Выбор ОС нужно делать исключительно на основе требований приложений, которые там буду запускаться. С высокой вероятностью вам нужны десктопные, значит и ОС берите дектопную.

    p.s. будет медленно (vps это не bare-metall и будете делить его с другими), не будет поддержки 2D-3D ускорения (достаточно поработать с приложениями, рисующими графику, да тот же дубльгис запустите) и будет лагать (из-за задержки сети), ни о каком комфорте тут речи не идет.

    p.p.s. Если использовать операционную систему от провайдера, если у провайдера есть поддержка 3d ускорителя (они обычно дороже раз в 10 сравнимых по мощности с игровыми), то у вас есть шанс получить поддержку графики в приложениях (обычно это cad) и даже играх, но сетевые лаги все равно сожрут все впечатление, а цены таких решений добьют окончательно.
    Ответ написан
  • Как поженить php8 и apache24?

    @rPman
    Сообщение об ошибке 'не найден указанный модуль'

    Настраивать вручную apache и php под windows это какая то форма мазохизма да?
    Выбирайте на выбор:

    * cygwin <-- рекомендуется, очень качественно поддерживают весь стек утилит linux, удобный gui
    * msys
    * wsl <-- это вообще linux позволяет запустить почти полноценный да еще и без виртуализации (как wine в linux для windows)
    * поставьте же наконец себе linux в виртуалке, это пара минут шевеления мышкой без каких либо знаний

    А еще можно не ставить apache, особенно если вы туда не лезете и вам нужно просто отлаживать свои скрипты локально, запускайте встроенный в php веб сервер:
    php -S 0.0.0.0:8080
    Ответ написан
    4 комментария
  • Как в классе использовать global?

    @rPman
    global может использоваться только внутри методов или функций, т.е.
    $a = 'test';
    
    class Cls {
    
      public function __construct($a) {
        global $a;
        $this->a = $a;
      }
      public function printer(){
        global $a;
        echo $this->a;
      }
    }
    
    $get = new Cls($a);
    $get->printer();


    Использование global - очень неверная стратегия, и ее нужно избегать всеми силами....

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

    Если прямо надо сильно глобальную переменную и лень писать global в каждом методе, пользуйся функциями, определенных глобально, их будет видно везде. Пример реализации сиквенса:
    function next_seq() {
      static id=0;
      return id++;
    }

    или даже возвращающего целые объекты или массивы
    function yoyo() {
      static $o=false;
      if($o===false) $o=new MyCoolObject();
      return $o;
    }
    использовать:
    yoyo()->myCoolMethod();


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

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

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

    @rPman
    для этого из $code удаляю по 1 символу
    так заведи еще одну переменную для этого и скопируй туда $code
    Ответ написан
  • Как работает генератор?

    @rPman
    Ответ написан
    Комментировать
  • Всё-таки Linux или WSL?

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

    Я встречал странные глюки при использовании wsl, файл физически присутствующий на диске не мог быть удален или прочитан (file not found), не мог быть пересоздан (file exists) и т.п., причем это похоже проблема со стороны windows, и лечится рестартом хоста.

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

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

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

    Вы можете представить что поднимаете своп на основе GPU RAM или используете ее как диск? Вы знаете что можете использовать GPU подсистему удаленно, по сети, причем это штатный инструмент (xserver сетевой сервер) без необходимости покупки дорогого серверного оборудования и софта (с большой буквы, ограничение у windows исключительно программное). 10 человек за одной машиной, физически не удаленный терминал (10 мониторов, 10 клавиатур и мышек) без покупки софта, как было бы для windows (спасибо ibik такой софт есть). Вы наверное не пробовали настроить кластер в linux, представьте что вы работаете в окружении представляющем для вас одну машину, но по факту являющейся распределенным кластером (кстати этот инструмент не так эффективен как ручное управление но факт есть факт)
    Ответ написан
    2 комментария
  • Как организовать файл подкачки на сервере Hyper-v?

    @rPman
    Разместить свап на более дешевом hdd хранилище, подключив отдельным разделом?

    Если приложением перестанет хватать оперативной памяти, их скорость так и так упадет катастрофически, и какая вам разница в 10 раз это будет или в 100?

    p.s. для windows vm хост разве нет инструментов по организации кеширования с помощью ssd медленных hdd. Т.е. используете везде обычные медленные диски, с кешем на основе всех ваших ssd дисков.

    Для linux, например, bcache, - штатный инструмент, стабильный и бесплатный.
    Ответ написан
    2 комментария
  • Может ли провайдер изменить протокол на транспортном уровне и прочитать ваш трафик?

    @rPman
    - если браузер (или любое другое приложение с root превилегиями, например антивирус) сливает данные провайдеру/специальный центр
    - если вы установили в браузере расширение, которое сливает данные в специальный центр

    ... то вас не защитит ни https, ни tor, ни крутые пароли и т.п.

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

    Чистый и надежный софт у вас на компе это залог незаметности... закрытым остается вопрос, а можно ли доверять чужим бинарникам в принципе? ведь слежка за своими гражданами в приоритете не только у стран третьего мира но и у вполне себе стран с высокими демократическими ценностями (тег сарказм).
    Ответ написан
    Комментировать
  • Почему не установился Grub во время инсталляции Solus Linux?

    @rPman
    Даже если вам удастся установить два загрузчика на один диск, ждите что с очередным обновлением windows его затрет, это было и не однократно.

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

    Чтобы uefi работало вам нужны следующие разделы для gpt (не mbr) дисков, которые выбирают для дисков больше 2Тб:
    bios boot 1Мб - нужен чтобы разместить grub (не нужен если таблица разделов старого типа mbr)
    efi boot vfat
    linux boot 512Mb

    В теории, если все делать вручную, можно совместить linux и efi boot в одном разделе, но gui инсталлеры так не умеют.

    И ВАЖНО! Чтобы настроить linux uefi, сам инсталятор нужно загружать в режиме uefi а не legacy boot (так как иначе не будет работать efimgr утилита grub и выдает странные ошибки)
    Ответ написан
    Комментировать
  • Программа открывается за пределами окна, как вылечить?

    @rPman
    Возможно нужного шрифта в windows 7 нет, и подставляется 'близкий по написанию' (или какой то дефолтный) у которого размеры совсем другие.

    p.s. это на чем написано это приложение?
    Ответ написан
    1 комментарий
  • Есть ли порядок жестких дисков в материнской плате?

    @rPman
    Слетают настройки биос? этот не нормально!

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

    Логично решением может быть вставить ssd в разъем sata помеченный как 1.

    p.s. включите загрузку uefi, ее реализуют каждый вендор по своему и вполне возможно станут вообще плевать на порядок дисков, выискивая нужный boot раздел по его метке.
    Ответ написан
  • Не видит файл JS который существует, почему так происходит?

    @rPman
    Посмотри очень внимательно на пути, вполне возможно что nginx указан не тот каталог, к примеру старая копия где то лежит, забыл конфиг перенастроить

    Вон на скрине видно что в терминале каталог _nuxt/dist/... а в логах nginx _nuxt/
    Ответ написан
    Комментировать