• Как настроить Wireguard на OpenWRT, чтобы соединение автоматически восстанавливалось после разрыва соединения?

    @Pumbax
    #! /usr/bin/env sh
    
    host="у меня тут адрес сервера"
    wait=10
    max_tries=3
    
    up_cmd="ifup wg0"
    down_cmd="ifdown wg0"
    
    # --------------------
    
    log="logger -t wg-if-up"
    host_status="down"
    try=1
    err=""
    
    [ -n "$host" ] || err="No host specified"
    [ -n "$up_cmd" ] || err="No up command specified"
    [ -n "$down_cmd" ] || err="No down command specified"
    [ -z "$err" ] || { $log "$err"; exit 1; }
    
    while :; do
      case $host_status in
        up)
          while ping -c 1 -W 1 $host > /dev/null; do
            try=1
            sleep $wait
          done
    
          $log "No connection to $host detected (try $try)"
    
          if [ $try -lt $max_tries ]; then
            try=$(( try + 1 ))
            continue
          fi
    
          host_status="down"
          $down_cmd
          ;;
    
        down)
          until ping -c 1 -W 1 $host > /dev/null; do
            sleep $wait
          done
    
          try=1
          host_status="up"
          $up_cmd
          ;;
      esac
    
      $log "Host $host $host_status"
      sleep $wait


    этот скрипт добавлен в автозагрузку сюда
    ifup (wg0) имя интерфейса wireguard

    Автор скрипта shvchk
    Ответ написан
    Комментировать
  • Как через битовые операции взять остаток от деления?

    yellow79
    @yellow79
    Senior Software Engineer
    Если делителем является степень двойки, то остаток от деления можно получить битовым and но при этом вычесть единицу из делителя. Например 4565567 % 8 = 4565567 & 7
    Если делитель не является степенью двойки, то битовые операции вам не помогут
    Ответ написан
    Комментировать
  • Как связаны права доступа к файлу и с правами символьной ссылки?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Как сделать так, чтобы тот, у кого есть только ссылка, а не сами файлы, не мог менять эти самые файлы?

    Это всегда так: т.е. доступ к файлу определяется только владельцем/разрешениями этого файла. Владелец/разрешения ссылки не имеют значения.

    Как связаны права доступа к файлу и с правами символьной ссылки?

    Никак. В линуксе права доступа ссылки никак не используются и не могут быть изменены, см. например man 7 symlink.
    Ответ написан
    1 комментарий
  • Есть ли смысл ставить Linux, если локального админа на Винде легко взломать?

    Есть ли смысл в таком случае ставить Linux? Чтобы не так просто и не так легко было взломать локального админа.

    https://habr.com/post/104536/
    Гуглить по фразе "Single User mode linux".
    В целом, если есть свободный доступ к машине: можно вертеть ее в любую сторону. И ничего толком не сделать. Ищите не как защититься, а как устранить пути обхода: невозможность загрузки со сменных носителей, по сети, с других дисков. Пароль на биос + физическое ограничение доступа к машине, сейф например.
    Ответ написан
    Комментировать
  • Как научиться изящно и грамотно программировать МК?

    Сначала моделировать структуру кода, продумать взаимодействие обособленных частей - "карандашом на бумажке" в виде блок-схем, независимых "виртуальных машин", и только после того, как будет понятна вся структура будущего устройства, начинать писать код. А дальше только практика; и есть код, написанный несколько месяцев назад, кажется ужасным, значит, вы на верном пути)
    Главное - не торопиться сразу кодить.
    Ответ написан
    Комментировать
  • Как сделать индикацию течения воды в трубе на avr?

    Fox_Alex
    @Fox_Alex
    Инженер электронщик
    Поставить после насоса домашний счетчик воды. Они есть с герконом внутри и известным количеством импульсов на кубометр.
    Ответ написан
    Комментировать
  • Установлены Windows 10 и Linux в один компьютер. Как правильно переустановить Windows 10?

    @vl12
    Ответ на ваш вопрос - а зачем вам это?
    У вас всегда будет эта проблема, и потеря на неё массы времени. 1) Иногда оно слетает, из-за кривых апдейтов, софта, и незнания хитрых нюансов. (У меня больше года треть диска занят недоубитой Windows, которую не восстановить.) 2) Время от времени приходится менять размер логических дисков, разделы другой ОС будут мешать.

    Поэтому:
    • Ставьте Windows и Linux на разные физические диски!
    • Используйте виртулку. На виртуалке запускаются все нужные приложения. К тому же, так проще и быстрее их запустить и использовать результаты в другой ОС.
      Хотя некоторые Windows-игры не запускаются в виртуалке. И некоторые системные приложения для прошивки Android. А они вам нужны?
    Ответ написан
    Комментировать
  • Как обработать удержание кнопки в МК AVR?

    @Vasilii_B2
    Разрабатываю ПО и электронику
    Э... круто накручено аж 2 таймера, кнопка должна обзавидоваться что столько кода для нее одной сделано))), респект за мега кодовый замес!!!
    Я бы предложил использовать 1 переменную счетчик: при нажатой кнопке счетчик увеличивается с шагом 1, при отпущенной уменьшается (здесь могут быть большие шаги), если счетчик превысил какой-то порог - объявляю что кнопка нажата, далее пока переменная счетчик не докатится до нуля- не разрешаю объявлять что кнопка нажата. Опрос кнопки по таймеру либо делей если не существенно.
    Ответ написан
    1 комментарий