38. Создание backup скрипта (RHCSA)

Поделиться
HTML-код
  • Опубликовано: 25 авг 2024
  • Подробнее про gzip: habr.com/ru/po...
    Плейлист: • Основы GNU/Linux и под...
    Телеграм: t.me/gnuslashl...
    Текстовой вариант: basis.gnulinux...

Комментарии • 40

  • @user-rv9wd6fw9n
    @user-rv9wd6fw9n 3 года назад +2

    Очень толково. Раскрывается суть без ненужной болтовни и хорошим языком.

  • @lemfinch8668
    @lemfinch8668 3 года назад +3

    Спасибо! Всё просто, понятно, и с хорошим примером!

  • @sabantica
    @sabantica 3 года назад +3

    Очень спасибо.. надо выделить время всю эту серию на практике изучить.. знаний не хватает мне.
    Ты продолжай плиз, складываю всё себе в карман на изучение.

  • @svbHiTek
    @svbHiTek 2 года назад +2

    Спасибо за контент, все очень интересно и познавательно. Продолжайте, делаете хорошее дело.

  • @midjhelins8383
    @midjhelins8383 3 года назад +2

    топчик!

  • @Denverlastdinosaur
    @Denverlastdinosaur 3 года назад +4

    За mtime отдельное спасибо 👍

  • @alexeremenko3000
    @alexeremenko3000 3 года назад +3

    спасибо! очень крутой канал.

  • @eldarius7313
    @eldarius7313 2 года назад +1

    Спасибо за видео, очень информативно!

  • @abych9696
    @abych9696 3 года назад +2

    Огромное СПАСИБО Мурад!!!!))

  • @yerkin88
    @yerkin88 3 года назад +3

    Спасибо за видео.

  • @ivanbronikov9438
    @ivanbronikov9438 3 года назад +2

    Годно, спасибо.

  • @Human-de8nf
    @Human-de8nf 11 месяцев назад

    Супер 👍

  • @EvgenichA
    @EvgenichA 3 месяца назад

    Большое спасибо! Я новичок в Linux, пытаюсь доработать данный скрипт следующим образом: 1. При каждом выполнении скрипта в лог файл записывать дату и время и в зависимости от результатов добавлять либо "Ок", либо stderr. Проверку устаревших бэкапов проверять ТОЛЬКО после успешного архивирования. Никто не заморачивался?))

  • @houdini4673
    @houdini4673 3 года назад +2

    Четко! Спасибо) А по RHCE будет продолжение?))

  • @manrae373
    @manrae373 3 года назад +2

    Сохраняются ли все права при таком бэкапе?
    И да, большое спасибо за канал! С удовольствием смотрю, что-то вспоминается , что-то узнается. Спасибо!

    • @GNULinuxPro
      @GNULinuxPro  3 года назад +2

      Спасибо!
      Да, при архивации права сохраняются =)

  • @user-kh5bi4cw8k
    @user-kh5bi4cw8k Месяц назад +1

    Доброго времени суток мини вопрос по последнему заданию в cron можно просто прописать
    команду find чтобы она выполнялась в такое то время
    но можно и написать ее в скрипте и что бы крон выполнял уже скрипт
    так как всё-таки более правильно писать сразу в крон или в скрипт а потом в крон?

    • @GNULinuxPro
      @GNULinuxPro  Месяц назад

      Доброго времени суток
      Оба варианта сойдут. Хотя у скриптов есть преимущество - их можно положить куда-нибудь в гит, деплоить каким-нибудь ансиблом и в будущем расширить функционал.
      Да, крон также можно обновлять через ансибл, но скрипты будут гибче/функциональные, особенно когда могут быть более сложные задачи, и было бы криво часть задач деплоить чисто в крон, а другую часть в скрипты.
      Т.е., скриптами гибче, если планируется расширяться/более сложная инфраструктура. А в каком-нибудь одиноком сервере, выполняющем одну задачу - можно обойтись find, прописанным в кроне

    • @user-kh5bi4cw8k
      @user-kh5bi4cw8k Месяц назад +1

      @@GNULinuxPro информация принята) спасибо!

  • @incolcompany9685
    @incolcompany9685 3 года назад

    Спасибо за видео. Пробую приспособить такой скрипт для создания бэкапов сайтов. Подскажите, команды в скрипте можно писать друг за другом, т.е. они как-бы будут параллельно выполняться? Или нужно разбивать на разные скрипты? Пример:
    tar -czf site1.tar.gz site1
    tar -czf site2.tar.gz site2
    mysqldump database1 > database1.sql

    • @GNULinuxPro
      @GNULinuxPro  3 года назад

      Можно все в одном скрипте, команды будут выполняться последовательно

  • @user-gm9qr8cu5r
    @user-gm9qr8cu5r Год назад +1

    Привет, Мурад!, Можете объяснить что делает команда exec. Очень мало информации на счет нее, не могу разобраться(

    • @GNULinuxPro
      @GNULinuxPro  Год назад +1

      Привет
      1) Если exec запущен с аргументом (какой-то командой), то запускает эту команду взамен того процесса, который его запустил (например, процесса баша). Обычно запущенные команды выполняются в дочерних процессах, а с exec вместо баша.
      2) Если аргумент не передавать ( exec > file ) то меняется сам процесс баша. Теперь он будет весь stdout посылать не на терминал, а в файл.

  • @inskyinsky2364
    @inskyinsky2364 2 года назад +1

    Привет! А "\" экранирует ";"? Или зачем он? Получается, "+" не нужно экранировать?

    • @GNULinuxPro
      @GNULinuxPro  2 года назад +1

      Привет!
      Да, верно
      чтоб баш не счёл ; как конец команды
      а просто плюс для баша ничего не значит

  • @ultrazSupporter
    @ultrazSupporter 3 года назад +1

    Подробней бы про вывод ошибок и логирование в бэкап скриптах.

    • @GNULinuxPro
      @GNULinuxPro  3 года назад +1

      Что именно? Можно, в принципе, отделить стандартный вывод от ошибок

    • @ultrazSupporter
      @ultrazSupporter 3 года назад +1

      @@GNULinuxPro Я сейчас посмотрел урок под номером 11, там есть об этом.
      А тут, я имел в виду, подробней, как в скриптах грамотно выводить поток об ошибках в файл лога. Делать 2 файла, один с успешным выводом, другой с ошибками, или вместе. Сейчас у себя делаю бэкап скрипты, ищу информацию.

    • @GNULinuxPro
      @GNULinuxPro  3 года назад +1

      @@ultrazSupporter там в строке &> $FILENAME.log стоит заменить на "> $FILENAME.out 2> $FILENAME.err"
      Добавлю это в следующей части

  • @Arius1987
    @Arius1987 2 года назад

    Здравствуйте. 4:40. Объясните пожалуйста конструкцию exec ls -l {} \;
    А именно: зачем используется "\;", зачем нужно экранировать точку с запятой. Мы ведь не пишем в баше ls -l \;
    Заранее спасибо

    • @GNULinuxPro
      @GNULinuxPro  2 года назад +2

      Привет
      Потому что в данном случае точка с запятой относится к команде find, а если её не экранировать, баш посчитает, что точка с запятой относится к нему. В итоге баш посчитает это за завершение команды
      на деле же это часть find, которая показывает, будет ли для каждого аргумента выполнена команда (;) или одной команде передадутся все найденные файлы (+). Типа ls file; ls file2; ls file3; или ls file1 file2 file3

  • @Andre4s123
    @Andre4s123 2 месяца назад

    как сделать бэкап на соседную машину?

    • @GNULinuxPro
      @GNULinuxPro  2 месяца назад

      Можно создать NFS шару и закидывать туда (посмотрите урок про nfs), либо копировать по ssh/rsync по сети

  • @ilya_fimin
    @ilya_fimin 2 года назад

    Добрый день, у меня при выполнении скрипта выдает ошибку при попытке записи лога(Permission denied). Хотя я повышал права файла.

    • @GNULinuxPro
      @GNULinuxPro  2 года назад +1

      Добрый день. Можно уточнить, как вы повышали права?
      Возможно вы делали что-то типа sudo command > /dir/logs
      Таким образом работать не будет, потому что перенаправления ( > ) выполняется вашим юзером и sudo на него не действует
      Нужно либо весь скрипт от рута запускать, либо заменить этот момент, допустим
      sudo command | sudo tee /dir/logs

    • @ilya_fimin
      @ilya_fimin 2 года назад +1

      @@GNULinuxPro Спасибо, скорее всего в этом и есть проблема.

  • @user-mk1im4eb6j
    @user-mk1im4eb6j 5 месяцев назад

    Несколько видео по линуксу посмотрел у тебя, есть хорошая инфа, но подача в этом видео ужасное очень быстро все скомкано, постоянно приходится ставить на паузу и перематывать, по итогу быстрее будет посмотреть какого пердуна старого с лишней ьолтавней зато не так быстро 😂