Linux Skill - Освой Linux c нуля до DevOps
11.3K subscribers
56 photos
100 videos
481 links
Освой Linux c нуля до DevOps
Подробный гайд по Linux и море других уроков для системных администраторов

📩 По всем вопросам: @chorapov

РКН https://vk.cc/cMUwm4
Download Telegram
Media is too big
VIEW IN TELEGRAM
🚀 Урок 3 — Освой циклы Bash

Привет! Продолжаем наш интенсив по Bash для новичков и не только.

Сегодня ты узнаешь, как работают основные циклы в Bash — for и while. Эти конструкции — основа автоматизации: от перебора файлов до создания генераторов паролей!

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

Тайм-коды для удобства:
00:04 — Введение в циклы
00:52 — Основы цикла for
01:43 — Примеры использования for
04:34 — Условные конструкции в цикле
07:06 — Проверка спецсимволов
11:02 — Работа с директориями
16:21 — Цикл for в стиле C
21:02 — Цикл while
25:39 — Сравнение for и while
27:59 — Создание генератора паролей
31:31 — Команды break и continue
37:20 — Заключение

🌐 Источник: https://youtu.be/7AyiVxVkY3M?si=xPm_IxlR5DIAJpxa

📩 Завтра: Процесс с неизвестным именем грузит CPU на 25000%! Что происходит?
Включи 🔔 чтобы не пропустить!
____________________

Дополнительный материал:
🧠 - Практическое использование mkfs.btrfs: Код и советы
🧠 - Установка Node Exporter на Linux серверах: Полный Гайд
🧠 - IPv6 и iptables: Мастер-класс по безопасности будущего

#Linux_youtube @LinuxSkill #bash #linux #scripts #bashскрипты #программирование
👍9🔥6
💾 Потерял данные? Вот скрипт, который этого не допустит

Привет, хранитель данных!

Делаешь бэкапы вручную? Пора автоматизировать! Готовый bash-скрипт архивирует важные директории и отправляет на удалённый сервер. Настрой раз и спи спокойно.

Скрипт backup.sh

#!/bin/bash

backup_dirs=("/etc" "/home" "/boot")
dest_dir="/backup"
dest_server="server1"
backup_date=$(date +%b-%d-%y)

echo "Starting backup of: ${backup_dirs[@]}"

for i in "${backup_dirs[@]}"; do
sudo tar -Pczf /tmp/$i-$backup_date.tar.gz $i
if [ $? -eq 0 ]; then
echo "$i backup succeeded."
else
echo "$i backup failed."
fi
scp /tmp/$i-$backup_date.tar.gz $dest_server:$dest_dir
if [ $? -eq 0 ]; then
echo "$i transfer succeeded."
else
echo "$i transfer failed."
fi
done

sudo rm /tmp/*.gz
echo "Backup is done."


Как работает скрипт

Переменные:
- backup_dirs — массив директорий для бэкапа
- dest_dir — куда складывать на удалённом сервере
- dest_server — имя/IP целевого сервера
- backup_date — дата в имени архива

Процесс:
1. Архивирует каждую директорию в tar.gz
2. Отправляет по scp на удалённый сервер
3. Проверяет успешность каждого шага
4. Удаляет локальные временные архивы

Пример работы

kabary@handbook:~$ ./backup.sh
Starting backup of: /etc /home /boot
/etc backup succeeded.
etc-Aug-30-20.tar.gz 100% 1288KB 460.1KB/s 00:02
/etc transfer succeeded.
/home backup succeeded.
home-Aug-30-20.tar.gz 100% 2543KB 547.0KB/s 00:04
/home transfer succeeded.
/boot backup succeeded.
boot-Aug-30-20.tar.gz 100% 105MB 520.2KB/s 03:26
/boot transfer succeeded.
Backup is done.


Автоматизация через cron

Добавь в crontab для ежедневного запуска в 3 ночи:
0 3 * * * /home/user/backup.sh >> /var/log/backup.log 2>&1


💡 Совет: настрой SSH-ключи для scp без пароля, иначе скрипт не сработает в cron.

Результат: автоматические бэкапы критически важных данных каждую ночь. Никакой рутины, полная автоматизация.
____________________

Дополнительный материал:
🧠 - От первого контейнера до мощного Swarm: Путешествие Docker в мире DevOps
🧠 - Углубляемся в безопасность Linux: Специальные режимы и их мощь!
🧠 - Разгадываем тайны команды "Apropos": Ваш ключ к миру Linux Man Pages

#Linux_Mastery #bash #backup #automation #sysadmin #scripts
👍18