Задать вопрос
  • Какой роутер способный в 1000mbps в режиме NAT?

    @rPman
    Я бы рассматривал вариант с x86 платформой, так как arm железки обычно часть работы перекладывают на сопроцессор, ограничивая функционал, т..е. гигабит вывозить будет при особых условиях.

    x86 же на базе какой-нибудь mitx/micro-atx материнки со встроенным процессором intel celeron J4xxx j6xxx и гигабитными сетевухами (подобрать по деньгам) может и 4гбита прожевать, даже usb вариант может оказаться лучше чем специализированные железки, особенно когда считаешь деньги. Потребление таких железок 15ватт у процессора плюс периферия, и размеры там в основном из-за требования по поиску atx питания (они есть но не такой хороший выбор как с большими) и красивого корпуса.

    Так как это x86 платформа, там и памяти можно 16гб (вроде бы старые был захардкоженный лимит в 8гб но вроде бы последние модели убрали) или даже все 32, и задач можно повесить больше чем роутер.
    Ответ написан
    4 комментария
  • Можно ли скачать публичную папку из яндекс диска без официального клиента?

    @rPman
    была утилита ydiskarc, попробуйте, может она еще работает?
    pip install --upgrade ydiskarc
    пример использования
    ydiskarc sync --url <public_url> -o <local_directory>

    --------
    Можно вручную загрузить все файлы из публичного каталога по их ссылке просто обычным wget:
    у вас есть публичная ссылка (каталога или файла, получать при клике на три точки на файле в яндекс диск -> опубликовать -> скопировать) вы формируете из этой ссылки:
    https://disk.yandex.ru/d/xxxxxx
    с помощью этой
    https://cloud-api.yandex.net/v1/disk/public/resources/download?public_key=

    просто добавив вашу yandex ссылку в конец после public_key=
    https://cloud-api.yandex.net/v1/disk/public/resources/download?public_key=https://disk.yandex.ru/d/xxxxxx

    и скачиваете вручную в браузере или с помощью wget и получаете json файл примерно такого вида:
    {"method":"GET","href":"...длинная...ссылка...","templated":false}

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

    так же можно написать утилиту, которая переберет рекурсивно ссылку с этой https://cloud-api.yandex.net/v1/disk/public/resour... и будет загружать файлы по отдельности, делов то поговорить с бесплатным ИИ (с такими примитивными вещами он справится, только снабжать его примерами json что выдает яндекс) и он напишет такой скрипт
    Ответ написан
    Комментировать
  • Как создать сайт с музыкой?

    @rPman
    сайт с которого скачивать - это файлы статикой, быстро оптимально просто.

    проблемы, которые собственно и приходится решать долго нудно и готового все в одном скорее всего не найти:
    1. защита от автоматизации скачивания, как только у вас есть простая ссылка для скачивания, ваш сайт станут использовать как хранилище, и вам это не понравится
    2. защита от ddos, конкуренты не дремлют, а сетевой трафик один из самых дорогих именно для мультимедиа сервисов
    3. защита от 'защитников' авторских прав, она вобще больше в юридической плоскости но есть такие что решают это полутехническими методами, бегодня по доменам и юрисдикциям, AI генерация, приватные загрузки и т.п.
    4. сайт это в первую очередь бизнес, и только потом техническая часть (фреймворки, конструкторы), его нужно рекламировать, обслуживать, решать проблемы с оплатой, возвратами, судами и т.п.

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

    @rPman
    Используй youtube api

    Получаешь список id своих каналов (в parts задаешь contentDetails и указываешь mine=true)
    в contentDetails > relatedPlaylists > uploads будет плейлист всех видео.

    Список видео по указанному плейлисту получаешь так указав part=snippet и playlistId=, id видео получишь из snippet > resourceId > videoId.

    Теперь для каждого видео (можно пакетом по 50) получаешь описание указав part=snippet, описание будет в поле items[] > description

    Полученные description можно проанализировать любым regexp или утилитами типа grep, получаешь список ссылок, пройдя по которым простейшим скриптом можно их проверить, вызвав для каждого например эту команду
    curl -I -s -o /dev/null -w "%{http_code}" https://example.com

    она вернет для указанной ссылки только код возврата (404 или 200) сделав запрос только заголовков (не загружая собственно страницу).

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

    p.p.s. есть готовые библиотеки для большинство языков типа на python но лично я не вижу смысла в таких простых задачах плодить сущности из зависимостей.
    Ответ написан
    Комментировать
  • Как проверяете приватные репозитории?

    @rPman
    Это вопрос уровня доверия и веры.

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

    Зачастую рассматривают такие вопросы с позиции ответственности, кто будет отвечать за проблемы, к которым может привести этот выбор.

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

    p.s. с появлением ИИ можно дешево и сердито покрутить промптами исходники целевого проекта. Как минимум простые трояны даже опенсорсные видят (но настоятельно рекомендуется использовать топовые, была даже новость что у одной компании, занимающейся такими исследованиями с помощью ИИ резко улучшились их внутренние бенчмарки при переходе с openai gpt4 на gpt5 притом что официальные бенчмарки от openai такого прироста в этих задачах не показывали), а так же могут указать на подозрительные места и объяснить почему.
    Ответ написан
    Комментировать
  • Как в Excel 2016 быстро, по всем ячейкам дописать нужные строки?

    @rPman
    'правильно' добавить столбец, в него написать формулу concatenate из строки url и указанного соседней ячейки, и скопировать ее во все строки, после этого старую колонку удаляем или заменяем копированием новой созданной (копировать, вставить только значения).

    В вообще в excel есть отличные макросы, а точнее инструмент их автоматического создания в код vbscript, заменяет часы гугления и чтения документации. Разбиваешь свою задачу на повторяющиеся шаги (например перешел в следующую ячейку стрелкой вниз, заменил текст, повторить пока не пустая ячейка или например номер строки не конкретное значение), в общем код получится в 3 строчки.
    Ответ написан
    Комментировать
  • Какой эмулятор Android для ПК позволяет эмулировать приём и отправку SMS?

    @rPman
    Пробовал штатный эмулятор, идущий с google android studio (идет в поставке с его штатным android sdk, можно отдельно установить)?
    красивые статьи гуглятся очень старые, поэтому советую поэкспериментировать. ИИ дает примеры:
    adb emu sms send <номер> <текст>
    а если приложения android отсылают sms то в logcat будут сообщения вида:
    В консоли или Logcat появится сообщение вроде
    D/GsmSmsDispatcher: SMS sent to <номер>
    Ответ написан
    3 комментария
  • Какие есть простенькие скрипты "HTTP over Email", чтоб поставить у себя на серваке?

    @rPman
    Эту задачу сможет решить даже слабый современный ИИ, бесплатный доступ к которому сейчас есть у всех, даже без vpn (ну а с vpn например майкрософтовский copilot который в win11 уже встроен в браузер)
    Промпт
    Нужен скрипт, который будет раз в 5 секунд по CRONу на Linux-овом VPS`e
    читать email-почтовый ящик, забирать оттуда письма с темой "url" и
    брать из текста таких писем список url`ов, скачивать эти урлы,
    класть их в zip и отсылать через почтовый ящик обратно.

    для скачивания используй внешнюю утилиту что бы можно было настраивать, в коде прописать списком констант а потом в тексте указывать какой утилитой скачать (по умолчанию подставь вариант скачать одну страницу со всеми картинками и вариант со вложенностью 1 (с помощью wget).
    Осторожно! код не проверял, если он не будет работать, нужно с ИИ поговорить, давать ему исходный промпт, текущий скрипт и сообщения об ошибках или описание что не так работает.
    duckduckgo:gpt5 скорее всего там gpt5-mini

    Ниже — готовый демон-скрипт на Python 3, который требует минимум зависимостей и выполняет описанное: каждые 5 секунд (через cron не нужно — лучше запускать как демон или systemd service; если хотите именно CRON каждые 5 секунд — cron не поддерживает интервал <1 мин, поэтому используйте loop) проверяет почту по IMAP, берет письма с темой "url", парсит список URL в теле, скачивает их с помощью настраиваемой внешней утилиты (по умолчанию два варианта с wget: "single-page-with-images" и "recursive-depth-1"), собирает скачанные файлы в ZIP и отправляет назад через SMTP. Константы вверху файла легко менять.

    Требования:

    Python 3.8+
    pip install python-dotenv requests python-magic (опционально) beautifulsoup4 lxml
    Встроенные модули: imaplib, smtplib, email, subprocess, zipfile, tempfile, os, time, re, logging

    Файл: mail_url_worker.py https://pastebin.com/AwPgiMj9

    Инструкция по использованию:

    Поместите файл, сделайте исполняемым: chmod +x mail_url_worker.py
    Установите зависимости: pip install python-dotenv beautifulsoup4 lxml
    Отредактируйте константы сверху (IMAP/SMTP/пользователь/пароли). Можно заменить на чтение из окружения.
    Убедитесь, что в DOWNLOADERS указаны те утилиты, которые установлены на сервере (wget доступен по умолчанию в большинстве Linux). Можно добавить команду для httrack, curl или иной утилиты — шаблон должен включать {url} и, при необходимости, {outdir}.
    Запустите как демон или systemd service. Пример systemd unit (коротко):
    Создайте /etc/systemd/system/mail_url_worker.service с запуском python3 /path/to/mail_url_worker.py, затем systemctl enable --now mail_url_worker

    Пояснения про выбор downloader в письме:

    Если в тексте письма есть строка типа "downloader: recursive-depth-1" или "downloader=single-page-with-images", скрипт использует соответствующий ключ из DOWNLOADERS. Иначе — DEFAULT_DOWNLOADER.

    Безопасность и ограничения:

    Скрипт запускает внешние команды — убедитесь, что принимаемые URL безопасны и что у пользователя, под которым работает скрипт, нет лишних прав.
    Таймаут на скачивание — 300 секунд для каждого вызова.
    Для больших сайтов/много URL может потребоваться больше места/памяти — адаптируйте.

    Если хотите — могу:

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

    p.s. просьба отписаться тут, работает это или нет
    Ответ написан
    1 комментарий
  • Как решить проблему организации многопользовательской работы с базой данных Microsoft Access?

    @rPman
    Итак microsoft access изначально умеет в многопользовательский доступ, если базу разместить на сетевом диске (или в пределах одного компьютера, например terminal services).

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

    Как 'база данных в файле' access однозначно опередил свое время, все в одно месте, интерфейс и хранилище, среда разработки... но майкрософт, в угоду своей visual studio похерили всю разработку.

    Настоятельно рекомендую, если вам нужно именно windows GUI и простота разработки, использовать microsoft visual studio (даже community версии будет достаточно), в нее встроены wysivyg средства по работе с базой данных (саму базу можно разрабатывать хоть в том же access но лучше в адекватных средах, кстати если все еще нужно хранилище в файле то можете еще выбрать sqlite). Сам access как база данных никаких особых проблем не создаст (кроме вендорлок само собой на windows), есть всякие dbforge с ее поддержкой.
    Ответ написан
    Комментировать
  • Какой самый дешевый роутер взять, чтобы подключить USB модем к нему и читать входящие смски?

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

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

    Создание полной копии записи базы с каждым изменением, проводимым в них. Создается новая база данных (или в той же самой базе, но имена таблиц снабжаются унифицированным преффиксом), настоятельно рекомендуется отдельное хранилище для таблиц (отдельный диск еще лучше), но не другой сервер. Каждая архивная таблица структурно (список полей и их типы) без индексов и информации об ограничениях (все поля могут быть null, кстати тут есть оговорка, если оригинальные таблицы не будут содержать null то возможна значительная оптимизация по размеру архивных таблиц) должна дублировать оригинальные, с добавлением полей - тип действия (insert/update/delete), время, пользователь или ссылка на таблицу архива сессий авторизации (в этой таблице время, пользователь и информация о его сессии например ip,..). Каждая оригинальная таблица должна быть снабжена тригером на insert/update/delete который будет дублировать предыдущее значение (или сохранять новое - оба варианта подходят но я рекомендую второе) в архивной таблице, в простом варианте дублируя всю запись, но в расширенном варианте возможно сохранение только изменившихся колонок (сравнением new и old) а для остальных полей и для delete оставлять нули и primary key.

    Все можно сделать скриптами, которые анализируют структуру базы и создают (пересоздают) тригеры и таблицы.
    Ответ написан
  • Чем заменить AnyDesk?

    @rPman
    rustdesk, есть свой сервер, win/linux/mac/android/.. все opensource.

    p.s. проблемы скорости находятся на более высоком уровне, на канальном, и если одна программа работает а другая нет, то это не фича программы, а просто 'недоработка' тех кто ломает нам интернет, сегодня работает завтра будет сломана.

    Цели скорее всего далекие от политики, просто если 'прокатило' с youtube->rutube то и с другими
    стоит 200к в год
    тоже может прокатить
    Ответ написан
    3 комментария
  • Какую в Windows стороннюю программу для копирования использовать?

    @rPman
    Вместо копирования на уровне файлов лучше использовать на уровне блочного устройства.
    в windows есть volume shadow copy (аналог снапшота) и возможность делать резервную копию на уровне блоков, есть штатный diskshadow и комерческие бакапилки типа Acronis True Image (как я понимаю требует перезагрузку) а на ходу Veeam Agent for Windows, Macrium Reflect (это что нагуглилось, сам я большой объем файлов на ntfs не держу, а в linux все проще).

    Еще есть серверная файловая система для windows - ReFS, у нее есть инструменты для блочного копирования, и наверное в сочетании с теневыми копиями тома можно делать инкрементальное копирование но красивого готового инструментария с windows нет.
    Ответ написан
  • Возможна ли работа с монитором без графического ядра?

    @rPman
    нет.

    Видеоядром называют встроенный в процессор видеоускоритель, выводы которого через ножки сокета (протокол как я понимаю близко к DP или DP++ работающий в двойном режиме, т.е. позволяющий и hdmi подключать) его выводы почти без правок проходят через материнку на ее видеовыход, если его в процессоре нет видеоускорителя, то сигнал на видеоразъем некому подавать.
    upd. на серверных материнках intel в материнскую плату может быть встроена простейшая видеокарта для IPMI (удаленное управление по сети).
    Исторически компьютеры без мониторов выводили данные на принтер. В linux на сколько я знаю до сих пор есть возможность прямо в ядре логи выводить в сериальный порт, который в свою очередь когда то был входом для принтера, а виндовый стандарт новой строки в текстовых файлах это буквально два управляющих символа - передвинуть печатающую гловку принтера в начало и прокрутить барабан с бумагой на следующую строку.

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

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

    В любом случае понадобятся навыки веб программирования.

    У меня есть совет, это проще чем реверсить чужой код (точнее анализа будет минимум), не пытаться запускать чужое веб приложение на телевизоре, пусть оно остается работать на выделенном компьютере (штатный или headless браузер), но в этом браузере инжектить свои скрипты (расширение tempermonkey/greasemonkey) или внешним управлением (например selenium) и сделать следующее:
    * написать свое веб приложение для телевизора которое будет дублировать важные элементы управления на сайте (поле ввода поиска с кнопкой поиск, список результата поиска, просмотр видео с управлением проигрывать/пауза/навигация)
    * реализовать перенос действий пользователя на приложении для телевизора на запущенное приложение на компьютере, т.е. ввел текст в поисковую строку - на оригинальном приложении симулируется ввод этого текста в его поиск, вывелся список видео на компьютере - перенес список видео на телевизор
    Код этого достаточно примитивный, с ним справится даже ИИ (топовые нейронки) толькоподробнее ТЗ составляй ну и исследованием страницы сам занимайся, так как ИИ с визуальщиной не очень.
    * для блокирования рекламы возможно будет проще покопаться в коде веб сайта и получить прямую ссылку на видео, с вероятностью 99% там готовый .m3u8 файл (с ним умеет работать тот же ffmpeg ну или вручную, это просто текстовый плейлист кусочков видео) или еще проще, с этим уже справится yt-dlp (у него несколько тысяч сайтов в списках поддержки) и уже эту ссылку можно загружать или напрямую передать на телевизор (лучше через проксирование, что бы заголовки браузера с телевизора не транслировать)

    Бонусы от этого - почти не придется реверсить чужое приложение, особенно если там разработчики заморочились с защитой, большая часть работы будет в консоли разработчика браузера
    Ответ написан
    Комментировать
  • Как скормить весь проект нейросети (grok, chatgpt, deepseek) чтобы она понимала в нём и чтоб можно было просить ее доработать что -то?

    @rPman
    Сам я этим не пользовался, так как я считаю отдавать полные бразды управления проектом текущему ИИ опрометчиво (а ещё достаточно дорого), но никто не мешает пользоваться этими инструментами как помощник.

    Если попросить perplexity поискать существующие решения (с возможностью локального запуска и даже указанием локальной модели) то он выдает список:
    aider, cline, continue, claude code, dify, flowise...
    https://www.perplexity.ai/search/proekt-po-lokalno...
    Ответ написан
    Комментировать
  • Как реализовать ежедневную полную синхронизацию операционных систем Windows 11 на рабочем и домашнем ПК?

    @rPman
    Вместо копирования можно просто таскать один и тот же диск, вставляя его в разные машины.

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

    Можно не копировать саму windows, а вручную держать идентичный набор рабочих приложений на обоих машинах, а вот пользовательский профиль синхронизировать между машинами, но для этого понадобится домен контроллер (скорее всего сработает и без него при использовании облачного аккаунтам майкрософт, но я никогда им не пользовался тут советую провести эксперименты), который можно в свою очередь поднять в сети (настоятельно рекомендую не выносить его в интернет и держать за своим vpn) причем на базе какого-нибудь linux samba или даже в виртуальной машине на смартфоне (займет это от силы несколько гигабайт но потребует ковыряние с настройками сети). Конечно этот подход не будет гарантировать что все будет работать как ожидается, ведь есть программы, которые требуют администраторский доступ и хранят настройки в общем реестре (HKLM) но с такими можно обойтись ручным (скриптами) экспортом импортом нужных веток реестра и копированием файлов, вне пользовательского профиля.

    p.s. лучший способ запускать одну и ту же windows на разных машинах - виртуализация, она же предлагает механизмы по снапшотам и синхронизации машин по сети (без полного копирования)
    Ответ написан
    Комментировать
  • Apache 2.4 и php 8.4 под windows. Почему не загружаются модули curl, openssl?

    @rPman
    'Не найден указанный модуль' пишет либо если сам .dll не найден, либо для его запуска требуются библиотеки, которых в системе нет (или нет в PATH). Такое случается, если php установлен коряво (простым копированием например для неподходящей версии ОС)/

    Установите php установщиком (а не из zip файла), он должен изменить PATH, соответственно сервис apache понадобится перезапустить, что бы новые переменные приняты были

    p.s. полный путь в этих строках писать не надо, только имя, так как путь для extension должен быть указан выше в php.ini
    Ответ написан
    2 комментария
  • Какую разметку оптического диска выбрать?

    @rPman
    При дозаписи перезаписывается список файлов на диске, т.е. при удалении файла удаляется только запись о нем в этом списке, но физически данные с диска не удаляются и место не освобождается, то же самое при перезаписи, причем как я понимаю фичи rеflink (хабр считает это слово рекламным и запрещает O_o) как у cow файловых систем, когда меняются только измененные куски файлов тут нет - файл полностью перезаписывается.

    p.s. на сколько я знаю есть формат UDF который начиная с nero buring rom поддерживает работу с перезаписываемыми дисками как с флешкой (т.е. в любой программе работает) и его поддержку штатно добавили с windows 7.

    upd. погуглил, оказывается в windows уже давно мультисессионная запись на cdrom, работаешь с диском как обычно, пишешь, а перед извлечением 'завершаешь сессию', тип формата диска mastered
    Ответ написан
  • Почему при замене ОЗУ на старом ноутбуке не запускается Windows?

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

    Почему 2 гб а не 4гб с одной плашкой - скорее всего причина в 32-битной версии windows, не серверные ревизии не умеют работать вне 4гб адресного пространства (в него включается все что связано с драйверами включая мапинг памяти видеокарты), обычно 32-битные (еще их называют x86) версии не видят больше 3гб.
    Ответ написан
    1 комментарий