• Как написать программу на Python для поиска в архиве файлов pdf?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Посоветую.
    1) Возьмите elasticsearch - https://www.elastic.co
    2) в него через устанавливаете плагин "Ingest Attachment Processor Plugin" - https://www.elastic.co/guide/en/elasticsearch/plug...
    3) Закачивате в эластик свои дукументы (чтение документации приветствуется)
    4) не забудьте установить kibana для просмотра элатика, изрядно помогает в разработке.
    5) вот только теперь берете питон и через клиента для эластика - https://elasticsearch-py.readthedocs.io/en/master/ или (а вот его настоятельно рекомендую) https://elasticsearch-dsl.readthedocs.io/en/latest/ ищете в своих документах.
    6) flask или aiohttp по вкусу.
    Ответ написан
    3 комментария
  • Что такое TTL? И в чем разница 64 или 128?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Кратко, TTL устанавливает время жизни пакета. При прохождении маршрутизатора TTL уменьшается им на единицу, если у пакета TTL равен елинице, то такой пакет дальше не маршрутизируется, а отбрасывается. Другими словами, пакет с TTL равным 64, преодолеет не более 64 маршрутизаторов. Посмотреть, сколько маршрутизаторов на пути от одной системы до другой можно утитлитами tracepath/tracert/traceroute. Обычно в интернете не более 20-30 маршрутизаторов преодолевает пакет даже до очень удаленных систем.
    Ответ написан
    2 комментария
  • Где почитать про написания своих контейнеров?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Ну, начните с изучения picocontainer - picocontainer.com
    Там есть и объяснение механизма работы. Собственно, все основано на рефлексиях и DI.
    Д, вот еще парочку статей на почитать - https://www.beyondjava.net/build-dependency-inject...
    и https://academy.realm.io/posts/android-pierre-yves...
    Ответ написан
    Комментировать
  • Как на Python можно сделать визуализацию Красноярского края и Челябинской области?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Смотря что нужно от этой визуализации. Я бы сделал визуализацию на web с использованием leafletjs. Данные можно поставлять питоном, например через flask. Сами полигоны областей можно взять на openstreetmap.
    А вот ролигоны, если нужно масштабирование, хранилбы в opengis (postgres) или какй нибудь базе на основе rtree+ алгоритма поиска-хранения.
    Ответ написан
    Комментировать
  • Как формируется адрес вм в облаке приподключении по ssh?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    1) нужно на маршрутизаторе пробросить порт ssh с внешнего на внутренний.
    2) или в техподдержку
    Ответ написан
    Комментировать
  • Уязвима ли эта Captcha?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Ну, как минимум, она не работает! Проверить просто, открываете две вкладки, или два окна браузера одновременно и пробуете ввести капчу туда и туда. Результат Вас сильно поразит, а теперь откройте три-четыре окошка одновременно. Или подразумевается, что с вашим сайтом будут работать только в одноокошечном формате? Я по 5-8 вкладок на один сайт могу открывать.
    Ответ написан
    Комментировать
  • Как настроить интерфейсы на сервере, а также iptables для прозрачного прокси, который находится за роутером?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Для настройки фаервола рекомендую использовать пакет firehol - firehol.org
    Пример конфига /etc/firehol/firehol.conf (eth0 - смотрит внутрь, eth1 - наружу)
    interface eth0 mylan
        policy accept
    
    interface eth1 internet
        server smtp accept
        server http accept
        server ssh  accept
        client all  accept
    
    router mylan2internet inface eth0 outface eth1
        masquerade
        route all accept

    Перенаправить запросы на внутренний прокси не получится, либо ставите его в DMZ (и подключаете еще одну карточку или делаете VLAN), либо ставите прокси на сам сервер. С другой стороны вообще не понимаю, зачем он нужен в современном мире! Достаточно маскарадинга, как в примере.

    Настройка интерфейсов производится в файле /etc/network/interfaces, но если ставили с графической оболочкой, то настраивайте через нее, или сносите пакет NetworkManager. - https://wiki.debian.org/ru/NetworkConfiguration
    auto eth0
    iface eth0 inet static
       address 192.168.1.254/24
    
    auto eth1
    iface eth1 inet dhcp
    
    #iface eth1 inet static
    #   address 1.2.3.4/28
    #   gateway 1.2.3.5
    #   dns-nameservers 8.8.4.4 8.8.8.8
    Ответ написан
    Комментировать
  • Как выбрать способ хранения данных интернет магазина?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    На мой взгляд, архитектура хранения не очень правильная.
    Делайте две коллекции. Одна для Категорий, вторая - для Товаров.
    В Товар же добавьте поля: Бренд, Категория [array].

    По характеристикам товара - у меня они, увы, не одинаковые, поэтому храню их в Товаре в виде массива объектов
    { name: Сапог сложный
      sku: smart-shoozze-$Цвет$-$Размер$
    ....
    Характеристики: [
    {name: Цвет, value: Зеленый, type: checkboх, sku: GREEN},
    {name: Цвет, value: Красный, type: checkboх, sku: RED}
    ]
    ....
    }

    Для вывода фильтров - делаете по этому полю агрегацию.

    Если уж по существу - еще есть коллекция Остатки. А еще есть коллекция Медиафайлы.

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

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Сделайте подписанный url и сильно не беспокойтесь. Просто передавайте вместе с URL некий сессионный ключ, который будете генерировать на основе например MD5.
    А еще лучше - сделайте отдельный микросервис для вашей задачи! Можно и на PHP.
    Ответ написан
  • Как работают синонимы в Elasticsearch?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Кроме задания фильтра, еще нужно создать свой анализатор и прикрепить его к нужному полю через маппинг. Вот, в недавней статье на хабре как раз делается правильный маппинг - https://habr.com/post/428814/
    Ответ написан
    Комментировать
  • Как зашифровывают файлы/текста и расшифровывают на мобилках?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Если кратко.
    Есть синхронные шифры, есть асинхронные.
    Первые используют один и тот же ключ на стороне сервера и клиента. Например AES128
    Вторые используют пару ключей открытый/закрытый - закрытым шифруем, открытым - расшифровываем. Пример RSA.
    Практически все алгоритмы доступны и там и там, для питона например - pycrypto.
    И на почитать - https://habr.com/post/265309/
    Ответ написан
  • Как по SSH с линукса на линукс получить доступ к GUI?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Вариантов несколько.
    1) зайти на удаленный комп через ssh -X user@host Далее поосто запускать что нравится. Но в этом случае вы останетесь в том окружении, в котором работает локальный комп.
    2) настроить на удаленном компе вход по xdmcp, это делается в display-manager (какой конкретно стоит у вас не знаю, настройки у всех разные), на локальном компьютере нужно настроить локальный display-manager (DM) на доступ к удаленному сеансу.
    3) испльзовать xnest, но удаленный DM нужно также настроить на xdmcp. Здесь у вас будет окружение удаленного компа в отдельном окошке.
    4) можно на удаленный комп установить x2go, на локальном использовать клиента x2go, работать тоже будет в окошке. Да, окошко можно и на весь экран раскрыть.
    На самом деле проблема в том, что xwindow позволяет работать только одному window manager (отвечает за размещение и отрисовку окон), поэтому не получится совместить сразу десктопы и кде и гнома.
    Ответ написан
    Комментировать
  • Могут ли быть роли на разных физических серверах?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Да, можно, причем это достаточно типичный случай. У нас живут отдельно серверы и dns и kerberos и пару dhcp, правда в отдельных виртуалках, и еще всяко по разному.
    Ответ написан
    Комментировать
  • Как лучше хранить список GPS-точек в PostgreSQL 9.6 с расширением postgis?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Ваш подход гораздо лучше, как минимум тем, что в какой-то момент наверняка захочется сделать интерсекцию по трекам, ли выбрать точки внутри полигона. А с проблемой производительности можно бороться партиционированием таблиц, например по времени начала трека. Старые партиции стирать и перекидывать в архив. Ваш вариант как минимум гораздо гибче.
    Ответ написан
  • Как настроить git на собственном сервере и заменить им работу по sftp?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Да можно. У меня например все по ssh настроено. Создаете на сервере группу gitusers, в нее включаете пользователей, которым нужно дать доступ. Создаете каталог, например /opt/git , там создаете свои репозитории и устанавливаете разрашение для данной группы на чтение/запись.
    Вот здесь все подробно описано - https://raymii.org/s/tutorials/Shared_Git_reposito...

    Для просмотра репозиториев и организации групповой работы можно поставить www.redmine.org или https://trac.edgewall.org/ (или еще кучу подобного)
    А можно просто установить gitweb - https://git-scm.com/book/ru/v1/Git-%D0%BD%D0%B0-%D...

    Также можно установить комплексное решение типа https://about.gitlab.com/install/
    Ответ написан
    Комментировать
  • Энергопотребление процессора Xeon?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Да, будет потреблять больше, примерно в 2 раза. Это связано частотой. Причем будет потреблять больше на тех же самых задачах, но крутить их будет быстрее. Также и в режиме простоя будет рассеивать большую мощность, так как базовая частота у него примерно в два раза выше.
    Что касается технологий
    - turbo boost - будет поднимать частоту от базовой до максимальной на одном-нескольких ядрах
    - speed step - в зависимости от текущей загрузки может скидывать частоту (на самом деле умножитель) аж до 800 мегагерц
    - demand based switching - будет отключать неиспользуемую периферию.

    В общем, как только есть какая-то задача, которая держится в ядре "продолжительное время", то процессор сам автоматически поднимает частоту сначала до базовой, затем до максимальной на этом ядре. Если все ядра загружены, процессор будет сбрасывать частоту обратно до базовой. Если задач нет, будет скидывать частоту в зависимости от текущего уровня нагрузки (С1..С4) до минимальной. В среднем, все равно потребление процессора у вас будет в два раза больше.
    Ответ написан
    Комментировать
  • Elasticsearch geohash - как получить данные которые были агрегированы?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Нужно будет делать еще один запрос, уже с параметрами агрегации. Тогда получите свои точки, все, без остатка.
    Ответ написан
  • Как настроить уведомления на viber?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Да, есть REST сервис у самого viber. Можно из любого скрипта или программы посылать сообщения. Полное описание здесь - https://developers.viber.com/docs/api/rest-bot-api...
    В zabbix нужно настроить событие и привязать к нему свой скрипт, который будет посылать сообщения. Да, также это можно делать и из питона - https://developers.viber.com/docs/api/python-bot-api/

    Как пример - вот как подключить SMS, по аналогии делается и для viber.
    Ответ написан
    Комментировать
  • Как настроить мультикластер Ceph?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Ой, нет, такого не делал. Но теоретически я бы развернул или в виртуалках KVM или в контейнерах LXC. В виртуалках точно развернется. Делаете для каждого кластера по выделенному VLAN, и нужные виртуалки туда и подключаете. К виртуалкам подключаете диски/ Также можно попробовать и в LXC сделать.
    А собственно, разве правами доступа нельзя разрулить один кластер? Делаете нужное количество пулов, и на каждый пул - свои права доступа клиентам.
    Ответ написан
  • Как установить zabbix на ubuntu 18.04.1?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Ух, вот зачем заббикс?! Возьмите influxdb + grafana - для хранения и отображения, telegraf и или collectd для сбора данных, и kapacitor для обработки алертов.
    И так, influxdb + telegraf + kapacitor берутся с https://www.influxdata.com
    Grafana c https://grafana.com

    1) Ставите influxdb + grafana на сервере мониторинга
    2) telegraf - на серверах для сбора данных с устройств и самих серверов (можно собирать и через collectd)
    3) ставите kapacitor и настраиваете алерты и тревоги, и отправляете их обратно в influxdb по срабатыванию (а также в телеграм, email и куда угодно!)
    4) создаете нужные дашбоарды в графане, там не толкьо графики, а еще и таблицы.

    Все! При этом у меня автоматически подхватывается новое устройство или сервер. Настройка и установка раза в два-три проще, чем zabbix!
    Вот без таблиц
    5bca24eb78b27720963410.png
    Ответ написан
    6 комментариев