Задать вопрос
  • Как работать с jdbc без SSL?

    shurshur
    @shurshur
    Можно добавить в cacerts какой угодно сертификат, в том числе самоподписанный. Но, вообще говоря, любая база (Oracle, Postgres, MySQL итд итп) умеет пускать без SSL.
  • Почему не работает umask?

    shurshur
    @shurshur
    Команда umask ничего не меняет в файловой системе. Настраивать надо софт (ftp/sftp/что-там-ещё).
  • Инлайн кнопка только для 1 юзера?

    shurshur
    @shurshur
    XWR, в чём исходная задача? Надо узнать, какой пользователь прислал сообщение? Смотри в c.from_user. Ещё можно передавать id пользователя, которому предназначена кнопка, в callback_data, а в обработчике проверять что одно другому соответствует. Но лучше всё же расскажи исходную задачу, тогда советы будут более целенаправленными и качественными.
  • Может ли SEO и интернет-рекламой заниматься один и тот же человек?

    shurshur
    @shurshur
    Законодательством всех (или почти всех) стран это не запрещено.
  • При запуске бота выдает ошибку AttributeError: 'NoneType' object has no attribute 'create_task' как исправить?

    shurshur
    @shurshur
    fjhghfj54, да, если ты пришёл на этот сайт, значит, тебе НУЖНО учить язык. А в такой форме твой вопрос удалят по причине "это задание, а не вопрос".

    Любой труд стоит денег. Ты пытаешься нахаляву на чужом горбу решить свою задачу, не прилагая никаких усилий и не заплатив ни копейки. Никому такие халявщики не нравятся.
  • При запуске бота выдает ошибку AttributeError: 'NoneType' object has no attribute 'create_task' как исправить?

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

    Писать программы, не зная языка программирования, это самое что ни на есть бестолковое занятие.
  • Зачем в python 3 функция format у строк?

    shurshur
    @shurshur
    Нужно ещё понимать, что далеко не всякую конструкцию мжно вставить в f-строку.
  • Как принимать смс программно?

    shurshur
    @shurshur
    Евгений Лернер, скорее всего да, хотя возможен и вариант серой интеграции, например, через региональные подразделения каких-то операторов.
  • Как подписаться на пуши чужого приложения?

    shurshur
    @shurshur
    Alex Smith, я имел в виду просто запускать приложение ПР в виртуалке через прокси (чтобы перехватывать пуши). Но может оказаться, что там и правда механизм подписки настолько простой и дырявый, что можно выдрать реквизиты из приложения и подписать тысячи треков мимо него.

    Это, конечно, всё предположения.
  • Почему Viber и WhatsApp нельзя использовать на нескольких устройствах?

    shurshur
    @shurshur
    WSGlebKavash,
    WhatsApp при установке на устройство генерирует ключ для E2E. Для работы WA в браузере они гоняют трафик через телефон. Я не изучал, как оно работает на двух устройствах, подозреваю что так же.

    В Viber есть понятие primary device и secondary device, но там трафик через одно устройство не гоняется, в чём смысл этого различия я не понимаю.
  • Почему после изменения прав для папок var, www, html перестали запускаться контейнеры docker?

    shurshur
    @shurshur
    nathan111777, для файлов право eXecute (бит 1) означает возможноть запуска, а для каталогов - возможность войти в них. Если поставить права 666 (u=rw,g=rw,o=rw) на каталог, то в него нельзя будет войти и все файлы внутри станут недоступны.

    А вот /usr/bin/sudo сломался из-за того, что для него права доступа должны быть 4755, а не 777.

    Тут проблема была в том, что рекурсивный chmod был запущен на /var, это было колоссальной ошибкой! Там дофига чего должно иметь разнообразные права доступа. Тут проще систему уже переустановить, чем разбираться неопытному пользователю. В частности, там внутри находится /var/lib/docker со всеми контейнерами, в том числе и /usr/bin/sudo контейнера php. Возможно, поможет следующее:

    systemctl stop docker
    rm -rf /var/lib/docker
    systemctl start docker
    # далее запустить с нуля docker-compose, чтобы он перекачал образа и создал контейнеры

    Но где ещё чего вылезет и как приглючит я не готов предсказывать.

    PS: Все мы делаем такие ошибки :) Я свой первый Linux (Monkey Linux с файловой системой umsdos) тоже запорол рекурсивным chmod аж от корня. Важно запомнить печальный опыт и в следующий раз тщательно думать, прежде чем что-то подобное делать.
  • Микросервисная архитектура: насколько микро? и почему не возникает проблем с долгим ожиданием?

    shurshur
    @shurshur
    topuserman, скажем, если каталог через API для клиентов не должен изменяться (чисто чтение), то приложение с доступом "на чтение" должно масштабироваться вообще без проблем, ведь оно просто читает из базы и отдаёт результат. Делить его само на части скорее всего нет никакого смысла. Можно выделять разве что всякие сервисы авторизации или биллинга запросов, чтобы основное приложение этим не занималось, и то большой вопрос, насколько это реально нужно в конкретно вашей архитектуре.

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

    shurshur
    @shurshur
    Не надо воспринимать написанное в интернете как непреложный закон. Если написано, что сервис должен делать одну задачу, это не значит, что ему запрещено делать две. Если все пишут про взаимодействие по REST, то это не значит, что другие способы взаимодействия (*RPC, *MQ, RMI итд) запрещены, наоборот, во многих задачах именно их и используют. Исходить нужно в первую очередь из практически полезных задач и уже во вторую из абстрактных мыслей о достижении идеального состояния окружающего мира.
  • Как выполнить авторизацию в аккаунта при помощи RedBeanPHP?

    shurshur
    @shurshur
    alexbprofit, тут один не-фанат уже сказал это в толерантной форме :)
  • Как сделать, чтобы бот мог увидеть пустой инлайн запрос?

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

    shurshur
    @shurshur
    Александр Маджугин, общий смысл в том, что делается cgroup (cgreate), затем, например, в iptables ставится MARK на нужную cgroup и в iproute2 делается правило from fwmark XXX lookup ТАБЛИЦА.

    Ещё одна технология, которая может применяться для всяких клёвых вещей - network namespace. Это некий аналог VRF в сетевом оборудовании, отдельный сетевой стек со своими интерфейсами, настройками и правилами.

    Вот так я сделал однажды на коленке "виртуальный роутер" на сервере безо всяких виртуалок на новогодние праздники против одной нерешённой на тот момент проблемы в сети (в итоге потом выяснился баг в циске, который надо было правильно обходить):

    NETNS=test
    IF=bond0.636
    NEWIF=macvlan0
    IP=10.160.128.39
    IPMASK=24
    NET=10.160.128.0/24
    GATEWAY=10.160.128.1
    
    # создаём namespace
    ip netns add $NETNS
    # создаём macvlan-интерфейс
    ip link add link $IF $NEWIF type macvlan mode bridge
    # переносим интерфейс в namespace
    ip link set netns $NETNS $NEWIF
    # настраиваем сеть
    ip netns exec $NETNS ip a add $IP/$IPMASK dev $NEWIF
    ip netns exec $NETNS ip link set up $NEWIF
    ip netns exec $NETNS ip ro add default via $GATEWAY


    docker, lxc и другие подобные системы вовсю используют namespaces и cgroups, но ничто не мешает использовать их самостоятельно.

    Если надо между двумя netns (например, хостовым и таким виртуальным) организовать взаимодействие, то можно сделать virtual ethernet pair и разнести интерфейсы пары в разные неймспейсы. Трафик в одном конце пары будет появляться в интерфейсе другого конца. Так можно много чего понастроить.
  • Как локально обойти VPN?

    shurshur
    @shurshur
    Александр Маджугин, в общем, есть куда и что костылять :)
  • Как подписаться на пуши чужого приложения?

    shurshur
    @shurshur
    Если бы такое было возможно, то передачей банковских паролей через пуши никто бы не занимался. Разумеется, они делают это иначе. Я вижу два варианта:

    1. Использование непубличных интеграций с ПР, в которых это уже есть.

    2. Подписка на пуши по такому же треку где-то на стороне владельцев этого приложения с параллельным отслеживанием.

    Ещё на одну вещь можно обратить внимание: часть событий из трека на самом деле инициированы не ПР, а другими почтовыми и курьерскими службами, возможно, что на самом деле из ПР в некоторых случаях ничего и не берётся
  • Как добавить пункт в New контекстного меню?

    shurshur
    @shurshur
    Насколько помню, в Windows можно было просто в каталог Templates положить пример-шаблон "пустого" файла нужного типа и он появлялся в этой менюшке.
  • Разрешено ли правилами ВК передавать через чат-бота токен?

    shurshur
    @shurshur
    Система, которая полагается на массовой передаче юзерами полного неконтролируемого доступа к своим аккаунтам третьим лицам безо всякой юридически значимой ответственности и серьёзной защиты в принципе неправильна, и если vk об этом узнает - то может применить санкции вне зависимости от того, делается это через бота или через "домен".