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

    paran0id
    @paran0id
    Умный, но ленивый
    [Forwarded from зинка-резинка]
    Как оставлять анонимные комментарии на каналах в Телеграме?

    Создаём канал с названием, допустим «кусок говна», и когда оставляете коммент выбираете слева внизу этот канал, тк вы там админ и можете писать абсолютно с любого канала комментарии под постами.

    Готово, вы снова анонимный тролль без второй симки!
    Ответ написан
  • В каких отраслях прогеры могут быть заменены на ИИ/Конструкторами?

    paran0id
    @paran0id
    Умный, но ленивый
    Есть тенденция к переходу на low code/no code там, где можно заменить программиста менее дорогим, но компетентным технологом.

    Бизнесу не нравятся программеры, они дорого стоят и быстро утекают. Научить технолога программировать == потерять специалиста. Есть запрос на системы, позволяющие буквально программировать мышкой в конструкторе, либо кодить на куцем DSL, не имеющем ценности за пределами проекта.

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

    Ещё можно привести в пример известный многим Blender 3D, где "программирование мышкой" есть буквально на каждом этапе подготовки рендера. Художнику не нужно учить python, чтобы настроить материал, он делает это в node editor. А эти самые кубики и есть функции, со входами, выходами, аргументами и типами данных.

    Gartner подметил тренд.

    Кстати, и со стороны работников есть на это запрос - "вайти в айти, но штоп не программировать". Только больших денег там не дадут, ради этого всё и затевается.
    Ответ написан
    2 комментария
  • Как мониторить ответы сервера для Bitrix через Prometheus?

    paran0id
    @paran0id
    Умный, но ленивый
    я этим модулем пользовался:
    https://github.com/knyar/nginx-lua-prometheus
    но там тоже некоторые пляски с бубном требуются

    мой конспект по сборке с тех времён, должен помочь

    Экспортим пути к библиотекам из devel-пакетов
    export LUAJIT_LIB=/usr/lib64/
    export LUAJIT_INC=/usr/include/luajit-2.1/
    
    На боевом сервере говорим nginx -V и сохраняем опции, с которыми он был собран
    
    Заходим в папку с исходникми  nginx
    
    Берем следующую строку configure, указываем пути к сорцам скачанных модулей и lua-devel
    # ./configure --prefix=/opt/nginx --add-dynamic-module=/home/admin/work/nginx-lua/ngx_devel_kit-0.3.1rc1 --add-dynamic-module=/home/admin/work/nginx-lua/lua-nginx-module-0.10.13 --with-ld-opt="-Wl,-rpath,/usr/lib64/"
    
    а также добавляем после неё опции, с которыми был собран nginx. Получится что-то типа того:
    
    ./configure --prefix=/opt/nginx --add-dynamic-module=/home/admin/work/nginx-lua/ngx_devel_kit-0.3.1rc1 --add-dynamic-module=/home/admin/work/nginx-lua/lua-nginx-module-0.10.13 --with-ld-opt="-Wl,-rpath,/usr/lib64/" --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie'
    
    после этого делаем
    make -j
    
    и в папке objs появятся 
    ndk_http_module.so
    ngx_http_lua_module.so
    
    закидываем их на боевой сервер куда-нибудь в /usr/local/lib
    
    на сервер устанавливаем пакет luajit
    
    в главном конфиге nginx в контексте main (вне http, в самом начале) прописываем 
    load_module /usr/local/lib/ndk_http_module.so;
    load_module /usr/local/lib/ngx_http_lua_module.so;
    
    делаем nginx -t
    
    Если всё ок - рестартим и готово.
    
    Если ругается на бинарную несовместимость - перепроверить версии и параметры сборки. Они должны совпадать!

    Ответ написан
    3 комментария
  • Самое тупое, в чём тут я то ошибся?

    paran0id
    @paran0id
    Умный, но ленивый
    ERROR: Cannot find command 'git' - do you have 'git' installed and in your PATH?

    Чего же боле?
    Ответ написан
    2 комментария
  • Как количественно оценить соответствие системных ресурсов сервера требованиям и нагрузке расположенных на нем сайтов?

    paran0id
    @paran0id
    Умный, но ленивый
    Поставить систему мониторинга, замониторить веб-сервер, базу, и сам сервер (железо, ОС). Увидеть количество запросов по каждому сайту, время ответа, количество ошибок и прочее полезное, без чего в принципе нельзя держать продакшен. Дальше по обстоятельствам.
    Ответ написан
    Комментировать
  • Как устроиться devops инженером?

    paran0id
    @paran0id
    Умный, но ленивый
    Вакансий junior devops мало, потому что devops не вырастают из джунов, обычно ими становятся уже опытные админы или разработчики. Смотрите не джуновские вакансии, а просто devops engineer. Оцените требования, наверстайте недостающий опыт, сходите на собеседование. Я был просто линуксовым админом и однажды устроился на админскую вакансию в софтверную компанию, где в некотором объеме devops-методология применялась.
    Ответ написан
    Комментировать
  • Можно ли навредить серверу из docker?

    paran0id
    @paran0id Куратор тега Linux
    Умный, но ленивый
    Из криво настроенного - можно. Контейнеру должны быть квотированы ресурсы, чтобы он не мог сожрать всё доступное на сервере; контейнер должен быть непривилегированным, если нет необходимости в обратном; в контейнер не следует пробрасывать вольюмями ничего лишнего.
    Ответ написан
    Комментировать
  • Почему выдает ошибку #1050 - Table 'users' already exists?

    paran0id
    @paran0id
    Умный, но ленивый
    CREATE TABLE IF NOT EXISTS users (
    Ответ написан
    Комментировать
  • Что такое process management в DevOps и как ему обучиться?

    paran0id
    @paran0id
    Умный, но ленивый
    Речь идёт, как ни странно, об initd - системе инициализации и управления процессами в операционной системе linux. Да только вот устарел initd, и теперь ему на смену пришел systemd. Учите systemd.
    Ответ написан
    1 комментарий
  • Что лучше 3 сервера с двумя процессорами или 4 сервера но по одному процессору?

    paran0id
    @paran0id
    Умный, но ленивый
    Я бы сказал, что больше серверов - лучше. Проще будет распределить ресурс в случае выхода одного из строя, меньше соседей по серверу.
    Ответ написан
    2 комментария
  • Как рассчитать норму количества багов на проект?

    paran0id
    @paran0id
    Умный, но ленивый
    Думаю, качество продукта нужно выражать не через количество багов, а через достижение готовности (по фичам) и работоспособности (по отсутствию критических багов) продукта за оговоренный срок и бюджет.

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

    paran0id
    @paran0id
    Умный, но ленивый
    Можно задействовать https://www.netlify.com - там даже на бесплатном тарифе это работает.
    Ответ написан
    1 комментарий
  • Какая команда заменят nano в shell?

    paran0id
    @paran0id
    Умный, но ленивый
    Вам нужно установить nano. Если такой возможности нет, попробуйте vim или vi, скорее всего, он там уже установлен. В любом случае, знание vim лишним не будет.
    Ответ написан
    Комментировать
  • Как создать образ диска из linux.tar.xz?

    paran0id
    @paran0id Куратор тега Linux
    Умный, но ленивый
    На kernel.org лежит ядро linux, не являющееся само по себе операционной системой и не предназначенное для самостоятельной установки. Вам нужен один из дистрибутивов linux, например, Debian, Ubuntu или Fedora. Дистрибутивы - это сборки, включающие в себя ядро плюс набор системного и прикладного ПО.
    Ответ написан
  • Как завершить запущенную утилиту в bash скрипте?

    paran0id
    @paran0id
    Умный, но ленивый
    Вам не нужно эмулировать нажатие клавиш. Ctrl-C посылает процессу сигнал SIGINT. Вам нужно послать сигнал запущенному процессу, для этого нужно знать его PID. PID можно получить из pid-файла, если та консольная утилита его создает, либо через переменную $! (yourcommand & echo $!), либо грепнув по процессам (см. pgrep). Рассмотрите также сигналы SIGTERM и SIGKILL.
    Ответ написан
    Комментировать
  • Как поставить на планировщик задач этот код?

    paran0id
    @paran0id Куратор тега Linux
    Умный, но ленивый
    Не знаю, зачем вам понадобилось рестартить тор по планировщику, но будем считать, на то есть основания.

    Я бы добавил в unit-файл:
    RuntimeMaxSec=<сколько вам нужно>s # чтобы завершался по истечению срока
    Restart=Always # чтобы перезапускался после любого завершения
    Ответ написан
    Комментировать
  • Куда совершать релокейт из unix админа в 2022 году?

    paran0id
    @paran0id
    Умный, но ленивый
    ИМХО проще всего будет двигаться в сторону DevOps, тем более, что подготовиться можно прямо на нынешней работе. Освойте ansible, docker, kubernetes (хотя бы поверхностно), какой-нибудь модный мониторинг (zabbix или prometheus+grafana, ELK не помешает), внедрите у себя хотя бы в некритических местах. На это можно отвести полгода-год. С полученным опытом уже можно будет идти в большое ИТ.
    Ответ написан
    2 комментария
  • Как определить что нагружает CPU в определённое время?

    paran0id
    @paran0id
    Умный, но ленивый
    Можно поставить atop и настроить сохранение снапшотов информации о процессах.
    Ответ написан
    1 комментарий
  • Linux fedora для ноутбука?

    paran0id
    @paran0id Куратор тега Linux
    Умный, но ленивый
    Использую федору, у меня всё работает. Как на вашем ноутбуке будет работать - не знаю. В целом федора устраивает, за исключением относительно короткого срока поддержки версий.
    Ответ написан
    Комментировать
  • Как заGREPовать сразу несколько параметров?

    paran0id
    @paran0id Куратор тега Linux
    Умный, но ленивый
    dmidecode -t memory | grep "Speed\|Factor\|Size"
    Ответ написан
    3 комментария