Admin Guides | Сисадмин
11.5K subscribers
1.39K photos
20 videos
34 files
590 links
Обучающий канал по ОС Linux & Windows для начинающих и действующих администраторов.

Админ, реклама: @Ak_Mihail
Биржа: https://telega.in/c/admguides

РКН: https://kurl.ru/nQejS
Download Telegram
Как откатить изменения в конфиге, если сервер не грузится

Классическая ситуация: правишь sshd_config или fstab, сохраняешь, перезапускаешь — и сервер уходит в тишину. Ни SSH, ни консоли.

Решение:
1️⃣Зайди в rescue-режим (через панель провайдера или GRUB → Advanced options → Rescue mode).
2️⃣Примонтируй системный раздел:

mount /dev/sda1 /mnt
chroot /mnt


3️⃣Откати изменения:

mv /etc/ssh/sshd_config.bak /etc/ssh/sshd_config


или аналогично для fstab.

4️⃣Перезапусти систему:

reboot


Чтобы не попасть в такую ситуацию снова, добавь автоматическое резервирование в .bashrc:

alias edit='cp "$1" "$1.bak.$(date +%F_%T)" && nano "$1"'


Теперь при каждом редактировании через edit /etc/ssh/sshd_config создаётся бэкап с датой и временем.
Please open Telegram to view this post
VIEW IN TELEGRAM
8🔥5
💬 Вопрос на собеседовании для сисадмина

Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.


Вопрос: Что такое HugePages в Linux и зачем они нужны?

Ответ: HugePages — это механизм управления памятью, позволяющий использовать страницы большего размера (обычно 2 МБ или 1 ГБ вместо стандартных 4 КБ).

Зачем это нужно:
• Уменьшается количество записей в таблице страниц (page table),
• Снижается нагрузка на TLB (Translation Lookaside Buffer),
• Уменьшается overhead при управлении памятью, особенно в базах данных и JVM.
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍5
Copilot научится видеть экран и выполнять действия на ПК

Microsoft представила новые функции ИИ-помощника Copilot для обычных ПК с Windows 11 — без Copilot+.

Теперь Copilot сможет:

Сканировать экран и понимать его содержимое (Copilot Vision).
Принимать голосовые команды через фразу «Hey, Copilot».
Выполнять действия на ПК (Copilot Actions) — например, редактировать папки с фото или бронировать столик. Actions работает в изолированной среде для безопасности.

Также Microsoft добавила Xbox Gaming Copilot — игровой помощник, который даёт советы и рекомендации во время игры.
Please open Telegram to view this post
VIEW IN TELEGRAM
👎10🤔94👍1
Как вернуть сеть, если Netplan или NetworkManager всё поломали

Иногда после изменения netplan или профилей NetworkManager сервер внезапно «пропадает» из сети — SSH не отвечает, а виноват один неудачный apply.

Такая ситуация особенно часта после ручных правок IP, gateway или имен интерфейсов в YAML-файле.

Если есть доступ к консоли (через провайдера или локальный терминал), попробуй сначала безопасный режим:

netplan try


Он применит изменения временно и даст 120 секунд, чтобы подтвердить — если не подтвердить, система откатится сама.

Если сеть уже упала — верни предыдущий конфиг:

mv /etc/netplan/01-netcfg.yaml.bak /etc/netplan/01-netcfg.yaml
netplan apply


Для NetworkManager можно просто перезагрузить соединения:

nmcli connection reload
systemctl restart NetworkManager


Чтобы не оказаться без связи в будущем, всегда делай резерв перед apply:

cp /etc/netplan/*.yaml /etc/netplan/*.yaml.bak


И по возможности тестируй сетевые изменения через netplan try или в отдельной VM — спасает часы отладки.
👍134
Реальное фото меня, когда я говорю семье и друзьям, что я не компьютерный техник
😁172
💬 Вопрос на собеседовании для DevOps-инженера

Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.


Вопрос: Что такое lockless programming и зачем его используют в ядре Linux?

Ответ: Lockless programming — это подход к синхронизации данных, при котором операции с общими ресурсами выполняются без традиционных блокировок (mutex/spinlock). Вместо этого используются атомарные операции, RCU (Read-Copy-Update), или другие механизмы, позволяющие читать и модифицировать данные безопасно и без блокировки потоков.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁73
Как восстановить SSH, если после обновления пакетов сервер не пускает

Иногда после апдейта openssh-server или ключевых библиотек SSH перестаёт работать: SSH-клиент зависает или отказывается подключаться.

Часто виноваты несовместимые конфиги или устаревшие ключи.

Если есть доступ к консоли (через провайдера или локальный терминал), первым делом проверь статус сервиса:

systemctl status ssh


Попробуй перезапустить сервер SSH:

systemctl restart ssh


Если перезапуск не помогает — верни старый конфиг:

cp /etc/ssh/sshd_config.bak /etc/ssh/sshd_config
systemctl restart ssh
👎10👍8😁42🫡1
Сбой в AWS затронул множество сервисов по всему миру

Инженеры AWS продолжают устранять масштабный сетевой сбой в центре обработки данных US‑EAST-1.

Проблема возникла во внутренней сети EC2 и затронула более 100 сервисов и тысячи клиентов.


AWS ограничивает запуск новых инстансов EC2 и снижает нагрузку на сетевые балансировщики, чтобы восстановить подключение и работу API.

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

Из-за сбоя пострадали Airtable, Canva, Signal, Snapchat, Fortnite, ChatGPT, Duolingo, Zoom, Ring, Hulu, Slack, Reddit, Roblox, Coinbase, Robinhood, приложения McDonald’s, United Airlines и Disney.

У пользователей Alexa колонки массово сообщали о недоступности интернета.
Please open Telegram to view this post
VIEW IN TELEGRAM
4😁3
После изменения правил firewall или iptables сервер перестал отвечать по SSH?

Не паникуем 👌

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

Временно откатить правила из бэкапа:

iptables-restore < /etc/iptables/rules.v4.bak


Протестировать новые правила перед применением:

iptables-apply --test


Команда применяет изменения временно и даст 60 секунд на подтверждение. Если что-то пойдёт не так, правила откатятся автоматически.

Проверка текущих правил и соединений:

iptables -L -v -n
ss -tulnp


Так можно убедиться, что SSH и другие критичные сервисы доступны.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍115😁2
💬 Вопрос на собеседовании для сисадмина

Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.


Вопрос: Что такое kprobes и как они используются для динамической трассировки ядра Linux?

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

С помощью kprobes можно логировать вход и выход из функций, изменять поведение отдельных вызовов и собирать статистику по производительности. Механизм безопасен, так как вставка точки трассировки не нарушает работу ядра и не требует перезагрузки системы.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍93
Изменил настройки firewall или iptables, и вдруг сервер «пропал» из сети?

Решаем так
👇

Если есть доступ к консоли через провайдера или локальный терминал, сначала проверь, какие правила сейчас активны:

iptables -L -v -n


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

iptables-apply --test


Если что-то пошло не так — откат произойдёт автоматически.

Для более безопасной работы всегда держи резервную копию:

iptables-save > ~/iptables-backup-$(date +%F).rules


И проверяй соединения:

ss -tulnp


Так можно экспериментировать с firewall, не теряя доступ к серверу.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥63🤡1
Проверка, что реально грузит CPU

Когда сервер кажется «тормозным», top и htop часто показывают поверхностную картину.

Иногда виноваты shared библиотеки, а не сам процесс.

📝smem — утилита, которая учитывает shared memory и показывает реальное потребление:

smem -r | sort -nrk 4 | head -n 10


Выведет топ процессов по реальной памяти.

📝pidstat — для мониторинга нагрузки в динамике:

pidstat -u 2 10


Показывает, какие процессы жрут CPU каждые 2 секунды в течение 10 замеров.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍94🔥3
Rust Coreutils 0.3.0: быстрее, безопаснее и почти как GNU

24 октября 2025 вышел Rust Coreutils 0.3.0 (uutils) — аналог GNU Coreutils, но на Rust.

Это более сотни утилит вроде ls, cat, chmod, sort и cp, переписанных с упором на кроссплатформенность и безопасность (работает даже на Windows, Redox и Fuchsia).

Что нового:
sort стал быстрее GNU-версии в 3.7 раза, base64 — в 1.2, uniq -c — в 1.13;
добавлена инфраструктура для автоматического трекинга производительности (через CodSpeed);
улучшена работа с путями, безопасное обращение с rm, du, chmod, chgrp;
меньше unsafe, больше Rust-подхода через crate nix;
добавлены новые флаги (--progress, --reference=file, --base58 и др.);
совместимость с GNU-тестами — 83.9% (немного ниже из-за новых тестов).

Любопытный факт: именно из-за отсутствия флага --reference в date на Ubuntu 25.10 сломалось автообновление. Теперь всё исправили.


Rust Coreutils распространяется по MIT-лицензии, в отличие от GPL у GNU, и уже движется к полной замене классических coreutils.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍104🥱1
OSPF Passive Interface: контроль анонсов маршрутов

В крупных сетях бывают интерфейсы, которые должны только получать маршруты OSPF, но не формировать соседства.

Если оставить их активными, маршрутизатор рассылает hello-пакеты на все интерфейсы, создавая лишний трафик и раскрывая топологию сети. 


Passive Interface решает эту проблему.

С его помощью интерфейс продолжает принимать маршруты, но не инициирует соседские сессии.

Маршрутизатор знает всё, что нужно, при этом сеть становится «тише», а нагрузка на CPU снижается.

На Cisco IOS настройка выглядит так:

router ospf 1
network 10.0.0.0 0.0.0.255 area 0
passive-interface GigabitEthernet0/1


После применения этой команды интерфейс GigabitEthernet0/1 перестанет отправлять hello-пакеты, но маршруты через другие интерфейсы продолжают работать корректно.

На Juniper JunOS принцип аналогичен:

protocols ospf {
interface ge-0/0/1.0 {
passive
}
}


Passive Interface особенно нужен на VLAN-подсетях и внутренних сегментах, где соседей нет.

🔥Если сочетать passive mode с аутентификацией OSPF, вы получаете дополнительный уровень безопасности. Маршруты продолжают приходить, сеть остаётся стабильной, а ненужные пакеты hello больше не «шумят» в топологии.
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍4🔥1
💬 Вопрос на собеседовании для DevOps-инженера

Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.


Вопрос: Что такое RCU (Read-Copy-Update) и почему это эффективный механизм синхронизации?

Ответ: RCU (Read-Copy-Update) — это механизм синхронизации, оптимизированный для сценариев с частым чтением и редкими изменениями. Основная идея в том, что читатели могут получать доступ к структурам данных без блокировок, а обновления выполняются через создание новой копии данных.

При изменении структуры создаётся её новая версия, обновление “публикуется”, а старые версии остаются доступными для текущих читателей. После того как все старые читатели завершили работу, ядро удаляет устаревшие копии.
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥3
udev: управление устройствами автоматически

В Linux устройства появляются и исчезают постоянно — USB-диски, сетевые карты, внешние диски.

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


Тут поможет udev — подсистема, которая позволяет автоматически выполнять действия при появлении устройства.

udev работает через правила, которые проверяют свойства устройства: тип, серийный номер, производитель, интерфейс.

В зависимости от условий можно задавать имя устройства, права, группу, запускать скрипты или автоматически монтировать диск.

Например, правило для автоматического переименования USB-диска по серийному номеру выглядит так:

SUBSYSTEM=="block", ATTRS{serial}=="12345678", NAME="usb_backup"


После перезагрузки или переподключения устройства оно всегда будет называться /dev/usb_backup.

Чтобы автоматически монтировать диск с конкретными правами, можно использовать RUN и mount:

SUBSYSTEM=="block", ATTRS{serial}=="12345678", ACTION=="add", RUN+="/usr/bin/mount /dev/%k /mnt/backup"


udev позволяет назначать права и группы для устройств, например, чтобы обычный пользователь мог записывать на USB-диск:

SUBSYSTEM=="block", ATTRS{serial}=="12345678", MODE="0660", GROUP="users"


Файлы правил обычно лежат в /etc/udev/rules.d/. После добавления или изменения правил нужно перезагрузить udev:

sudo udevadm control --reload
sudo udevadm trigger
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍4🔥4
10😁1😢1
logrotate для нестандартных каталогов

В Linux большинство системных логов лежит в /var/log, и для них уже настроена ротация.

Но приложения часто пишут логи в свои каталоги, например /opt/myapp/logs или /srv/service/logs. 


Без ротации такие файлы могут быстро «съесть» диск. Для этого используется logrotate с кастомными конфигурациями.

Создаём файл конфигурации для нашего приложения, например /etc/logrotate.d/myapp:

/opt/myapp/logs/*.log {
daily
rotate 7
compress
missingok
notifempty
create 0640 myuser mygroup
postrotate
systemctl reload myapp
endscript
}


Что здесь происходит: файлы логов в /opt/myapp/logs/ будут ротацироваться каждый день, храниться 7 архивов, старые версии будут сжиматься, а если лог пустой — пропускается.

После ротации сервис перезагружается, чтобы продолжить писать в новый файл.

Проверить конфигурацию можно в режиме dry-run:

sudo logrotate -d /etc/logrotate.d/myapp


И вручную запустить ротацию:

sudo logrotate -f /etc/logrotate.d/myapp
Please open Telegram to view this post
VIEW IN TELEGRAM
👍125👎1