• Как в BASH работают логические операторы?

    Выполнение команды возвращает статус-код: 0 если всё ок, или больше, если какая-то ошибка.

    Статус ещё попадает в специальную переменную $?
    > cd non-existing
    -bash: cd: non-existing: No such file or directory
    
    > echo $?
    1
    
    > cd ~
    > echo $?
    0
    Ответ написан
    1 комментарий
  • Расчёт нагрузки и выбор сервера для Telegram бота?

    @Kirill-Gorelov
    С ума с IT
    Дружище, без обид.
    Но с таким вопросом, тебе хватит бесплатного хостинга с поддержкой ssl.
    Ни о каких нагрузках пока речи быть не может.
    Делай, развивайся, учись, все получится. На все эти нагрузки пока забей.
    Ответ написан
    3 комментария
  • Как запретить root'у нарушать квоты других пользователей?

    gbg
    @gbg Куратор тега Linux
    Любые ответы на любые вопросы
    Просто у меня программа из под рута

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

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

    Поэтому, все сервисные программы сидят исключительно под своими персональными пользователями, а уже этим пользователям выдаются права на конкретные операции.
    Ответ написан
    1 комментарий
  • Как запретить всем VPN клиентам доступ друг на друга (изолировать)?

    hanigun
    @hanigun Автор вопроса
    Правильно сформулировал вопрос и нашел ответ. Это сработало. Ничего даже не отвалилось :)
    Источник: https://qna.habr.com/q/966407
    /ip route rule
    add action=unreachable comment="Block VPN Client-to-Client access" dst-address=192.168.100.0/24 src-address=192.168.100.0/24

    Очевидно адреса поменял на свои.
    Ответ написан
    Комментировать
  • Как организовать перезапуск сервиса при падении?

    @res2001
    Developer, ex-admin
    По идее если сервис падает, то он освобождает порт.

    Это только по вашей идее.
    На самом деле порт может быть еще какое-то время занят пока не придет пакет с установленным флагом FIN или не закончится тайм-аут ожидания такого пакета. Так работает протокол TCP.
    Обычно, что бы избежать ожидания закрытия порта, порт открывают с указанием флага SO_REUSEADDR.
    Возможно программа падает потому, что происходит обрыв соединения. Возможно у вас не корректно обрабатывается эта ситуация (если вообще обрабатывается).
    На счет рестарта - возможно стоит оформить ваш сервис как виндовую службу, тогда за рестарт будет отвечать виндовый Service Manager. И не понадобится костыль в виде батника.
    Ответ написан
    Комментировать
  • Как запустить выполнение действия в скрипте Mikrotik в зависимости от записи в логах?

    Если реально нужно перехватывать события в логах реалтайме, то можно придумать один способ, правда весьма извратный и расточительный. Нужно настроить отсылку логов Syslog на локальный адрес роутера, в правилах файрвола в цепочке создать правило, которое будет перехватывать нужное сообщение с логами (по полю Content) и создавать динамическую запись address-list, а в шедулере проверять наличие такой записи и по её появлении делать какие-то действия.
    Концепт-конфиг, которой отслеживает появление в логе отправленной из какого-либо скрипта или командной строки строчки "testtest" (правила файрвола должны быть до правила, разрешающего трафик established+related):
    # создаем интерфейс, на который можно повесить ip-адрес
    /interface bridge add name=logging-bridge
    # создаем локальный ip-адрес, на который будем слать Syslog
    /ip address add address=127.0.0.2 interface=logging-bridge
    # прописываем Syslog-сервер, на который будут отправляться логи
    /system logging action add name=remote2logwarch remote=127.0.0.2 target=remote
    # задаем отправку логов ни этот сервер, в topics прописываем нужные разделы вместо script
    /system logging add action=remote2logwarch topics=script
    # создаем правило, которое создает запись в address-list при наличии нужной подстроки в полученном syslog-пакете
    /ip firewall filter add action=add-src-to-address-list address-list=_logwatch_testtest address-list-timeout=1m chain=input content=testtest dst-address=127.0.0.2 dst-port=514 protocol=udp
    # создаем шедулер, который проверяет наличие нужной записи в address-list и выполняет какие-либо действия
    /system scheduler add interval=1s name=logwatch_testtest_1sec on-event=":if [ /ip firewall address-list find where dynamic && list=\"_logwatch_testtest\" ] do={ /ip firewall address-list remove [find dynamic && list=\"_logwatch_testtest\"]; /log info \"log entry catched!\" }\r\n" policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon start-date=jan/01/2021 start-time=00:00:00
    Ответ написан
    Комментировать
  • Как спецслужбы вычисляют человека по IP, если он сидит за NAT провайдера?

    vesper-bot
    @vesper-bot
    Любитель файрволлов
    Провайдеров ЕМНИП обязали вести логи NAT-трансляций, по ним можно найти внутренний IP, по нему (с таймстампом) - порт и договор, дальше можно устраивать маски-шоу.
    Ответ написан
    3 комментария
  • Почему github, а не gitlab?

    slimus
    @slimus
    Symfony, Golang
    gitlab появился много позже чем github
    Ответ написан
    Комментировать
  • Линукс. Это взлом? Тогда как?

    gbg
    @gbg Куратор тега Linux
    Любые ответы на любые вопросы
    Главный вопрос - какой мессенджер?

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

    @KoreanGuy
    лол. Написать video streaming платформу с нуля на вебсокетах. Без обид, но одно это предложение уже говорит о том, что вы не сможете этого сделать. Стриминг не делается на tcp никогда. Вообще мало кто сможет такое сделать, а уж в одного так и подавно. Есть простое правило: если стриминг видео является не основой вашего бизнеса (как, например, у твича, юдеми, и тп), а просто каким-то доп функционалом, ни в коем случае не пишите свой велосипед. Берите vimeo и не усложняйте себе жизнь в 1000 раз.
    Ответ написан
    3 комментария
  • Что хотел сказать работодатель?

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

    caramingo
    @caramingo
    админ из русского манчестера
    Если кто то пишет в этот файл и мне нужно его очистить обычно делаю так
    > /путь/logfile.log
    Если что эта команда сотрет ВСЕ в файле!
    Ответ написан
    6 комментариев
  • Может ли пройти пинг если промежуточный роутер запретил icmp?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Если на промежуточном узле запретить транзитные ICMP-пакеты - всё, что после, отвалится. Если запретить отправленные себе - отвалится только этот хоп.
    Ответ написан
    Комментировать
  • Как часто нужна модель MVC?

    Stalker_RED
    @Stalker_RED
    Да, это полезно - написать свой фреймворк и/или CMS.
    Потом полезно сравнить его с laravel или symfony, найти чем ваш фреймворк лучше.
    Если ничем не лучше - можете его смело забросить, и переходить на что-то общеизвестное, и вот почему:

    Представим, что у вас заказали лендинг по заказу насосов, например, и вы сделали его на своем фреймворке. Через 5 лет вы сменили род деятельности, и водите экскурсии по Тасмании. Или вас укусил радиоактивный паук, и теперь вы спасаете мир, а поддержкой сайтов не занимаетесь.

    Сервис с насосами за это время вырос, они теперь еще и бурят скважины, и фильтры устанавливают и колодцы копают, и у них филиалы в 20 городах. Им нужно доработать сайт. И при поиске разработчика выясняется, что сайт ваш доработать невозможно, т.к. документации по фреймворку нет, готовых модулей совместимых нет, интеграций с 1C, google docs, microsoft sharepoint нет, и никогда не будет. И проще переписать с нуля, чем разбираться как оно у вас там устроено.

    А если бы сайт был на общеизвестном фреймворке, то гораздо проще найти и специалистов и найти готовые интеграции.

    Никто не закажет сайт на самописном фреймворке если он планирует развитие своего бизнеса и понимает что он вообще делает. То есть ваши потенциальные клиенты - это только те, кто впервые заказывает себе сайт, и вы ему смогли впарить самоделку.
    Ответ написан
    4 комментария
  • Можно ли проксировать интернет через ssh?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Можно. Так и называется - SSH-туннель.
    Ответ написан
    4 комментария
  • Есть ли какя-то среда где можно дешево выполнить приложение?

    Sanes
    @Sanes
    VDS
    Ответ написан
    Комментировать
  • Как создается серверная часть программно-аппаратного устройства?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    На каких языках пишется такая система?

    На любых языках программирования общего назначения.

    Из каких этапов состоит?

    Из разных.

    Возможно ли создать это за краткие сроки (3 месяца) чайнику?

    Зависит от чайника. Скорее всего, нет.
    Ответ написан
    Комментировать
  • Можно ли apt заставить проигнорировать определённые зависимости?

    hottabxp
    @hottabxp
    Сначала мы жили бедно, а потом нас обокрали..
    sudo apt install package1 package2 package3- package4-

    Пакеты package3 и package4 не будут установлены.
    Ответ написан
    Комментировать
  • Как прописать мой скрипт в автозагрузку Raspbian?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Для начала положи zmp в opt как это рекомендуется.
    Далее учи systemd.
    Создай файл /etc/systemd/system/zmp-tv.service
    С содержимым:
    [Unit]
    Description=ZMediaProxy tv
    After=network.target
    
    [Service]
    Type=simple
    NonBlocking=true
    WorkingDirectory=/opt
    ExecStart=/opt/zmp-linux-arm7 --host "192.168.88.99" --best http://immo.date/ero.m3u
    ExecStop=/usr/bin/killall -w zmp-linux-arm7
    Restart=on-failure
    RestartSec=10s
    TimeoutSec=120s
    
    [Install]
    WantedBy=multi-user.target


    Дальше обновляешь
    systemctl daemon-reload
    Добавляешь автозапуск
    systemctl enable zmp-tv.service
    Запускаешь
    systemctl start zmp-tv.service
    Посмотреть состояние
    systemctl status zmp-tv.service
    Посмотреть логи
    journalctl -eu zmp-tv.service
    Ответ написан
    Комментировать
  • Что стало с информацией,хранившейся на эВм СССР?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    В момент распада СССР стала информацией, хранящейся на ЭВМ России и других стран.
    Ответ написан
    Комментировать