Секреты сисадмина | DevOps, Linux, SRE
25.2K subscribers
663 photos
18 videos
441 files
605 links
Крупнейший справочник системного администратора.

Сотрудничество: @max_excel

РКН: vk.cc/cHhGTz
Download Telegram
Файловый сервер SFTPGo

Полнофункциональный и высококонфигурируемый SFTP-сервер с дополнительной поддержкой HTTP/S, FTP/S и WebDAV. Поддерживается несколько видов хранилищ: локальная файловая система, зашифрованная локальная файловая система, S3 (совместимое) Object Storage, Google Cloud Storage, Azure Blob Storage, SFTP.

Смотреть

#СекретыСисадмина
Как восстановить Windows к исходному состоянию, и почему для этого больше не нужен install.wim

Все ноутбуки и планшеты обладают решением для отката к фабричному состоянию. Оно называется Push-Button Reset (PBR), т.е. сброс нажатием кнопки. Давайте посмотрим на его эволюцию в последние годы.

#СекретыСисадмина

📁 Скачать/Download 👇
Bash Массивы

Кроме обычных переменных, bash также различает массивы. Обратите внимание, что синтаксис для доступа к n-ному элементу отличается от синтаксиса, принятого в С.

х=() - Определение пустого массива
х[0]='а' - Присваивание элементов массива
х[1]='b' - Присваивание элементов массива
х[2]='с' - Присваивание элементов массива
х=('а' 'b' 'с') - Краткий вариант записи четырех предыдущих строк
echo ${x[l]} - Считывание элемента массива
echo ${x[@]} - Считывание всех элементов массива

Для программистов исключительно важны массивы ассоциативных элементов, которые стали поддерживаться в bash, начиная с версии 4.0. Не забудьте, что массив сначала требуется специально объявить как ассоциативный с помощью declare -A.

declare -Ay - Определение пустого массива ассоциативных элементов
y[abc]=123 - Присваивание элемента ассоциативного массива
y[efg]=xxx - Присваивание элемента ассоциативного массива
у=( [abc]=123 [efg]=xxx ) - Краткий вариант записи двух предыдущих строк
echo ${y[abc]} - Считывание одного элемента массива

Еще одно важное нововведение версии 4.0 заключается в том, что с помощью команды mapfile можно построчно преобразовать текстовый файл в элементы обычного массива:
mapfile z < текстовый_файл


#СекретыСисадмина
Переменные среды в Windows

В данной статье показаны действия, с помощью которых можно узнать список переменных в операционной системе Windows.

Переменные среды необходимы для указания абсолютных путей к папкам, часто используются в пакетных (командных) файлах. К примеру, если неизвестна буква системного диска, то всегда можно использовать переменную %systemdrive%, возвращающую букву диска, на котором установлена Windows.

#СекретыСисадмина

📁 Скачать/Download 👇
Как пробросить порт в Linux на другой сервер

Необходимо пробросить с 8821 порта сервера 10.10.10.10 на 21 порт сервера 12.12.12.12:

iptables -A FORWARD --dst 10.10.10.10 -p tcp --dport 8821 -j ACCEPT

iptables -A FORWARD --src 10.10.10.10 -p tcp --sport 8821 -j ACCEPT

iptables -t nat -A PREROUTING -d 10.10.10.10 -p tcp --dport 8821 -j DNAT --to-destination 12.12.12.12:21

iptables -t nat -A POSTROUTING -d 12.12.12.12 -p tcp --dport 21 -j SNAT --to-source 10.10.10.10:8821

#СекретыСисадмина
Монтирование NFS

Network File System (NFS) — протокол доступа к файловым системам по сети.

#СекретыСисадмина

📁 Скачать/Download 👇
Клонирование виртуальных машин KVM

Для клонирования ВМ можно использовать простую команду virt-clone. Это утилита командной строки для клонирования существующих образов виртуальных машин с использованием библиотеки "libvirt". Она скопирует образы дисков любой существующей ВМ и определит нового гостя с идентичной конфигурацией виртуального оборудования. Элементы, которые требуют уникальности, будут обновлены, чтобы избежать столкновения между старыми и новыми ВМ.

#СекретыСисадмина

📁 Скачать/Download 👇
Знали ли вы, что можно открывать man-страницы из Vim?

- leader K - Нажмите курсором на любом слове, чтобы открыть man-страницу для этой команды.
- :Man command - Открыть man-страницу этой команды.

#СекретыСисадмина
🗑 Bash-совет дня: safe_rm — «корзина» для удаляемых файлов

Сколько раз вы случайно удаляли важный конфиг? Можно сделать rm более дружелюбным — вместо мгновенного уничтожения файлы будут складываться в «корзину» и автоматически очищаться спустя 30 дней.


#!/usr/bin/env bash
# safe_rm — перемещает удаляемые файлы в локальную «корзину»

TRASH_DIR="$HOME/.local/share/Trash/files" # куда складываем
mkdir -p "$TRASH_DIR"

stamp=$(date +%Y-%m-%d_%H-%M-%S)

for item in "$@"; do
if [[ ! -e $item ]]; then
printf '⚠️ %s: no such file or directory\n' "$item" >&2
continue
fi
mv -- "$item" "$TRASH_DIR/$(basename "$item")_$stamp"
done

# авто-очистка файлов, которым больше 30 дней
find "$TRASH_DIR" -type f -mtime +30 -delete 2>/dev/null


Быстрый старт:


sudo install -m 755 safe_rm /usr/local/bin/
echo "alias rm='safe_rm'" >> ~/.bashrc && source ~/.bashrc


Проверяем:


touch important.cfg
rm important.cfg
ls ~/.local/share/Trash/files # Файл на месте 🎉


Лайфхак:
> Хотите разные сроки хранения? Меняйте -mtime +30 на нужное количество дней.
> Регулярные выражения в find позволяют тоньше выбирать, что чистить (например, только логи *_$(date +%Y-%m-*)).

#СекретыСисадмина
Как мы в облаке MWS строим сети в Kubernetes и раздаём одинаковые IP на разные ВМ

🔗Читайте новые статьи в хабе DevCloud от MWS на Хабр:
➡️про Multus CNI и multi-homed поды
➡️про DHCP-сервер облака и раздачу IP в VRF

Рассказываем, как развиваем overlay-сеть платформы собственной разработки:

⏺️ почему Multus + Cilium — must-have для multi-homed подов
⏺️ как устроен DHCP в мире, где 192.168.0.1 могут быть у сотни клиентов
⏺️ зачем VPP прокидывает Option 82, и как мы ловили баги

⏩️Подпишись на хаб DevCloud от MWS, если интересна внутренняя кухня облаков.
Please open Telegram to view this post
VIEW IN TELEGRAM
Http logs viewer 💪

Онлайн-инструмент для визуализации логов Apache. Он позволяет:

* Загружать и анализировать логи Apache в реальном времени.
* Получать сводную информацию о трафике, ошибках, IP-адресах и запросах.
* Фильтровать и искать по логам по дате, коду ответа, URL и другим параметрам.
* Использовать инструмент прямо из браузера, без необходимости установки.

Подходит для быстрого анализа логов при отладке или расследовании инцидентов.

Читать

#СекретыСисадмина
Облачные решения: как снизить затраты и повысить эффективность?

Приглашаем на бесплатный вебинар Слёрма 11 июня в 17:00.

Обсудим:

🔹 Типичные ошибки при работе с облачными сервисами и их влияние на бизнес.
🔹 Настройку сетевых сервисов и контроль доступа.
🔹 Как неправильный выбор ресурсов может привести к сбоям.
🔹 Почему резервное копирование — обязательная часть стратегии.

Покажем практику и кейсы с фокусом на эффективность.

Присоединяйтесь, будем учиться контролировать затраты на облачные сервисы и брать от них максимум!

Регистрация в один клик 👈

erid: 2W5zFJG7MpC
Настройка ZSH в MacOS

С началом использования MacOS почти сразу понимаешь, что стандартный терминал не очень-то и удобен.

В качестве оболочки будем использовать ZSH, о нём, думаю, не слышал только любитель красивых UI, а вместо стандартного терминала используем iTerm2.

#СекретыСисадмина

📁 Скачать/Download 👇
⚛️ Крупнейший ИТ-интегратор Росатома — Гринатом — в поиске администратора Zabbix

✍️ В ваши задачи будет входить работа с обращениями в СУИТ, консультация заказчиков по настройке UserParametr на стороне Zabbix-agent, установленного на ресурсах заказчика, консультация заказчика по настройке пользовательских представлений данных в Grafana, Zabbix, ELK, разработка шаблонов для Zabbix 5.0 и другое.

Ждём вас, если у вас уже был опыт администрирования системы мониторинга Zabbix-5.0 (знания на уровне или близкие к ZCC) и других ОС, знакомы с анализом данных Grafana.

Откликнуться: https://hh.ru/vacancy/120626334
Media is too big
VIEW IN TELEGRAM
Введение в Linux - полный курс для начинающих

Если вы новичок в Linux, этот видеокурс для вас. Вы познакомитесь со многими инструментами, которые каждый день используются как системными администраторами Linux, так и миллионами людей, использующих дистрибутивы Linux. Этот курс научит вас ориентироваться в интерфейсе Linux и экосистеме мощных инструментов командной строки.

0:00:00 Вступление
0:01:39 Введение в семейство Linux
0:07:40 Философия Linux и общие понятия
0:16:38 Основы Linux и Запуск системы
1:05:40 Графический интерфейс
1:34:35 Конфигурирование системы через интерфейс
2:04:35 Общие приложения
2:13:06 Операции в командной строке
3:26:03 Поиск документации по Linux
3:37:07 Процессы
4:08:07 Операции с файлами
4:31:28 Текстовые редакторы
4:49:43 Пользовательское окружение
5:13:51 Манипуляции с текстом
5:40:24 Сетевые операции

Смотреть это видео на youtube: youtu.be/MLgAlsD5KuU

#СекретыСисадмина