Задать вопрос
  • Как получить цвет пользователя в telegram на python?

    shurshur
    @shurshur
    EgorKhabarov, очевидно, что этот бот не использует Bot API для получения подобной информации.
  • OC для маршрутизации на x86-64?

    shurshur
    @shurshur
    Bermut, если всё так сложно, то на любой системе придётся писать скрипты и мучиться с недостающим функционалом. Так что ещё вопрос, что будет лучше...
  • OC для маршрутизации на x86-64?

    shurshur
    @shurshur
    Взять Linux и на нём всё настроить. Ни один комбайн не умеет столько, сколько умеет полноценная система.
  • Где найти такой тип record SRV?

    shurshur
    @shurshur
    Руслан Федосеев, да, я когда начинал писать комментарий, хотел про него упомянуть но потом забыл. В каком-то смысле jabber пример даже лучше, потому что в отличие от AD это не один-единственный софт от одного производителя, а реальный базар многообразного софта, в котором, тем не менее, SRV реализуется практически всегда.
  • Как перенаправить вывод strace в tail?

    shurshur
    @shurshur
    Вы специально совсем не читаете вопрос пользователя? Ему не это нужно...
  • Где найти такой тип record SRV?

    shurshur
    @shurshur
    mayton2019, в реальном мире SRV мало кто поддерживает, потому что нельзя угадать, подумали ли об этом авторы конечного софта. Например, далеко не каждая почтовая программа догадывается, что бывает запись _imap._.tcp у домена. И ладно если это что-то для автонастройки, как в приведённом примере, а если бы это было что-то, что без SRV-записи не работало бы?

    Исключения, конечно, есть. Например, jabber-клиенты и jabber-серверы неплохо поддерживают SRV, потому что там указывается адрес сервера куда посылать сообщения на домен - нечто подобное MX для почты. Клиент или сервер, не поддерживающий SRV-записей, в мире jabber был бы не очень интересен, так как сервер jabber может находиться не на том же физическом сервере, куда указывает основная A или CNAME запись домена.

    А netflix, конечно же, не заинтересован публиковать в SRV-ззписях свою внутреннюю кухню.
  • Как правильно задать интервал для формулы a³+b³=c³+1?

    shurshur
    @shurshur
    Корень, я не мазохист регаться чтоб забанили...
  • Как реализовать вместо рандома очередь, 1, 2, 3, 4 и т.д.?

    shurshur
    @shurshur
    ld6666666666666, можно счётчик хранить в самом скрипте, в базе итд, ну а если это телеграм-бот есть довольно эффектное решение - брать update_id запроса или message_id сообщения и выводить "Да" если он делится на 9. Правда, в этом случае ротация будет общая на всех пользователей. Плюс возможны спецэффекты, если будут прилетать события и сообщения других типов. Если надо каждому пользователю свой счётчик то это не поможет.
  • Как правильно задать интервал для формулы a³+b³=c³+1?

    shurshur
    @shurshur
    Корень, я не зарегистрирован на dxdy.ru. И на производстве медалек никогда не работал :)
  • Как перебрать все подкаталоги рекурсивной функцией по заданному условию?

    shurshur
    @shurshur
    kkolorid, можно взять да и попробовать. Но вообще для таких операций не особо важно, будет она выполняться секунду или 10. Больше времени на написание и отладку уйдёт, чем на собственно поиск этих файлов.
  • В чëм сейчас пишут документацию?

    shurshur
    @shurshur
    Если кто не знает, TeX по мнению его автора надо читать как ГРЕЧЕСКОЕ слово.
  • Можно ли использовать цикл for и файл с массивами?

    shurshur
    @shurshur
    Кстати, называть модуль именем встроенного типа не очень разумно.
  • Почему расшаренный принтер не сканирует на втором пк?

    shurshur
    @shurshur
    Да, бывает стороннее ПО, как от производителей сканеров/МФУ, так и универсальное.
  • Возможно ли получить белый IP бесплатно?

    shurshur
    @shurshur
    Есть сервисы типа ngrok, которые позволяют сделать бесплатный проброс. Не супер удобно, зато дёшево и сердито.

    Если провайдер не даёт белого IP, проще держать виртуалку за 100-200 рублей и с неё VPN кидать до домашнего сервера. Заодно будет удалённый доступ домой. В том числе можно иметь виртуалку, ресурсов которой не хватит для тех самых ботов, но хватит для проксирования.
  • Как правильно передать данные?

    shurshur
    @shurshur
    Виктор Таран, я не разраб, я админ. Когда у тебя десятки серверов и регулярно появляются новые, причём у тебя также и десятки админов, которым нужно что-то иногда накатить/поменять, то разворачивание скриптиками превращается в кошмар.

    У нас уже давно есть куча ролей и тасков в ansible, которыми мы управляем инфраструктурой. Когда я пришёл в компанию, админ был всего один и у него конечно же было много скриптиков, которые позволяли удобно создавать/мигрировать зоны на Solaris 10 и ещё много чего сверх того :) Сейчас у нас отдел на 30 человек, из которых 2/3 неизбежно используют ansible (исключая сетевиков, DBA, офисных эникейщиков и начальника), потому что это удобно, надёжно и универсально.

    Вот, например, два таска в роли proxy:

    - name: set_fact nginx_proxy_ports
      set_fact:
        nginx_proxy_ports: { 2775, 2776, 5235, 8443, 4443, 4444, 4447, 5443, 6443, 7443, 9443, 9090, 6250, 6251, 6252, 6253 }
    
    - name: Set selinux ports for nginx
      seport:
        ports: "{{ item }}"
        proto: tcp
        setype: http_port_t
        state: present
        reload: yes
      with_items: "{{ nginx_proxy_ports }}"


    Сколько бы пришлось писать и отлаживать скрипт, который бы сделал то же самое? А ведь ansible не только это сделает хорошо, но также идемпотентно (ничего не сломает при повторном запуске) и корректно упадёт при любой ошибке без каких-либо специальных усилий по обработке ошибок.

    В этой роли 20 тасков, которые за 5 минут превращают свежеарендованную виртуалку в прокси-сервер с правильным конфигом и набором софта (nginx, squid, selinux, логи и logrotate, сертификаты итд). Отдельно у нас суперроль common на 118 правил, которые настраивают sshd, почтовый релей, sysctl, ulimits, selinux, sudo, ntp, logrotate, docker, предустанавливаемый обязательный софт итд итп. Есть роли для установки агента мониторинга, для деплоя нод кластеров kubernetes и mesos, для consul/keepalived/envoy/hdfs/elk... Только что с удивлением узнал, что даже виртуалки через ansible создаются на гипервизорах (нашёл роль vm_create). У нас даже пользователи и DNS через ansible раскатываются... (По пользователям давно обсуждается внедрение LDAP, но админов всё равно придётся иметь в ansible как минимум для внешних серверов, куда LDAP так просто не затянуть, а по DNS обсуждали и вяло тестировали powerdns, чтобы не файлами оперировать, и ни к чему так и не пришли пока, но кстати деплой powerdns через ansible уже есть).

    Я иногда думаю начать использовать ansible и для личных серваков, но сразу становится лень просто потому, что их мало (один дома и два арендованы) и они сильно разные, мне одному их ковырять проще руками. Если бы у меня было их много и на них нужно было бы делать одинаковые вещи, я бы уже давно начал бы писать плейбуки, потому что это лучший способ добиться надёжного и эффективного единообразия без безумных костылей.
  • Параллельно звонок на телефон и IP и обычный?

    shurshur
    @shurshur
    ZOKIDINuz, тогда попросить его чтобы зарегался. Мистических способов связи не существует.

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

    shurshur
    @shurshur
    ZOKIDINuz, ответ выше хоть и короткий, но правильный. Нельзя на одном устройстве одновременно держать два звонка. Да и зачем это делать тоже непонятно.

    Какая РЕАЛЬНАЯ проблема стоит? Из неё и надо исходить. Если волнует платность обычных звонков, то просто переместиться на звонки в мессенджерах, которые бесплатны. Если волнует расходуемый при таких звонках трафик, то отказаться от звонков через мессенджеры и звонить обычными звонками. Или посмотреть в сторону наличия у своего оператора тарифных опций по безлимитному трафику в мессенджеры (у некоторых такое бывает - или включено в какие-то тарифы, или как отдельная услуга).
  • Как отправлять массово 150 асинхронных запросов в минуту через pool, при этом чтобы была задержка в 150 запросов в минуту?

    shurshur
    @shurshur
    Володимир, самый что ни на есть простой способ - делать sleep (1/150) и запускать очередной асинхронный запрос. Тогда в секунду будет делаться 150 асинхронных запросов.
  • Как правильно передать данные?

    shurshur
    @shurshur
    Виктор Таран, если json не сложноструктурированный, а просто набор фиксированного количества параметров, и хочется файликом, то я бы рекомендовал условный заранее правильно экранированный env-файл, который можно было бы включить через source. Или файл, где параметры построчно указаны, а читается он через read с правильным IFS (если точно известно какие символы не будут встречаться в данных, можно использовать и символ в качестве разделителя вместо переноса строки).

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

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