🚀 Ускоряем загрузку Linux: Оптимизация системы
🔹 1. Анализ задержек при загрузке
Сначала нужно понять, что замедляет загрузку. Для этого используем команду:
Она покажет список сервисов и время их старта.
🔹 2. Отключение ненужных сервисов
Если есть службы, которые не нужны при загрузке, отключаем их:
Например, если не используете Bluetooth:
🔹 3. Оптимизация GRUB
Проверьте, сколько времени GRUB ждёт перед загрузкой:
Если там больше 5 секунд, можно уменьшить до 1-2 секунд:
🔹 4. Включение параллельной загрузки
Добавьте в
🔹 5. Очистка автозапуска
Просмотр списка автозапускаемых сервисов:
Отключаем всё ненужное!
После этих настроек ваш Linux будет загружаться быстрее, а сервер – работать эффективнее. 🚀
@sysadmin1
🔹 1. Анализ задержек при загрузке
Сначала нужно понять, что замедляет загрузку. Для этого используем команду:
systemd-analyze blame
Она покажет список сервисов и время их старта.
🔹 2. Отключение ненужных сервисов
Если есть службы, которые не нужны при загрузке, отключаем их:
sudo systemctl disable <service_name>
sudo systemctl mask <service_name>
Например, если не используете Bluetooth:
sudo systemctl disable bluetooth
🔹 3. Оптимизация GRUB
Проверьте, сколько времени GRUB ждёт перед загрузкой:
grep GRUB_TIMEOUT /etc/default/grub
Если там больше 5 секунд, можно уменьшить до 1-2 секунд:
sudo sed -i 's/GRUB_TIMEOUT=[0-9]\+/GRUB_TIMEOUT=2/' /etc/default/grub
sudo update-grub
🔹 4. Включение параллельной загрузки
Добавьте в
grub параметр quiet splash для ускорения загрузки: sudo sed -i 's/GRUB_CMDLINE_LINUX_DEFAULT="[^"]*/& quiet splash/' /etc/default/grub
sudo update-grub
🔹 5. Очистка автозапуска
Просмотр списка автозапускаемых сервисов:
systemctl list-unit-files --state=enabled
Отключаем всё ненужное!
После этих настроек ваш Linux будет загружаться быстрее, а сервер – работать эффективнее. 🚀
@sysadmin1
👍3🔥2🎉2❤1💯1
🔐 Права в Linux. Часть 1
📌 1. Базовые права доступа
Каждый файл и директория в Linux имеют владельца, группу и права доступа, которые задаются тремя наборами битов:
Формат прав:
Расшифровка:
-
-
-
-
⚙️ 2. Изменение прав:
Изменяет права доступа к файлу или директории.
📍 Символьный способ (
📍 Цифровой способ (восьмеричная нотация)
Каждое право обозначается числом:
-
-
-
Пример:
🏷 3. Изменение владельца:
Изменяет владельца и группу файла.
📍 Основные команды
🎭 4. Специальные биты (SUID, GUID, Sticky Bit)
🏆 SUID (Set User ID)
Если установлен на исполняемом файле, процесс выполняется от имени владельца файла, а не от имени пользователя, который его запустил.
Пример:
🏅 GUID (Set Group ID)
Если установлен на исполняемом файле, программа выполняется с правами группы файла.
Если установлен на директории, все созданные файлы наследуют группу директории.
Пример:
📌 Sticky Bit
Применяется к директориям, запрещая пользователям удалять чужие файлы в общем каталоге (например,
Пример:
@sysadmin1
📌 1. Базовые права доступа
Каждый файл и директория в Linux имеют владельца, группу и права доступа, которые задаются тремя наборами битов:
r (4) Чтение (read)w (2) Запись (write)x (1) Исполнение (execute)Формат прав:
-rwxr-xr-- 1 user group 1234 Feb 27 10:00 file.txt
Расшифровка:
-
- — тип файла (d — директория, - — обычный файл, l — ссылка и т. д.) -
rwx — права владельца -
r-x — права группы -
r-- — права остальных пользователей ⚙️ 2. Изменение прав:
chmodИзменяет права доступа к файлу или директории.
📍 Символьный способ (
+, -, =)
chmod u+x file.txt # Добавить владельцу право на выполнение
chmod g-w file.txt # Убрать у группы право на запись
chmod o=r file.txt # Установить права "только чтение" для остальных
chmod a+x script.sh # Сделать исполняемым для всех
📍 Цифровой способ (восьмеричная нотация)
Каждое право обозначается числом:
-
r = 4-
w = 2-
x = 1Пример:
chmod 755 script.sh # Владелец (7) - rwx, группа (5) - r-x, остальные (5) - r-x
chmod 644 file.txt # Владелец (6) - rw-, группа (4) - r--, остальные (4) - r--
🏷 3. Изменение владельца:
chownИзменяет владельца и группу файла.
📍 Основные команды
chown user file.txt # Изменить владельца
chown user:group file.txt # Изменить владельца и группу
chown :group file.txt # Изменить только группу
chown -R user:group dir/ # Рекурсивно изменить владельца/группу в каталоге
🎭 4. Специальные биты (SUID, GUID, Sticky Bit)
🏆 SUID (Set User ID)
Если установлен на исполняемом файле, процесс выполняется от имени владельца файла, а не от имени пользователя, который его запустил.
Пример:
chmod u+s /usr/bin/passwd # Установка SUID
ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 53232 Feb 27 10:00 /usr/bin/passwd
(s вместо x) у владельца обозначает, что активен SUID.🏅 GUID (Set Group ID)
Если установлен на исполняемом файле, программа выполняется с правами группы файла.
Если установлен на директории, все созданные файлы наследуют группу директории.
Пример:
chmod g+s directory/ # Установка SGID на директорию
chmod 2755 script.sh # Установка SGID через числовой код
ls -ld directory/
drwxr-sr-x 2 user group 4096 Feb 27 10:00 directory/
(s вместо x) у группы обозначает, что активен SGID.📌 Sticky Bit
Применяется к директориям, запрещая пользователям удалять чужие файлы в общем каталоге (например,
/tmp).Пример:
chmod +t /tmp # Установка Sticky Bit
chmod 1777 /tmp # Эквивалентная команда в числовом виде
ls -ld /tmp
drwxrwxrwt 10 root root 4096 Feb 27 10:00 /tmp
(t вместо x) у остальных означает, что активен Sticky Bit.@sysadmin1
🔥4👍2❤1🎉1💯1
🔐 Права в Linux. Часть 2
🔏 5. Расширенные ACL (Access Control List)
Позволяют задавать более гибкие права, чем стандартная система rwx.
📍 Проверка ACL
📍 Добавление прав пользователю
(Пользователь username получит права rw на файл.)
📍 Удаление прав у пользователя
📍 Наследование ACL в директориях
⚙️ 6. Маска
Определяет, какие права не будут установлены при создании новых файлов и директорий.
📍 Проверка текущегоерка ACL
📍 Задание нового Control
📌 Формула:
Пример:
- umask 022 → 666 - 022 = 644 (rw-r--r--)
- umask 077 → 666 - 077 = 600 (rw-------)
🛠 Быстрые команды для проверки и настройки прав
💡 Полезные ссылки:
-
-
-
-
@sysadmin1
🔏 5. Расширенные ACL (Access Control List)
Позволяют задавать более гибкие права, чем стандартная система rwx.
📍 Проверка ACL
getfacl file.txt
📍 Добавление прав пользователю
setfacl -m u:username:rw file.txt
(Пользователь username получит права rw на файл.)
📍 Удаление прав у пользователя
setfacl -x u:username file.txt
📍 Наследование ACL в директориях
setfacl -m d:u:username:rw directory/
⚙️ 6. Маска
umask (маска прав) Определяет, какие права не будут установлены при создании новых файлов и директорий.
📍 Проверка текущегоерка ACL
umask
📍 Задание нового Control
umask 022 # Новые файлы 644 (rw-r--r--), директории 755 (rwxr-xr-x)
umask 077 # Новые файлы 600 (rw-------), директории 700 (rwx------)
📌 Формула:
Права по умолчанию – umask = Итоговые права
Файлы: 666 – umask
Директории: 777 – umask
Пример:
- umask 022 → 666 - 022 = 644 (rw-r--r--)
- umask 077 → 666 - 077 = 600 (rw-------)
🛠 Быстрые команды для проверки и настройки прав
ls -l # Просмотр прав файлов
stat file.txt # Детальная информация о файле
chmod 750 file # Изменение прав файла
chown user:group file # Изменение владельца
setfacl -m u:username:rw file # Установка ACL
💡 Полезные ссылки:
-
man chmod-
man chown-
man setfacl-
man umask@sysadmin1
👍3🔥3❤1🎉1
Шпаргалка по Proxmox VE – мощной платформе для виртуализации на основе KVM и LXC с поддержкой кластеризации и Ceph.
🛠 Установка и настройка Proxmox
1. Загрузка ISO:
Скачать образ Proxmox VE и записать его на флешку (
2. Установка:
- Выбрать диск для установки.
- Задать пароль root и e-mail.
- Настроить сеть (можно оставить DHCP).
3. Доступ к Web-интерфейсу:
Открыть в браузере:
Логин: root, пароль – указанный при установке.
⚙️ Основные команды Proxmox
🔹 Работа с сервисами
🔹 Управление виртуальными машинами (VM)
🔹 Управление контейнерами (LXC)
📦 Хранилища и резервные копии
🔹 Подключение NFS-хранилища
🔹 Резервное копирование (VM и контейнеры)
🔹 Восстановление из резервной копии
⚡ Кластеризация и Ceph
🔹 Создание кластера
На главном узле:
На других узлах:
Проверка:
🔹 Ceph (для хранения данных)
Установка Ceph
Создание монитора Ceph
Добавление OSD-диска
🔧 Дополнительно
🔹 Удаление подписки Proxmox (убираем окно "No valid subscription")
🔹 Обновление Proxmox
🔹 Установка Webmin (удобная панель управления сервером)
После установки Webmin доступен на порту 10000:
@sysadmin1
🛠 Установка и настройка Proxmox
1. Загрузка ISO:
Скачать образ Proxmox VE и записать его на флешку (
Rufus, dd).2. Установка:
- Выбрать диск для установки.
- Задать пароль root и e-mail.
- Настроить сеть (можно оставить DHCP).
3. Доступ к Web-интерфейсу:
Открыть в браузере:
https://<IP-сервера>:8006
Логин: root, пароль – указанный при установке.
⚙️ Основные команды Proxmox
🔹 Работа с сервисами
systemctl restart pve-cluster # Перезапуск кластера
systemctl restart pvedaemon # Перезапуск веб-интерфейса
systemctl restart pveproxy # Перезапуск веб-прокси
systemctl restart pvestatd # Перезапуск статистики
🔹 Управление виртуальными машинами (VM)
qm list # Список всех ВМ
qm start <vmid> # Запуск ВМ
qm stop <vmid> # Остановка ВМ
qm shutdown <vmid> # Корректное выключение ВМ
qm config <vmid> # Просмотр конфигурации ВМ
qm snapshot <vmid> <name> # Создать снимок ВМ
qm restore <vmid> <backup> # Восстановление из резервной копии
🔹 Управление контейнерами (LXC)
pct list # Список контейнеров
pct start <ctid> # Запуск контейнера
pct stop <ctid> # Остановка контейнера
pct shutdown <ctid> # Корректное выключение контейнера
pct exec <ctid> -- <cmd> # Выполнить команду внутри контейнера
pct console <ctid> # Подключиться к консоли контейнера
📦 Хранилища и резервные копии
🔹 Подключение NFS-хранилища
pvesm add nfs <name> --server <IP> --export <path> --content images,backup
🔹 Резервное копирование (VM и контейнеры)
vzdump <vmid> --dumpdir /backup --mode snapshot
🔹 Восстановление из резервной копии
vzdump --restore <backupfile> <vmid>
⚡ Кластеризация и Ceph
🔹 Создание кластера
На главном узле:
pvecm create <cluster-name>
На других узлах:
pvecm add <master-ip>
Проверка:
pvecm status
🔹 Ceph (для хранения данных)
Установка Ceph
pveceph install
Создание монитора Ceph
pveceph create
pveceph mon create
pveceph mgr create
Добавление OSD-диска
pveceph osd create /dev/sdX
🔧 Дополнительно
🔹 Удаление подписки Proxmox (убираем окно "No valid subscription")
sed -i.bak "s|if (data.status !== 'Active')|if (false)|g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
systemctl restart pveproxy
🔹 Обновление Proxmox
apt update && apt dist-upgrade -y
🔹 Установка Webmin (удобная панель управления сервером)
apt install -y wget
wget http://prdownloads.sourceforge.net/webadmin/webmin_2.101_all.deb
dpkg -i webmin_2.101_all.deb
apt --fix-broken install -y
После установки Webmin доступен на порту 10000:
https://<IP-сервера>:10000
@sysadmin1
❤2👍1🔥1🎉1
📌 Шпаргалка по управлению сервисами и демонами (systemctl, service, init.d)
🔹 Systemd (systemctl)
▶ Запуск, остановка, перезапуск сервиса
🛠 Статус сервиса
⚙️ Автозапуск при старте системы
📜 Логи сервиса
🔄 Перезагрузка Systemd
🔹 SysV Init (service, init.d)
Для старых систем без systemd (например, CentOS 6, Debian 7) используются SysV Init и скрипты в
▶ Запуск, остановка, перезапуск
🛠 Статус сервиса
⚙️ Автозапуск при старте системы
📂 Ручное управление через init.d
🔹 Upstart (service, initctl)
Использовался в Ubuntu 9.10 – 14.10.
▶ Управление сервисами
⚙️ Автозапуск
🔹 Дополнительно
🔍 Найти сервис в системе
🗑 Удаление сервиса
🔥 Совет:
Если не знаете, какой менеджер используется в вашей системе, выполните:
Если ответ
@sysadmin1
🔹 Systemd (systemctl)
systemctl — основная утилита для управления сервисами в системах с Systemd (например, Ubuntu 16+, CentOS 7+, Debian 8+).▶ Запуск, остановка, перезапуск сервиса
systemctl start <service> # Запустить сервис
systemctl stop <service> # Остановить сервис
systemctl restart <service> # Перезапустить сервис
systemctl reload <service> # Перезагрузить конфигурацию без остановки
systemctl reload-or-restart <service> # Перезапустить, если нельзя перезагрузить
🛠 Статус сервиса
systemctl status <service> # Проверить статус сервиса
systemctl is-active <service> # Проверить, запущен ли сервис (active/inactive)
systemctl is-enabled <service> # Проверить, включен ли сервис при загрузке (enabled/disabled)
⚙️ Автозапуск при старте системы
systemctl enable <service> # Включить автозапуск
systemctl disable <service> # Отключить автозапуск
systemctl mask <service> # Запретить запуск сервиса
systemctl unmask <service> # Разрешить запуск сервиса
📜 Логи сервиса
journalctl -u <service> # Показать логи сервиса
journalctl -xe # Посмотреть детальные ошибки и события
journalctl --since "30 min ago" -u <service> # Логи за последние 30 минут
🔄 Перезагрузка Systemd
systemctl daemon-reexec # Перезапустить systemd без перезагрузки системы
systemctl daemon-reload # Обновить конфигурацию сервисов
🔹 SysV Init (service, init.d)
Для старых систем без systemd (например, CentOS 6, Debian 7) используются SysV Init и скрипты в
/etc/init.d/.▶ Запуск, остановка, перезапуск
service <service> start # Запустить сервис
service <service> stop # Остановить сервис
service <service> restart # Перезапустить сервис
service <service> reload # Перезагрузить конфигурацию без остановки
🛠 Статус сервиса
service <service> status # Проверить статус сервиса
⚙️ Автозапуск при старте системы
chkconfig <service> on # Включить автозапуск
chkconfig <service> off # Отключить автозапуск
chkconfig --list <service> # Проверить, включен ли сервис при старте
📂 Ручное управление через init.d
/etc/init.d/<service> start # Запустить сервис
/etc/init.d/<service> stop # Остановить сервис
/etc/init.d/<service> restart # Перезапустить сервис
/etc/init.d/<service> status # Проверить статус
🔹 Upstart (service, initctl)
Использовался в Ubuntu 9.10 – 14.10.
▶ Управление сервисами
service <service> start # Запустить сервис
service <service> stop # Остановить сервис
service <service> restart # Перезапустить сервис
service <service> status # Проверить статус сервиса
initctl list # Список всех сервисов
⚙️ Автозапуск
echo "manual" | sudo tee /etc/init/<service>.override # Отключить автозапуск
sudo rm /etc/init/<service>.override # Включить автозапуск
🔹 Дополнительно
🔍 Найти сервис в системе
systemctl list-units --type=service # Список всех сервисов
systemctl list-unit-files | grep enabled # Все включенные сервисы
🗑 Удаление сервиса
systemctl disable <service>
systemctl stop <service>
rm -f /etc/systemd/system/<service>.service
systemctl daemon-reload
🔥 Совет:
Если не знаете, какой менеджер используется в вашей системе, выполните:
ps --pid 1 -o comm=
Если ответ
systemd → используйте systemctl, если init → service или init.d.@sysadmin1
❤3👍1🔥1👏1
📌 Файлы конфигурации сети в Linux
1️⃣ /etc/resolv.conf – Настройки DNS
🔹 Основные директивы:
-
-
-
🔹 Пример:
⚠️ Важно! В системах с NetworkManager или systemd-resolved
Проверить:
2️⃣ /etc/hosts – Сопоставление IP и доменных имен
🔹 Используется для локального DNS-резолвинга.
🔹 Пример:
📌 Применение:
- Подмена IP-адресов для тестирования
- Ускорение доступа к локальным ресурсам
3️⃣ /etc/network/interfaces (Debian-based) – Настройки сетевых интерфейсов
🔹 Используется в Debian, Ubuntu (если не задействован NetworkManager)
🔹 Пример настройки статического IP:
💡 Основные параметры:
-
-
-
-
-
4️⃣ NetworkManager – Современный способ управления сетью
🔹 Конфиги хранятся в
🔹 Использует nmcli, nmtui для настройки
🔹 Пример подключения к Wi-Fi:
🔹 Проверка статуса сетевого подключения:
🔹 Настройка статического IP:
⚠️ Важно! В CentOS/RHEL используется
📌 Проверка сетевого соединения:
🔹 Где еще могут храниться настройки?
-
-
📢 Используйте правильный инструмент для вашей ОС и следите за тем, чтобы изменения в конфигах не перезаписывались сервисами! 🚀
@sysadmin1
1️⃣ /etc/resolv.conf – Настройки DNS
🔹 Основные директивы:
-
nameserver <IP> – Указывает DNS-сервер -
search <домен> – Определяет домен по умолчанию -
options <параметры> – Дополнительные настройки (например, timeout:2) 🔹 Пример:
nameserver 8.8.8.8
nameserver 1.1.1.1
search example.com
options timeout:2 attempts:3
⚠️ Важно! В системах с NetworkManager или systemd-resolved
resolv.conf может перезаписываться! Проверить:
ls -l /etc/resolv.conf (если это симлинк – управляется сервисом). 2️⃣ /etc/hosts – Сопоставление IP и доменных имен
🔹 Используется для локального DNS-резолвинга.
🔹 Пример:
127.0.0.1 localhost
192.168.1.10 server.localdomain server
📌 Применение:
- Подмена IP-адресов для тестирования
- Ускорение доступа к локальным ресурсам
3️⃣ /etc/network/interfaces (Debian-based) – Настройки сетевых интерфейсов
🔹 Используется в Debian, Ubuntu (если не задействован NetworkManager)
🔹 Пример настройки статического IP:
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 1.1.1.1
💡 Основные параметры:
-
auto <интерфейс> – Автозапуск при загрузке -
iface <интерфейс> inet <тип> – static, dhcp, manual -
address <IP> – Статический IP -
gateway <IP> – Шлюз -
dns-nameservers <IP> – DNS-серверы 4️⃣ NetworkManager – Современный способ управления сетью
🔹 Конфиги хранятся в
/etc/NetworkManager/ 🔹 Использует nmcli, nmtui для настройки
🔹 Пример подключения к Wi-Fi:
nmcli device wifi list
nmcli device wifi connect "MySSID" password "MySecretPass"
🔹 Проверка статуса сетевого подключения:
nmcli general status
nmcli connection show
🔹 Настройка статического IP:
nmcli con mod eth0 ipv4.addresses 192.168.1.100/24
nmcli con mod eth0 ipv4.gateway 192.168.1.1
nmcli con mod eth0 ipv4.dns "8.8.8.8 1.1.1.1"
nmcli con mod eth0 ipv4.method manual
nmcli con up eth0
⚠️ Важно! В CentOS/RHEL используется
nmcli, а в Ubuntu/Debian – netplan. 📌 Проверка сетевого соединения:
ping -c 4 8.8.8.8 # Проверка связи с сервером
dig google.com # Проверка DNS
ip a # Вывод IP-адресов интерфейсов
🔹 Где еще могут храниться настройки?
-
/etc/netplan/*.yaml – В Ubuntu 18.04+ (заменил /etc/network/interfaces) -
/etc/sysconfig/network-scripts/ifcfg-* – В CentOS/RHEL 📢 Используйте правильный инструмент для вашей ОС и следите за тем, чтобы изменения в конфигах не перезаписывались сервисами! 🚀
@sysadmin1
🔥2🤩2👌2🎉1🏆1
🎯 Мониторинг загрузки процессора и уведомление в Telegram 🎯
Сервер начал тормозить, а вы не знаете почему? 🤔 Напишите скрипт, который мониторит загрузку CPU и при превышении порога отправляет уведомление в Telegram!
📌 Скрипт для мониторинга CPU и отправки уведомлений
🔹 Как использовать?
1️⃣ Сохраните скрипт в файл, например,
2️⃣ Дайте права на выполнение:
3️⃣ Добавьте в
Добавьте строку:
Теперь при высокой нагрузке процессора вы получите уведомление в Telegram и сможете быстро принять меры! 🚀
@sysadmin1
Сервер начал тормозить, а вы не знаете почему? 🤔 Напишите скрипт, который мониторит загрузку CPU и при превышении порога отправляет уведомление в Telegram!
📌 Скрипт для мониторинга CPU и отправки уведомлений
#!/bin/bash
# Порог загрузки CPU в процентах
THRESHOLD=80
# Токен бота и ID чата в Telegram
TELEGRAM_BOT_TOKEN="your_bot_token"
CHAT_ID="your_chat_id"
# Получаем среднюю загрузку CPU за 1 минуту
CPU_LOAD=$(awk '{print $1}' /proc/loadavg | awk '{print int($1)}')
# Проверяем, превышен ли порог
if [ "$CPU_LOAD" -ge "$THRESHOLD" ]; then
MESSAGE="⚠️ Внимание! Высокая загрузка CPU: ${CPU_LOAD}%"
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendMessage" \
-d chat_id="$CHAT_ID" \
-d text="$MESSAGE"
fi
🔹 Как использовать?
1️⃣ Сохраните скрипт в файл, например,
cpu_monitor.sh. 2️⃣ Дайте права на выполнение:
chmod +x cpu_monitor.sh
3️⃣ Добавьте в
cron для проверки каждые 5 минут: crontab -e
Добавьте строку:
*/5 * * * * /path/to/cpu_monitor.sh
Теперь при высокой нагрузке процессора вы получите уведомление в Telegram и сможете быстро принять меры! 🚀
@sysadmin1
❤2👍1🔥1🎉1
📌 Резервное копирование и восстановление (tar, rsync, cron, BorgBackup)
🛠 1. Архивация с
📦 Создать архив:
📂 Распаковать архив:
🔎 Просмотреть содержимое архива:
📝 Архивация с исключением файлов:
🔄 2. Синхронизация с
📤 Копирование файлов с сохранением структуры и прав:
🌍 Синхронизация по SSH:
🧹 Удаление устаревших файлов в целевой папке:
📄 Исключение файлов:
⏳ 3. Автоматизация с
📅 Редактирование задач:
📌 Примеры:
- Запуск резервного копирования каждый день в 3:00
- Автоматическая синхронизация раз в час
📌 Проверка запланированных задач:
🏆 4. Бэкап с
⚡ Инициализация хранилища:
📦 Создание резервной копии:
🛠 Восстановление данных:
📜 Просмотр списка резервных копий:
🧹 Удаление старых бэкапов (например, старше 7 дней):
🔥 Вывод:
-
-
-
-
@sysadmin1
🛠 1. Архивация с
tar📦 Создать архив:
tar -cvzf backup.tar.gz /путь/к/директории
📂 Распаковать архив:
tar -xvzf backup.tar.gz -C /путь/куда/распаковать
🔎 Просмотреть содержимое архива:
tar -tvf backup.tar.gz
📝 Архивация с исключением файлов:
tar --exclude='/путь/к/исключаемой_папке' -cvzf backup.tar.gz /путь/к/директории
🔄 2. Синхронизация с
rsync📤 Копирование файлов с сохранением структуры и прав:
rsync -av /источник/ /назначение/
🌍 Синхронизация по SSH:
rsync -avz -e ssh /источник/ user@host:/назначение/
🧹 Удаление устаревших файлов в целевой папке:
rsync -av --delete /источник/ /назначение/
📄 Исключение файлов:
rsync -av --exclude='*.log' /источник/ /назначение/
⏳ 3. Автоматизация с
cron📅 Редактирование задач:
crontab -e
📌 Примеры:
- Запуск резервного копирования каждый день в 3:00
0 3 * * * tar -cvzf /backup/backup_$(date +\%F).tar.gz /важные_данные
- Автоматическая синхронизация раз в час
0 * * * * rsync -av /данные/ /backup/
📌 Проверка запланированных задач:
crontab -l
🏆 4. Бэкап с
BorgBackup⚡ Инициализация хранилища:
borg init --encryption=repokey /backup/repo
📦 Создание резервной копии:
borg create --stats /backup/repo::backup-$(date +%F) /данные
🛠 Восстановление данных:
borg extract /backup/repo::backup-2024-02-26
📜 Просмотр списка резервных копий:
borg list /backup/repo
🧹 Удаление старых бэкапов (например, старше 7 дней):
borg prune --keep-daily=7 /backup/repo
🔥 Вывод:
-
tar — простая архивация -
rsync — синхронизация данных -
cron — автоматизация -
BorgBackup — мощное решение для резервного копирования @sysadmin1
👍3💯2❤1🔥1🎉1
Ata Elahi, Alex Cushman - Computer Networks – 2023 .pdf
19.4 MB
📖 Computer Networks: Data Communications, Internet and Security
Год: 2023
Автор: Ata Elahi, Alex Cushman
Книга рассматривает фундаментальные принципы компьютерных сетей и передачи данных, начиная с основ цифровых коммуникаций и заканчивая современными интернет-технологиями. Авторы объясняют работу локальных сетей (LAN), интернет-протоколов и технологий передачи голоса по IP. Также затрагиваются беспроводные сети и технологии связи с низким энергопотреблением, включая ZigBee, 6LoWPAN и LoRa.
Отдельные главы посвящены криптографии и базовым принципам сетевой безопасности, которые необходимы для защиты инфраструктуры и передачи данных. Материал построен как системное введение в сетевые технологии и помогает понять, как устроена современная интернет-архитектура. Книга подойдёт системным администраторам, сетевым инженерам и специалистам, которые хотят глубже разобраться в работе сетей и сетевой безопасности.
#network
@sysadmin1
Год: 2023
Автор: Ata Elahi, Alex Cushman
Книга рассматривает фундаментальные принципы компьютерных сетей и передачи данных, начиная с основ цифровых коммуникаций и заканчивая современными интернет-технологиями. Авторы объясняют работу локальных сетей (LAN), интернет-протоколов и технологий передачи голоса по IP. Также затрагиваются беспроводные сети и технологии связи с низким энергопотреблением, включая ZigBee, 6LoWPAN и LoRa.
Отдельные главы посвящены криптографии и базовым принципам сетевой безопасности, которые необходимы для защиты инфраструктуры и передачи данных. Материал построен как системное введение в сетевые технологии и помогает понять, как устроена современная интернет-архитектура. Книга подойдёт системным администраторам, сетевым инженерам и специалистам, которые хотят глубже разобраться в работе сетей и сетевой безопасности.
#network
@sysadmin1
👍5🏆2⚡1🔥1🎉1
This media is not supported in your browser
VIEW IN TELEGRAM
HTTP (HyperText Transfer Protocol)
Данные передаются в открытом виде, и любой в сети может их перехватить или прочитать – протокол небезопасен.
Пример: http://example.com
Шифрование отсутствует, поэтому соединение уязвимо для атак.
HTTPS (HTTP Secure)
Данные передаются в зашифрованном виде, и злоумышленники не могут их прочитать или изменить – соединение считается безопасным.
Пример: https://example.com
Данные защищены.
@Sysadmin1
Данные передаются в открытом виде, и любой в сети может их перехватить или прочитать – протокол небезопасен.
Пример: http://example.com
Шифрование отсутствует, поэтому соединение уязвимо для атак.
HTTPS (HTTP Secure)
Данные передаются в зашифрованном виде, и злоумышленники не могут их прочитать или изменить – соединение считается безопасным.
Пример: https://example.com
Данные защищены.
@Sysadmin1
🔥6👍2✍1⚡1🎉1
📌 Журналы системы и мониторинг
🖥️ Основные инструменты логирования и мониторинга в Linux
📜 journalctl – просмотр логов systemd
🔹
🔹
🔹
🔹
💡 Фильтрация:
🔹
🔹
🔄 logrotate – ротация логов
Файл конфигурации:
Пример настройки ротации:
🔹
🔹
📡 syslog (rsyslog, syslog-ng) – логирование в файлы и удаленно
🔹 Конфиг:
🔹
🔹
🔹
💡 Пример отправки логов на удалённый сервер (rsyslog):
Добавить в
🔹 Перезапуск:
⚙️ dmesg – логи ядра
🔹
🔹
🛠 Полезные команды:
🔹
🔹
📊 Мониторинг логов
🔹
🔹
🔹
💡 Автоматизация: используйте fail2ban, logwatch и Grafana+Loki для анализа логов 🔥
⚡ Сохрани, чтобы не потерять! 🚀
@sysadmin1
🖥️ Основные инструменты логирования и мониторинга в Linux
📜 journalctl – просмотр логов systemd
🔹
journalctl -f — следить за логами в реальном времени 🔹
journalctl -u nginx — логи конкретного сервиса 🔹
journalctl --since "1 hour ago" — логи за последний час 🔹
journalctl -b -1 — логи предыдущей загрузки 💡 Фильтрация:
🔹
journalctl -p err — только ошибки 🔹
journalctl -k — только сообщения ядра 🔄 logrotate – ротация логов
Файл конфигурации:
/etc/logrotate.conf Пример настройки ротации:
/var/log/nginx/*.log {
weekly
rotate 4
compress
missingok
notifempty
}🔹
logrotate -d /etc/logrotate.conf — тест без изменений 🔹
logrotate -f /etc/logrotate.conf — принудительная ротация 📡 syslog (rsyslog, syslog-ng) – логирование в файлы и удаленно
🔹 Конфиг:
/etc/rsyslog.conf 🔹
/var/log/syslog — общий системный лог 🔹
/var/log/auth.log — авторизации 🔹
/var/log/kern.log — логи ядра 💡 Пример отправки логов на удалённый сервер (rsyslog):
Добавить в
/etc/rsyslog.conf:
*.* @192.168.1.100:514
🔹 Перезапуск:
systemctl restart rsyslog ⚙️ dmesg – логи ядра
🔹
dmesg | grep -i error — ошибки ядра 🔹
dmesg -T — отображение времени в читаемом формате 🛠 Полезные команды:
🔹
dmesg -H — цветная и структурированная выдача 🔹
dmesg --level=err,warn — фильтр по уровню 📊 Мониторинг логов
🔹
tail -f /var/log/syslog — следить за логами 🔹
grep -i "error" /var/log/syslog — поиск ошибок 🔹
awk '{print $5}' /var/log/syslog | sort | uniq -c | sort -nr — топ источников логов 💡 Автоматизация: используйте fail2ban, logwatch и Grafana+Loki для анализа логов 🔥
⚡ Сохрани, чтобы не потерять! 🚀
@sysadmin1
👍5🔥2🎉2🏆2❤1
🔐 ТРЕБУЕТСЯ СПЕЦИАЛИСТ ПО CYBERSECURITY
IT-компания приглашает опытного специалиста по информационной безопасности.
📌 Обязанности:
• Обеспечение безопасности корпоративной почты
• Настройка безопасности Windows Server AD и GPO
• Ведение logging и систем мониторинга
• Выявление и предотвращение уязвимостей
• Обеспечение безопасности сети и SQL
• Проведение тренингов по безопасности для сотрудников
• Внедрение и контроль политик безопасности
📌 Требования:
• Практический опыт в сфере Cybersecurity
• Понимание сетевой безопасности и firewall
• Опыт работы с SIEM / системами мониторинга
• Знание принципов Incident Response
• Умение работать в команде
• Знание русского и английского языков
⭐️ Будет преимуществом:
• Сертификаты CEH, Security+, CISSP
• Опыт в Linux или Cloud security
📍 г. Ташкент
👤 Возраст: 20–30
💰 Зарплата: 1000$ + KPI
📩 Отправляйте резюме: @it_manager7
@sysadmin1
IT-компания приглашает опытного специалиста по информационной безопасности.
📌 Обязанности:
• Обеспечение безопасности корпоративной почты
• Настройка безопасности Windows Server AD и GPO
• Ведение logging и систем мониторинга
• Выявление и предотвращение уязвимостей
• Обеспечение безопасности сети и SQL
• Проведение тренингов по безопасности для сотрудников
• Внедрение и контроль политик безопасности
📌 Требования:
• Практический опыт в сфере Cybersecurity
• Понимание сетевой безопасности и firewall
• Опыт работы с SIEM / системами мониторинга
• Знание принципов Incident Response
• Умение работать в команде
• Знание русского и английского языков
⭐️ Будет преимуществом:
• Сертификаты CEH, Security+, CISSP
• Опыт в Linux или Cloud security
📍 г. Ташкент
👤 Возраст: 20–30
💰 Зарплата: 1000$ + KPI
📩 Отправляйте резюме: @it_manager7
@sysadmin1
👍3❤2🔥2🎉1🤩1
📦 Резервное копирование и восстановление
🧰 Основные инструменты:
-
-
-
-
📁
📦 Создание архива:
🔍 Проверка содержимого:
♻️ Восстановление:
📝 Полезно:
-
-
-
-
-
🔁
📤 Бэкап локальной папки:
🌍 На удалённый сервер по SSH:
🛡️ С флагами:
-
-
-
-
📅 Пример: копирование с датой
⏰
🛠️ Открыть crontab:
🕒 Пример задания: ежедневный бэкап в 2:00
📌 Формат:
👀 Просмотр логов:
🧠
📦 Создание репозитория:
🧱 Резервное копирование:
🔍 Проверка архива:
🛠️ Восстановление:
🧹 Удаление старых архивов:
🔐 Преимущества Borg:
- Шифрование по умолчанию
- Сжатие и дедупликация
- Поддержка удалённого хранения (через SSH)
✅ Best Practices
🔁 Храните несколько копий в разных местах
🔒 Используйте шифрование для чувствительных данных
📋 Регулярно тестируйте восстановление
📆 Автоматизируйте с помощью
☁️ Подумайте о облачном бэкапе (rclone, borg + SSH, rsync + VPS)
@sysadmin1
🧰 Основные инструменты:
-
tar — архивирование файлов-
rsync — синхронизация каталогов-
cron — автоматизация по расписанию-
BorgBackup — инкрементные зашифрованные бэкапы📁
tar — Архивация📦 Создание архива:
tar -czvf backup.tar.gz /путь/к/каталогу
🔍 Проверка содержимого:
tar -tzf backup.tar.gz
♻️ Восстановление:
tar -xzvf backup.tar.gz -C /куда/восстановить
📝 Полезно:
-
-c — создать архив-
-x — извлечь-
-z — сжать gzip-
-v — вывод списка-
-f — указать имя файла🔁
rsync — Синхронизация и инкрементные копии📤 Бэкап локальной папки:
rsync -avh /источник/ /backup/каталог/
🌍 На удалённый сервер по SSH:
rsync -avz -e ssh /data/ user@host:/backup/
🛡️ С флагами:
-
-a — архивный режим (всё сохраняет)-
-v — подробный вывод-
-z — сжатие-
--delete — удаляет на стороне назначения лишние файлы📅 Пример: копирование с датой
rsync -av --progress /data/ /backup/$(date +%F)/
⏰
cron — Автоматизация задач🛠️ Открыть crontab:
crontab -e
🕒 Пример задания: ежедневный бэкап в 2:00
0 2 * * * /usr/bin/rsync -a /data/ /backup/
📌 Формат:
мин ч д_мес мес д_нед команда
👀 Просмотр логов:
grep CRON /var/log/syslog
🧠
BorgBackup — Продвинутый бэкап с дедупликацией и шифрованием📦 Создание репозитория:
borg init --encryption=repokey /backup/borg-repo
🧱 Резервное копирование:
borg create /backup/borg-repo::ИмяАрхива-$(date +%F) /data
🔍 Проверка архива:
borg list /backup/borg-repo
🛠️ Восстановление:
borg extract /backup/borg-repo::ИмяАрхива
🧹 Удаление старых архивов:
borg prune -v --keep-daily=7 --keep-weekly=4 --keep-monthly=6 /backup/borg-repo
🔐 Преимущества Borg:
- Шифрование по умолчанию
- Сжатие и дедупликация
- Поддержка удалённого хранения (через SSH)
✅ Best Practices
🔁 Храните несколько копий в разных местах
🔒 Используйте шифрование для чувствительных данных
📋 Регулярно тестируйте восстановление
📆 Автоматизируйте с помощью
cron, логируйте результаты ☁️ Подумайте о облачном бэкапе (rclone, borg + SSH, rsync + VPS)
@sysadmin1
❤2👍2🎉2💯2🔥1