Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.
Преимущества:
• Раннее выявление ошибок: уязвимости и баги можно обнаружить на ограниченном сегменте пользователей.
• Контроль за выпуском: позволяет использовать такие стратегии, как Canary Deployment или Feature Flags, чтобы управлять доступом к новым функциям.
• Быстрый откат: в случае сбоя можно быстро отключить новый функционал или переключиться на предыдущую версию без значительных последствий для всех пользователей.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤2
Microsoft запустила баннеры для ускорения перехода на Windows 11 24H2
Microsoft начала показывать пользователям Windows 10 баннеры с рекламой обновления до Windows 11 24H2, чтобы ускорить переход на новую версию ОС.
Представитель Microsoft подтвердил, что пользователи Windows 10 могут перейти на Windows 11 24H2 бесплатно.
Эксперимент с баннерами продлится несколько недель, так как поддержка Windows 10 завершится 14 октября 2025 года. После этой даты обновления для Windows 10 будут доступны за $30 в год.
Для корпоративных клиентов Microsoft предусмотрена программа ESU с ежегодным ростом стоимости: $61 за первый год, $122 — за второй, $244 — за третий.
Для образовательных учреждений продление будет стоить $1, $2 и $4 соответственно за каждый из трёх лет.
🔥 Недавно Microsoft напомнила о причинах перехода на Windows 11, включая повышенную скорость, эффективность и инструменты на основе ИИ.
Microsoft начала показывать пользователям Windows 10 баннеры с рекламой обновления до Windows 11 24H2, чтобы ускорить переход на новую версию ОС.
При нажатии на баннер стартует автоматический процесс обновления.
Представитель Microsoft подтвердил, что пользователи Windows 10 могут перейти на Windows 11 24H2 бесплатно.
Эксперимент с баннерами продлится несколько недель, так как поддержка Windows 10 завершится 14 октября 2025 года. После этой даты обновления для Windows 10 будут доступны за $30 в год.
Для корпоративных клиентов Microsoft предусмотрена программа ESU с ежегодным ростом стоимости: $61 за первый год, $122 — за второй, $244 — за третий.
Для образовательных учреждений продление будет стоить $1, $2 и $4 соответственно за каждый из трёх лет.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤬17👍4
Как проверить порт в Windows: PowerShell и Telnet
В Windows доступно несколько инструментов для проверки доступности порта, среди них PowerShell и Telnet. Вот как их использовать.
PowerShell
1. Откройте PowerShell.
2. Выполните команду для проверки порта:
Пример:
⏺ Результат: Если порт открыт и соединение установлено, PowerShell отобразит соответствующее сообщение.
Telnet
1. Проверьте включен ли Telnet: Зайдите в Панель управления > Программы > Включение или отключение компонентов Windows. Установите галочку рядом с Telnet-клиент, если он не был активирован.
2. Откройте командную строку (Win + R, затем введите cmd).
3. Введите команду для проверки порта:
Пример:
⏺ Результат: При активном порте Telnet установит соединение. В противном случае появится сообщение об ошибке, указывающее, что порт закрыт или недоступен.
В Windows доступно несколько инструментов для проверки доступности порта, среди них PowerShell и Telnet. Вот как их использовать.
PowerShell
1. Откройте PowerShell.
2. Выполните команду для проверки порта:
Test-NetConnection -ComputerName [address] -Port [port_number]
Пример:
Test-NetConnection -ComputerName google.com -Port 443
Telnet
1. Проверьте включен ли Telnet: Зайдите в Панель управления > Программы > Включение или отключение компонентов Windows. Установите галочку рядом с Telnet-клиент, если он не был активирован.
2. Откройте командную строку (Win + R, затем введите cmd).
3. Введите команду для проверки порта:
telnet [address] [port_number]
Пример:
telnet google.com 443
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21
Какая команда позволяет сжать файл с максимальной степенью сжатия, используя алгоритм bzip2?
Anonymous Quiz
24%
gzip -9
8%
compress
61%
bzip2 -9
7%
xz -9
😁13👍3
Настройка сети с помощью команды ss в Linux
Команда ss — это мощный инструмент командной строки для анализа и мониторинга сетевой статистики в Linux. ss входит в пакет iproute2 и является быстрой альтернативой устаревшей команде netstat.
Эта команда позволяет отображать активные сетевые соединения, прослушивающие сокеты и различные статистические данные о сети.
Основной синтаксис команды ss
Для использования команды ss достаточно ввести базовую команду с необходимыми параметрами и фильтрами:
• [options] — набор параметров, позволяющий фильтровать результаты по определенным протоколам и состояниям сокетов (например, только TCP или UDP-соединения).
• [filter] — дополнительные фильтры для сортировки сокетов, что помогает сократить объём отображаемых данных и найти нужные соединения.
Полезные параметры команды ss
1️⃣ Показ всех активных соединений (TCP и UDP):
Параметр -a позволяет увидеть все сокеты, включая прослушивающие и активные соединения.
2️⃣ Отображение всех прослушивающих TCP-сокетов:
Параметр -l указывает на прослушивающие сокеты, а -t фильтрует только TCP-соединения.
3️⃣ Фильтрация только UDP-соединений:
Здесь параметр -u выводит только UDP-сокеты.
4️⃣ Просмотр всех TCP-соединений с подробной информацией:
Параметры:
• -n отключает преобразование IP-адресов и портов в имена.
• -t фильтрует только TCP-соединения.
• -a показывает все соединения.
• -p выводит PID и имя процесса, который использует сокет.
5️⃣ Фильтрация по состоянию соединения:
Например, для отображения всех активных TCP-соединений в состоянии ESTABLISHED:
6️⃣ Вывод статистики по IP-адресам:
Чтобы получить более детальную информацию о сетевом трафике, используйте ss с параметром -i, что позволяет вывести статистику по IP-адресам:
Примеры фильтрации по портам и адресам
⏺ Просмотр сокетов, связанных с определённым портом:
Этот пример фильтрует только соединения, связанные с портом 80.
⏺ Просмотр соединений с определённым IP-адресом:
Параметр src задаёт фильтр по исходному IP-адресу, показывая только соединения, отправленные с IP 192.168.1.100.
Быстрая проверка сокетов с ss
С помощью команды ss можно оперативно проверить активные сетевые соединения и статус сокетов. Это помогает администратору отслеживать сетевую активность, диагностировать проблемы и контролировать нагрузку на сервер.
Пример: просмотр всех соединений HTTP (порт 80):
Вывод статистики по всему сетевому трафику на машине:
ss — гибкий и эффективный инструмент для контроля сетевых соединений, что делает его незаменимым в системном администрировании Linux.
Команда ss — это мощный инструмент командной строки для анализа и мониторинга сетевой статистики в Linux. ss входит в пакет iproute2 и является быстрой альтернативой устаревшей команде netstat.
Эта команда позволяет отображать активные сетевые соединения, прослушивающие сокеты и различные статистические данные о сети.
Основной синтаксис команды ss
Для использования команды ss достаточно ввести базовую команду с необходимыми параметрами и фильтрами:
ss [options] [filter]
• [options] — набор параметров, позволяющий фильтровать результаты по определенным протоколам и состояниям сокетов (например, только TCP или UDP-соединения).
• [filter] — дополнительные фильтры для сортировки сокетов, что помогает сократить объём отображаемых данных и найти нужные соединения.
Полезные параметры команды ss
ss -a
Параметр -a позволяет увидеть все сокеты, включая прослушивающие и активные соединения.
ss -lt
Параметр -l указывает на прослушивающие сокеты, а -t фильтрует только TCP-соединения.
ss -lu
Здесь параметр -u выводит только UDP-сокеты.
ss -ntap
Параметры:
• -n отключает преобразование IP-адресов и портов в имена.
• -t фильтрует только TCP-соединения.
• -a показывает все соединения.
• -p выводит PID и имя процесса, который использует сокет.
Например, для отображения всех активных TCP-соединений в состоянии ESTABLISHED:
ss -t state established
Чтобы получить более детальную информацию о сетевом трафике, используйте ss с параметром -i, что позволяет вывести статистику по IP-адресам:
ss -i
Примеры фильтрации по портам и адресам
ss -at '( dport = :80 )'
Этот пример фильтрует только соединения, связанные с портом 80.
ss -t src 192.168.1.100
Параметр src задаёт фильтр по исходному IP-адресу, показывая только соединения, отправленные с IP 192.168.1.100.
Быстрая проверка сокетов с ss
С помощью команды ss можно оперативно проверить активные сетевые соединения и статус сокетов. Это помогает администратору отслеживать сетевую активность, диагностировать проблемы и контролировать нагрузку на сервер.
Пример: просмотр всех соединений HTTP (порт 80):
ss -at '( sport = :80 )'
Вывод статистики по всему сетевому трафику на машине:
ss -s
ss — гибкий и эффективный инструмент для контроля сетевых соединений, что делает его незаменимым в системном администрировании Linux.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23🔥6❤3👎2
VMware Fusion и Workstation теперь бесплатны для всех пользователей
Компания Broadcom объявила, что виртуализационные продукты VMware Fusion и VMware Workstation стали бесплатными для всех — как для коммерческого, так и для образовательного и личного использования.
«Вместе с этим, платные версии Workstation Pro и Fusion Pro больше не будут доступны для покупки», — сообщил Химаншу Сингх, директор по маркетингу продуктов Broadcom.
Корпоративные клиенты смогут использовать бесплатные версии без тикетов поддержки для устранения неполадок, однако полный уровень обслуживания сохранится для пользователей, работающих по коммерческим контрактам.
В компании также подтвердили, что проект VMware Workstation переходит на KVM (Linux Kernel-based Virtual Machine) — патчи, предлагающие замену проприетарного кода, уже направлены для включения в ядро Linux.
👀 Ранее в этом году Broadcom также приостановила продажи бессрочных лицензий VMware, а также убрала возможность заключать контракты на обслуживание напрямую через партнёрский портал.
Компания Broadcom объявила, что виртуализационные продукты VMware Fusion и VMware Workstation стали бесплатными для всех — как для коммерческого, так и для образовательного и личного использования.
Теперь для загрузки этих программ достаточно зарегистрировать учетную запись на портале Broadcom.
«Вместе с этим, платные версии Workstation Pro и Fusion Pro больше не будут доступны для покупки», — сообщил Химаншу Сингх, директор по маркетингу продуктов Broadcom.
Корпоративные клиенты смогут использовать бесплатные версии без тикетов поддержки для устранения неполадок, однако полный уровень обслуживания сохранится для пользователей, работающих по коммерческим контрактам.
Broadcom продолжит развивать и обновлять VMware Fusion и Workstation, инвестируя в стабильность, новые функции и улучшения.
В компании также подтвердили, что проект VMware Workstation переходит на KVM (Linux Kernel-based Virtual Machine) — патчи, предлагающие замену проприетарного кода, уже направлены для включения в ядро Linux.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥28👍6😁4❤2
Упрощение поиска и устранения неисправностей с помощью lsof
Команда lsof в Unix-системах — это мощный инструмент для работы с открытыми файлами, процессами и сетевыми соединениями.
Чтобы сделать использование lsof проще и удобнее, рассмотрим несколько полезных приёмов: создание псевдонимов, шпаргалок и автоматизированных скриптов.
Псевдонимы для lsof
Создание псевдонимов (aliases) позволяет сократить время выполнения часто используемых команд lsof. Вот несколько примеров, которые упростят работу:
Эти псевдонимы можно добавить в ваш профиль (~/.bashrc или ~/.zshrc), чтобы быстро выполнять команды для различных задач.
В зависимости от вашего стиля работы и нужд, можно создавать псевдонимы для других полезных команд lsof, например, для отслеживания процессов по PID или для поиска файлов по определённым путям.
Применение скриптов для автоматизации lsof
Автоматизация часто выполняемых задач с помощью скриптов может значительно сократить время на устранение неполадок. Пример простого скрипта:
Этот скрипт проверяет, является ли переданный аргумент IP-адресом или портом, и затем выводит соответствующую информацию. Такой подход позволяет упростить работу с lsof и адаптировать скрипт под конкретные нужды.
Продвинутые команды и фишки lsof
Чтобы максимально использовать возможности lsof, рассмотрим ещё несколько продвинутых команд.
Показать все процессы, работающие с определённым файлом
Для отслеживания процессов, использующих конкретный файл:
Эта команда полезна, когда файл не может быть перемещён или удалён из-за занятости другими процессами.
Показать сетевую активность для удалённых IP
Для вывода сетевой активности с конкретным удалённым IP-адресом:
Это позволит быстро найти соединения с указанным хостом, что удобно при диагностике внешних подключений.
Показать только соединения с LISTEN состоянием
Чтобы отобразить все слушающие соединения, используйте:
Состояние LISTEN полезно для мониторинга серверных приложений и для поиска активных служб.
Поиск файлов, открытых в определённый момент
Чтобы увидеть файлы, открытые конкретным процессом в определённое время, используйте:
Замена [PID] на ID процесса и [timestamp] на время позволяет отфильтровать записи и быстрее найти нужную информацию.
Показать PID процессов, заблокировавших файловое устройство
Для проверки процессов, занявших определённое устройство, например, /dev/sda1:
Этот пример выдаст уникальные PID процессов, удерживающих доступ к указанному устройству, что полезно при ошибках в работе с дисками.
Завершение процессов, заблокировавших порт
Если необходимо завершить процессы, которые заняли определённый порт, можно использовать такую команду:
Замените port_number на нужный порт. Будьте осторожны с завершением процессов: лучше использовать его, когда вы точно знаете, что прерывание процесса безопасно.
Команда lsof в Unix-системах — это мощный инструмент для работы с открытыми файлами, процессами и сетевыми соединениями.
Чтобы сделать использование lsof проще и удобнее, рассмотрим несколько полезных приёмов: создание псевдонимов, шпаргалок и автоматизированных скриптов.
Псевдонимы для lsof
Создание псевдонимов (aliases) позволяет сократить время выполнения часто используемых команд lsof. Вот несколько примеров, которые упростят работу:
# Показать все открытые файлы текущего пользователя
alias showfiles="sudo lsof -u $USER"
alias showmyfiles="sudo lsof -u $USER"
alias ofiles="sudo lsof -u $USER"
# Показать процессы, связанные с портом 80 (например, веб-сервер)
alias port80="sudo lsof -i :80"
# Показать все сетевые подключения для текущего пользователя
alias mynet="sudo lsof -u $USER -i"
# Показать активные сетевые подключения
alias netactive="sudo lsof -iTCP -sTCP:ESTABLISHED"
# Показать только UDP соединения
alias netudp="sudo lsof -iUDP"
Эти псевдонимы можно добавить в ваш профиль (~/.bashrc или ~/.zshrc), чтобы быстро выполнять команды для различных задач.
В зависимости от вашего стиля работы и нужд, можно создавать псевдонимы для других полезных команд lsof, например, для отслеживания процессов по PID или для поиска файлов по определённым путям.
Применение скриптов для автоматизации lsof
Автоматизация часто выполняемых задач с помощью скриптов может значительно сократить время на устранение неполадок. Пример простого скрипта:
#!/bin/bash
# Сохраните этот файл как mylsof.sh и сделайте его исполняемым:
# chmod +x mylsof.sh
# Скрипт для отображения сетевой активности по IP или порту
if [[ $1 =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "Показ сетевой активности для IP: $1"
sudo lsof -i @$1
elif [[ $1 =~ ^[0-9]+$ ]]; then
echo "Показ процессов, использующих порт: $1"
sudo lsof -i :$1
else
echo "Использование: ./mylsof.sh [IP-адрес | порт]"
fi
Этот скрипт проверяет, является ли переданный аргумент IP-адресом или портом, и затем выводит соответствующую информацию. Такой подход позволяет упростить работу с lsof и адаптировать скрипт под конкретные нужды.
Продвинутые команды и фишки lsof
Чтобы максимально использовать возможности lsof, рассмотрим ещё несколько продвинутых команд.
Показать все процессы, работающие с определённым файлом
Для отслеживания процессов, использующих конкретный файл:
lsof /path/to/file
Эта команда полезна, когда файл не может быть перемещён или удалён из-за занятости другими процессами.
Показать сетевую активность для удалённых IP
Для вывода сетевой активности с конкретным удалённым IP-адресом:
lsof -i @remote_ip
Это позволит быстро найти соединения с указанным хостом, что удобно при диагностике внешних подключений.
Показать только соединения с LISTEN состоянием
Чтобы отобразить все слушающие соединения, используйте:
lsof -iTCP -sTCP:LISTEN
Состояние LISTEN полезно для мониторинга серверных приложений и для поиска активных служб.
Поиск файлов, открытых в определённый момент
Чтобы увидеть файлы, открытые конкретным процессом в определённое время, используйте:
lsof -p [PID] | grep '[timestamp]'
Замена [PID] на ID процесса и [timestamp] на время позволяет отфильтровать записи и быстрее найти нужную информацию.
Показать PID процессов, заблокировавших файловое устройство
Для проверки процессов, занявших определённое устройство, например, /dev/sda1:
lsof /dev/sda1 | awk '{print $2}' | sort -u
Этот пример выдаст уникальные PID процессов, удерживающих доступ к указанному устройству, что полезно при ошибках в работе с дисками.
Завершение процессов, заблокировавших порт
Если необходимо завершить процессы, которые заняли определённый порт, можно использовать такую команду:
kill -9 $(lsof -t -i :port_number)
Замените port_number на нужный порт. Будьте осторожны с завершением процессов: лучше использовать его, когда вы точно знаете, что прерывание процесса безопасно.
👍17🔥6❤3
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11👍7🥴4🗿2
16 полезных примеров использования команды grep
Команда grep — это незаменимый инструмент для работы с текстовыми данными в Unix/Linux-системах.
В этом посте рассмотрим 8 первых примеров из 16 полезных вариантов использования.
1️⃣ Поиск среди нескольких файлов
Ищите нужный шаблон сразу в нескольких файлах с помощью подстановочного символа *:
Вывод покажет, в каких файлах найдено совпадение, и строки, содержащие искомое слово.
2️⃣ Регистронезависимый поиск
Если неважно, в каком регистре написан текст, используйте флаг -i:
3️⃣ Поиск только целых слов
Чтобы искать точное совпадение слов (а не подстрок), используйте флаг -w:
4️⃣ Подсчёт числа совпадений
Если нужен только подсчёт количества строк, где есть совпадение, флаг -c сделает это:
5️⃣ Рекурсивный поиск в подкаталогах
Ищите шаблон во всех файлах текущей директории и её поддиректориях:
6️⃣ Инверсивный поиск
Чтобы найти строки, не содержащие заданный шаблон, используйте флаг -v:
7️⃣ Нумерация строк в выводе
Для удобства можно добавить номера строк, в которых найдено совпадение:
8️⃣ Ограничение количества строк в выводе
Если нужно вывести только первые N строк с совпадениями, используйте флаг -m:
Пример: выводит первые 5 строк, где найден шаблон.
Продолжим?
Команда grep — это незаменимый инструмент для работы с текстовыми данными в Unix/Linux-системах.
В этом посте рассмотрим 8 первых примеров из 16 полезных вариантов использования.
Ищите нужный шаблон сразу в нескольких файлах с помощью подстановочного символа *:
grep "ошибка" /var/log/*
Вывод покажет, в каких файлах найдено совпадение, и строки, содержащие искомое слово.
Если неважно, в каком регистре написан текст, используйте флаг -i:
grep -i "ошибка" file.txt
Чтобы искать точное совпадение слов (а не подстрок), используйте флаг -w:
grep -w "error" file.txt
Если нужен только подсчёт количества строк, где есть совпадение, флаг -c сделает это:
grep -c "ошибка" file.txt
Ищите шаблон во всех файлах текущей директории и её поддиректориях:
grep -r "ошибка"
Чтобы найти строки, не содержащие заданный шаблон, используйте флаг -v:
grep -v "ошибка" file.txt
Для удобства можно добавить номера строк, в которых найдено совпадение:
grep -n "ошибка" file.txt
Если нужно вывести только первые N строк с совпадениями, используйте флаг -m:
grep -m 5 "ошибка" file.txt
Пример: выводит первые 5 строк, где найден шаблон.
Продолжим?
Please open Telegram to view this post
VIEW IN TELEGRAM
👍44❤5🔥3👎1
16 полезных примеров использования команды grep (часть 2)
Продолжаем разбирать возможности команды grep в Unix/Linux.
В этом посте рассмотрим ещё 8 примеров, которые помогут вам максимально эффективно использовать этот инструмент.
9️⃣ Вывод строк с контекстом (до и после совпадения)
Чтобы видеть строки до и/или после совпавших, используйте флаги:
• -A [N] — вывести N строк после совпадения,
• -B [N] — вывести N строк до совпадения,
• -C [N] — вывести N строк до и после.
Пример:
1️⃣ 0️⃣ Печать только названий файлов с совпадениями
Чтобы вывести только имена файлов, в которых есть совпадение, используйте флаг -l:
1️⃣ 1️⃣ Точное совпадение строки
Флаг -x позволяет искать строки, которые точно соответствуют указанному шаблону:
Пример: найдёт строку, если она полностью совпадает с заданной, без дополнительных символов.
1️⃣ 2️⃣ Поиск в начале строки
Символ каретки ^ позволяет искать шаблон только в начале строки:
1️⃣ 3️⃣ Поиск в конце строки
Чтобы искать совпадения только в конце строки, используйте символ $:
1️⃣ 4️⃣ Использование файла шаблонов
Если вы часто используете сложные шаблоны, запишите их в файл и примените с помощью флага -f:
Содержимое файла patterns.txt:
Использование:
1️⃣ 5️⃣ Поиск по нескольким шаблонам
Для поиска сразу нескольких шаблонов используйте флаг -e:
1️⃣ 6️⃣ Расширенные регулярные выражения (ERE)
С помощью флага -E (или команды egrep) можно использовать расширенные регулярные выражения:
Пример: ищет строки, содержащие либо error, либо warning. Это эквивалентно использованию egrep.
Продолжаем разбирать возможности команды grep в Unix/Linux.
В этом посте рассмотрим ещё 8 примеров, которые помогут вам максимально эффективно использовать этот инструмент.
Чтобы видеть строки до и/или после совпавших, используйте флаги:
• -A [N] — вывести N строк после совпадения,
• -B [N] — вывести N строк до совпадения,
• -C [N] — вывести N строк до и после.
Пример:
grep -A 2 "ошибка" file.txt # Покажет 2 строки после совпадения
grep -B 1 "ошибка" file.txt # Покажет 1 строку до совпадения
grep -C 3 "ошибка" file.txt # Покажет 3 строки до и после
Чтобы вывести только имена файлов, в которых есть совпадение, используйте флаг -l:
grep -l "ошибка" *.log
Флаг -x позволяет искать строки, которые точно соответствуют указанному шаблону:
grep -x "точный шаблон" file.txt
Пример: найдёт строку, если она полностью совпадает с заданной, без дополнительных символов.
Символ каретки ^ позволяет искать шаблон только в начале строки:
grep "^запуск" file.txt
Чтобы искать совпадения только в конце строки, используйте символ $:
grep "ошибка$" file.txt
Если вы часто используете сложные шаблоны, запишите их в файл и примените с помощью флага -f:
Содержимое файла patterns.txt:
ошибка
предупреждение
Использование:
grep -f patterns.txt file.txt
Для поиска сразу нескольких шаблонов используйте флаг -e:
grep -e "ошибка" -e "предупреждение" file.txt
С помощью флага -E (или команды egrep) можно использовать расширенные регулярные выражения:
grep -E "error|warning" file.txt
Пример: ищет строки, содержащие либо error, либо warning. Это эквивалентно использованию egrep.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20🔥4❤1
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥3🥱1
Как провести стресс-тестирование вашей системы Linux
Стресс-тестирование Linux — ключевой этап подготовки серверов к реальной работе.
Разберем простые методы и мощные инструменты, которые помогут нагрузить систему и оценить её поведение.
Почему важно проводить стресс-тестирование?
Стресс-тестирование полезно для:
• Проверки производительности системы при пиковых нагрузках.
• Выявления узких мест: медленных процессов, утечек памяти или перебоев в работе ввода/вывода.
• Подготовки серверов к реальной эксплуатации: от интенсивного сетевого трафика до выполнения ресурсоемких приложений.
Методы стресс-тестирования Linux
1️⃣ Нагрузка через циклы
Создание бесконечных циклов нагружает процессор. Это простой способ проверить систему.
Запуск нагрузки:
Каждый цикл запускается в фоновом режиме и увеличивает нагрузку на ЦП.
Мониторинг нагрузки:
Запускайте команду uptime каждые 30 секунд, чтобы наблюдать за изменением средней загрузки:
Остановка нагрузки:
Чтобы завершить циклы, используйте kill, указав номера заданий:
2️⃣ Использование утилиты stress
stress — мощный инструмент, который позволяет создавать нагрузку на различные ресурсы системы:
• ЦП
• Память
• Ввод/вывод
Примеры использования stress:
• Нагрузка на процессор:
Чем больше указано ядер (--cpu), тем выше нагрузка на систему.
• Нагрузка на память:
• Нагрузка на ввод/вывод (I/O):
Для анализа работы ввода/вывода используйте iotop:
3️⃣ Написание скриптов для мониторинга
Для удобного отслеживания нагрузки вы можете написать скрипт. Например, для мониторинга использования памяти:
Скрипт отображает использование памяти каждые 30 секунд. Вы можете адаптировать его под свои задачи.
Результаты стресс-тестирования
Проведение стресс-тестов помогает:
• Подготовиться к реальным пиковым нагрузкам.
• Улучшить производительность системы.
• Найти и устранить возможные проблемы на этапе разработки.
Стресс-тестирование Linux — ключевой этап подготовки серверов к реальной работе.
Оно позволяет выявить слабые места системы, проверить её устойчивость под высокой нагрузкой и подготовиться к неожиданным пиковым ситуациям.
Разберем простые методы и мощные инструменты, которые помогут нагрузить систему и оценить её поведение.
Почему важно проводить стресс-тестирование?
Стресс-тестирование полезно для:
• Проверки производительности системы при пиковых нагрузках.
• Выявления узких мест: медленных процессов, утечек памяти или перебоев в работе ввода/вывода.
• Подготовки серверов к реальной эксплуатации: от интенсивного сетевого трафика до выполнения ресурсоемких приложений.
Методы стресс-тестирования Linux
Создание бесконечных циклов нагружает процессор. Это простой способ проверить систему.
Запуск нагрузки:
for i in 1 2 3 4; do while : ; do : ; done & done
Каждый цикл запускается в фоновом режиме и увеличивает нагрузку на ЦП.
Мониторинг нагрузки:
Запускайте команду uptime каждые 30 секунд, чтобы наблюдать за изменением средней загрузки:
while true; do uptime; sleep 30; done
Остановка нагрузки:
Чтобы завершить циклы, используйте kill, указав номера заданий:
kill %1 %2 %3 %4
stress — мощный инструмент, который позволяет создавать нагрузку на различные ресурсы системы:
• ЦП
• Память
• Ввод/вывод
Примеры использования stress:
• Нагрузка на процессор:
stress --cpu 4
Чем больше указано ядер (--cpu), тем выше нагрузка на систему.
• Нагрузка на память:
stress --vm 2
• Нагрузка на ввод/вывод (I/O):
stress --io 4
Для анализа работы ввода/вывода используйте iotop:
sudo iotop
Для удобного отслеживания нагрузки вы можете написать скрипт. Например, для мониторинга использования памяти:
#!/bin/bash
while true
do
free
sleep 30
done
Скрипт отображает использование памяти каждые 30 секунд. Вы можете адаптировать его под свои задачи.
Результаты стресс-тестирования
Проведение стресс-тестов помогает:
• Подготовиться к реальным пиковым нагрузкам.
• Улучшить производительность системы.
• Найти и устранить возможные проблемы на этапе разработки.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤2💘2👏1
Какой командой можно удалить модуль ядра, который используется процессом?
Anonymous Quiz
28%
modprobe -r <имя_модуля>
13%
rmmod <имя_модуля>
33%
modprobe --force-remove <имя_модуля>
26%
rmmod -f <имя_модуля>
👍10❤1
Релиз AlmaLinux 9.5: что нового?
AlmaLinux 9.5 — новое обновление популярного open-source дистрибутива, полностью синхронизированного с Red Hat Enterprise Linux (RHEL) 9.5.
Ключевые особенности версии 9.5
⏺ Совместимость с архитектурами: x86_64, ARM64, ppc64le, s390x.
⏺ Удалены пакеты, связанные с экосистемой RHEL, такие как subscription-manager и insights-client.
⏺ Расширенная поддержка оборудования, включая драйверы для RAID-контроллеров (LSI MegaRAID, Dell PERC, Adaptec), сетевых адаптеров (Emulex OneConnect, QLogic ISP) и серверных платформ.
⏺ Новый репозиторий Synergy, предлагающий эксклюзивные пакеты, такие как окружение Pantheon от Elementary OS и утилита Warpinator для обмена файлами.
О проекте AlmaLinux
AlmaLinux был создан компанией CloudLinux в 2021 году после прекращения поддержки CentOS 8. Проект развивается под управлением AlmaLinux OS Foundation и обеспечивает полную бинарную совместимость с RHEL.
Дистрибутив:
• Бесплатен для всех пользователей.
• Управляется сообществом на открытой платформе.
• Все наработки доступны на GitHub.
Что нового в экосистеме AlmaLinux?
Разработчики также выпустили тестовый дистрибутив Kitten 10 на базе CentOS Stream 10. Это платформа для изучения будущих возможностей RHEL 10 и основа для следующей версии AlmaLinux.
AlmaLinux 9.5 — новое обновление популярного open-source дистрибутива, полностью синхронизированного с Red Hat Enterprise Linux (RHEL) 9.5.
Дистрибутив включает улучшения производительности, обновлённые инструменты и важные патчи безопасности.
Ключевые особенности версии 9.5
О проекте AlmaLinux
AlmaLinux был создан компанией CloudLinux в 2021 году после прекращения поддержки CentOS 8. Проект развивается под управлением AlmaLinux OS Foundation и обеспечивает полную бинарную совместимость с RHEL.
Дистрибутив:
• Бесплатен для всех пользователей.
• Управляется сообществом на открытой платформе.
• Все наработки доступны на GitHub.
Что нового в экосистеме AlmaLinux?
Разработчики также выпустили тестовый дистрибутив Kitten 10 на базе CentOS Stream 10. Это платформа для изучения будущих возможностей RHEL 10 и основа для следующей версии AlmaLinux.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥1
Как узнать причину перезагрузки Linux
Неожиданная перезагрузка Linux-системы может привести к простоям и потерям данных.
Разобраться в причинах — важный шаг для предотвращения таких инцидентов в будущем. Вот основные методы диагностики.
1️⃣ Проверка времени перезагрузки
Используйте команды who и last, чтобы определить, когда произошла перезагрузка.
Пример:
2️⃣ Анализ системных журналов
Системные логи содержат записи о событиях, связанных с завершением работы.
• Для CentOS/RHEL: /var/log/messages
• Для Ubuntu/Debian: /var/log/syslog
Пример фильтрации:
Это позволяет выявить действия, вызвавшие перезагрузку (например, нажатие кнопки питания или команду администратора).
3️⃣ Использование auditd
На системах с включённым auditd можно проверить события перезагрузки с помощью команды ausearch.
Пример:
Вывод поможет понять, была ли перезагрузка штатной или аварийной.
4️⃣ Журналы systemd
Если вы используете systemd, сохранённые логи помогут детально изучить события.
Убедитесь, что логи сохраняются:
Список перезагрузок:
Анализ конкретной загрузки:
Где {num} — идентификатор загрузки из предыдущей команды.
Неожиданная перезагрузка Linux-системы может привести к простоям и потерям данных.
Разобраться в причинах — важный шаг для предотвращения таких инцидентов в будущем. Вот основные методы диагностики.
Используйте команды who и last, чтобы определить, когда произошла перезагрузка.
Пример:
who -b # Показывает последнее время загрузки системы
last reboot # Список всех перезагрузок с отметками времени
Системные логи содержат записи о событиях, связанных с завершением работы.
• Для CentOS/RHEL: /var/log/messages
• Для Ubuntu/Debian: /var/log/syslog
Пример фильтрации:
sudo grep -i 'shutdown|reboot' /var/log/messages /var/log/syslog
Это позволяет выявить действия, вызвавшие перезагрузку (например, нажатие кнопки питания или команду администратора).
На системах с включённым auditd можно проверить события перезагрузки с помощью команды ausearch.
Пример:
sudo ausearch -i -m system_boot,system_shutdown | tail -4
Вывод поможет понять, была ли перезагрузка штатной или аварийной.
Если вы используете systemd, сохранённые логи помогут детально изучить события.
Убедитесь, что логи сохраняются:
sudo mkdir /var/log/journal
sudo systemd-tmpfiles --create --prefix /var/log/journal
sudo systemctl kill --signal=SIGUSR1 systemd-journald
Список перезагрузок:
journalctl --list-boots
Анализ конкретной загрузки:
journalctl -b {num}
Где {num} — идентификатор загрузки из предыдущей команды.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🔥4❤2
Профили Bash: настройка и использование
Bash — это основная командная оболочка в большинстве Linux-дистрибутивов. Грамотная настройка профилей Bash позволяет автоматизировать задачи и создать комфортную рабочую среду.
Типы профилей
1️⃣ Глобальные файлы:
• /etc/profile
• /etc/bash.bashrc или /etc/bashrc
• Скрипты в /etc/profile.d/*.sh
Эти файлы действуют для всех пользователей.
2️⃣ Локальные файлы:
• ~/.bash_profile, ~/.bash_login, ~/.profile — инициализация при входе.
• ~/.bashrc — настройки для работы в терминале.
• ~/.bash_logout — выполняется при выходе.
Последовательность загрузки
1. При входе в систему:
• /etc/profile → локальные файлы: ~/.bash_profile → ~/.bash_login → ~/.profile.
2. При запуске оболочки:
• /etc/bash.bashrc → ~/.bashrc.
Каталог для новых пользователей
В /etc/skel/ находятся файлы и папки, копируемые в домашнюю директорию новых пользователей. Вы можете добавить сюда нужные настройки, чтобы они применялись автоматически.
Как настроить Bash?
1️⃣ Добавьте переменные в ~/.bashrc:
2️⃣ Проверьте файлы профиля:
3️⃣ Настройте стартовые файлы в /etc/skel/:
Настройка профилей Bash — это простой способ автоматизировать рутинные задачи и упростить работу с системой.
Bash — это основная командная оболочка в большинстве Linux-дистрибутивов. Грамотная настройка профилей Bash позволяет автоматизировать задачи и создать комфортную рабочую среду.
Типы профилей
• /etc/profile
• /etc/bash.bashrc или /etc/bashrc
• Скрипты в /etc/profile.d/*.sh
Эти файлы действуют для всех пользователей.
• ~/.bash_profile, ~/.bash_login, ~/.profile — инициализация при входе.
• ~/.bashrc — настройки для работы в терминале.
• ~/.bash_logout — выполняется при выходе.
Последовательность загрузки
1. При входе в систему:
• /etc/profile → локальные файлы: ~/.bash_profile → ~/.bash_login → ~/.profile.
2. При запуске оболочки:
• /etc/bash.bashrc → ~/.bashrc.
Каталог для новых пользователей
В /etc/skel/ находятся файлы и папки, копируемые в домашнюю директорию новых пользователей. Вы можете добавить сюда нужные настройки, чтобы они применялись автоматически.
Как настроить Bash?
export PATH=$PATH:/custom/path
alias ll='ls -la'
cat /etc/profile
cat ~/.bashrc
cd /etc/skel/
ls -la
Настройка профилей Bash — это простой способ автоматизировать рутинные задачи и упростить работу с системой.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22❤2
Как можно ограничить максимальное количество процессов, которые может создать конкретный пользователь?
Anonymous Quiz
29%
Использовать файл /etc/security/limits.conf
36%
Установить переменную PROC_LIMIT в /etc/profile
20%
Настроить системный параметр через sysctl -w
15%
Включить контроль через PAM-модуль pam_limits.so
👍12🔥6
Как редактировать файл Hosts на Linux, Windows и Mac
Его редактирование полезно, например, при тестировании сети или для обхода DNS-запросов.
Редактирование файла Hosts в Linux
1️⃣ Откройте терминал. В большинстве дистрибутивов путь: Приложения → Утилиты → Терминал.
2️⃣ Откройте файл Hosts:
Введите пароль, если потребуется.
3️⃣ Добавьте или измените строки:
• IP-адрес идет первым, затем доменное имя.
• Для комментариев добавьте # в начале строки.
4️⃣ Сохраните изменения и закройте редактор (:wq в Vim).
5️⃣ Проверьте порядок приоритета (опционально):
• Откройте nsswitch.conf:
• Убедитесь, что files указан перед dns.
Редактирование файла Hosts в Windows
1️⃣ Запустите Блокнот от имени администратора: Нажмите Пуск, найдите “Блокнот”, нажмите правой кнопкой → Запуск от имени администратора.
2️⃣ Откройте файл Hosts:
• Путь: C:\Windows\System32\drivers\etc\hosts.
• В диалоге открытия измените тип файла на “Все файлы”.
3️⃣ Добавьте строки в файл:
IP-адрес — первый, доменное имя — второй.
4️⃣ Сохраните изменения:
Файл → Сохранить.
5️⃣ Закомментируйте строки с помощью #, чтобы отключить их:
Редактирование файла Hosts на Mac
1️⃣ Откройте терминал: Путь: Приложения → Утилиты → Терминал.
2️⃣ Откройте файл Hosts:
Введите пароль администратора.
3️⃣ Добавьте строки в файл:
IP-адрес идет первым, затем имя хоста.
4️⃣ Сохраните изменения и выйдите: Нажмите Command + O, затем Command + X.
Файл hosts используется для сопоставления доменных имен с IP-адресами.
Его редактирование полезно, например, при тестировании сети или для обхода DNS-запросов.
Редактирование файла Hosts в Linux
sudo vim /etc/hosts
Введите пароль, если потребуется.
0.0.0.0 server.domain.com
• IP-адрес идет первым, затем доменное имя.
• Для комментариев добавьте # в начале строки.
• Откройте nsswitch.conf:
cat /etc/nsswitch.conf
• Убедитесь, что files указан перед dns.
Редактирование файла Hosts в Windows
• Путь: C:\Windows\System32\drivers\etc\hosts.
• В диалоге открытия измените тип файла на “Все файлы”.
0.0.0.0 server.domain.com
IP-адрес — первый, доменное имя — второй.
Файл → Сохранить.
# 0.0.0.0 server.domain.com
Редактирование файла Hosts на Mac
sudo nano /private/etc/hosts
Введите пароль администратора.
0.0.0.0 server.domain.com
IP-адрес идет первым, затем имя хоста.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥3❤1
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.
top
ps -eo pid,comm,%cpu --sort=-%cpu | head
• ps -eo pid,comm,%cpu — выводит PID, имя процесса и процент использования CPU.
• --sort=-%cpu — сортирует по убыванию загрузки CPU.
• head — ограничивает вывод верхними строками.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23❤2