Права в Linux (chown, chmod, SUID, GUID, sticky bit, ACL, umask)
Всем привет. Это перевод статьи из книги RedHat RHCSA RHCE 7 RedHat Enterprise Linux 7 EX200 and EX300.
От себя: Надеюсь статья будет полезна не только начинающим, но и поможет более опытным администраторам упорядочить свои знания.
https://habr.com/ru/post/469667/
👉@linuxchmod
Всем привет. Это перевод статьи из книги RedHat RHCSA RHCE 7 RedHat Enterprise Linux 7 EX200 and EX300.
От себя: Надеюсь статья будет полезна не только начинающим, но и поможет более опытным администраторам упорядочить свои знания.
https://habr.com/ru/post/469667/
👉@linuxchmod
👍8🥰1
📌 Оптимизация загрузки системы: ускоряем boot на Linux
1️⃣ Анализируем время загрузки
Для начала посмотрим, что тормозит boot:
Выведет общее время загрузки. Теперь разберёмся, какие службы тормозят:
Эта команда покажет список сервисов и время их запуска.
2️⃣ Отключаем ненужные сервисы
Если видите, что какой-то сервис грузится долго, но не нужен – отключаем:
Проверяйте осторожно, отключение критичных служб может повлиять на работу системы!
3️⃣ Оптимизируем GRUB
Можно уменьшить задержку перед загрузкой ОС:
Открываем конфиг:
Находим строку:
Ставим меньшее значение, например
4️⃣ Параллельная загрузка служб
Включаем параллельный запуск процессов:
Это поможет заранее загружать часто используемые данные.
5️⃣ Используем профилирование ядра
Если хотите максимальной скорости, включите опцию
После перезагрузки ядро само оптимизирует загрузку.
👉@linuxchmod
1️⃣ Анализируем время загрузки
Для начала посмотрим, что тормозит boot:
systemd-analyze
Выведет общее время загрузки. Теперь разберёмся, какие службы тормозят:
systemd-analyze blame
Эта команда покажет список сервисов и время их запуска.
2️⃣ Отключаем ненужные сервисы
Если видите, что какой-то сервис грузится долго, но не нужен – отключаем:
sudo systemctl disable имя_сервиса
sudo systemctl stop имя_сервиса
Проверяйте осторожно, отключение критичных служб может повлиять на работу системы!
3️⃣ Оптимизируем GRUB
Можно уменьшить задержку перед загрузкой ОС:
Открываем конфиг:
sudo nano /etc/default/grub
Находим строку:
GRUB_TIMEOUT=5
Ставим меньшее значение, например
1
, затем обновляем:
sudo update-grub
4️⃣ Параллельная загрузка служб
Включаем параллельный запуск процессов:
sudo systemctl enable systemd-readahead-collect
sudo systemctl enable systemd-readahead-replay
Это поможет заранее загружать часто используемые данные.
5️⃣ Используем профилирование ядра
Если хотите максимальной скорости, включите опцию
profile
в загрузке ядра:
sudo grubby --update-kernel=ALL --args="profile"
После перезагрузки ядро само оптимизирует загрузку.
👉@linuxchmod
👍6
Media is too big
VIEW IN TELEGRAM
pSnapper (Linux Process Snapper)
Скрипт, с помощью которого можно получить информацию о процессах, их состоянии и статусах в системе.
Скрипт не подключается к рабочему процессу, он просто получает информацию из /proc/PID/task/*. Для работы нужен только python, более ничего устанавливать не требуется.
🔹Установка
И работаем с нашими процессами в системе.
Например, получаем активность за последние 5 секунд, просто введя:
Получаем список активных процессов, запущенную при этом команду, pid, вызовы и текущие состояния:
Смотрим, как обстоят дела у нашего сервера БД, но собираем информацию не 5, а 30 секунд:
https://github.com/tanelpoder/psnapper
👉@linuxchmod
Скрипт, с помощью которого можно получить информацию о процессах, их состоянии и статусах в системе.
Скрипт не подключается к рабочему процессу, он просто получает информацию из /proc/PID/task/*. Для работы нужен только python, более ничего устанавливать не требуется.
🔹Установка
# git clone https://github.com/tanelpoder/psnapper
# cd psnapper
# chmod +x ./psn
И работаем с нашими процессами в системе.
Например, получаем активность за последние 5 секунд, просто введя:
# ./psn
Получаем список активных процессов, запущенную при этом команду, pid, вызовы и текущие состояния:
# ./psn -g pid,cmdline,state,syscall -a
Смотрим, как обстоят дела у нашего сервера БД, но собираем информацию не 5, а 30 секунд:
# ./psn -d 30 -p ^mysql -g cmdline,state,syscall,wchan -a
https://github.com/tanelpoder/psnapper
👉@linuxchmod
👍3
Как измерить скорость жестких дисков?
Часть 1. Обзор программы Crystal Disk Mark.
Часть 2. Кеш рейд контроллера.
Часть 3. Соотношение кеша чтение/запись.
Часть 4. Задержка и IOPS.
Часть 5. DiskSPD, Performance monitor.
Автор: SERVAK
👉@linuxchmod
Часть 1. Обзор программы Crystal Disk Mark.
Часть 2. Кеш рейд контроллера.
Часть 3. Соотношение кеша чтение/запись.
Часть 4. Задержка и IOPS.
Часть 5. DiskSPD, Performance monitor.
Автор: SERVAK
👉@linuxchmod
👍3
Виртуализация/гипервизоры. ESXI.
Виртуализация и гипервизоры.Установка гипервизора ESXI на сервер.
ESXI. Создание виртуального сервера Windows 2019.
ESXI. Совместимость железа.
ESXI. Перемещение и копирование виртуальных серверов
Что будет если сломается флешка? Переустановка ESXI.
ESXI. Снимки виртуальных машин.
ESXI. Сеть. Разделение подсетей.
ESXI. Сеть. Shaping, режем трафик!
Автор: SERVAK
👉@linuxchmod
Виртуализация и гипервизоры.Установка гипервизора ESXI на сервер.
ESXI. Создание виртуального сервера Windows 2019.
ESXI. Совместимость железа.
ESXI. Перемещение и копирование виртуальных серверов
Что будет если сломается флешка? Переустановка ESXI.
ESXI. Снимки виртуальных машин.
ESXI. Сеть. Разделение подсетей.
ESXI. Сеть. Shaping, режем трафик!
Автор: SERVAK
👉@linuxchmod
👍2
📌 Мониторинг нагрузки на CPU в реальном времени 💻📊
Часто нужно быстро проверить загрузку процессора на сервере, не прибегая к сложным инструментам. Вот простой скрипт на Bash, который поможет отслеживать нагрузку на CPU в реальном времени с обновлением каждые 2 секунды!
🔹 Как работает?
- Использует команду
- Вычисляет процент загруженности, вычитая idle-процент из 100.
- Выводит результат в удобочитаемом формате.
- Обновляется каждые 2 секунды.
🔥 Как запустить?
1️⃣ Установите пакет
2️⃣ Сделайте скрипт исполняемым:
3️⃣ Запустите:
👉@linuxchmod
Часто нужно быстро проверить загрузку процессора на сервере, не прибегая к сложным инструментам. Вот простой скрипт на Bash, который поможет отслеживать нагрузку на CPU в реальном времени с обновлением каждые 2 секунды!
#!/bin/bash
echo "Мониторинг загрузки CPU (нажмите Ctrl+C для выхода)"
while true; do
echo -n "CPU: "
mpstat 1 1 | awk '/Average:/ {printf "%.2f%%\n", 100 - $NF}'
sleep 2
done
🔹 Как работает?
- Использует команду
mpstat
для получения загрузки процессора. - Вычисляет процент загруженности, вычитая idle-процент из 100.
- Выводит результат в удобочитаемом формате.
- Обновляется каждые 2 секунды.
🔥 Как запустить?
1️⃣ Установите пакет
sysstat
, если его нет:
sudo apt install sysstat # Для Debian/Ubuntu
sudo yum install sysstat # Для CentOS/RHEL
2️⃣ Сделайте скрипт исполняемым:
chmod +x cpu_monitor.sh
3️⃣ Запустите:
./cpu_monitor.sh
👉@linuxchmod
👍5
Скрипты оболочки и конвейер (Pipe)
Конвейер (pipe) — один из самых мощных инструментов в shell-скриптинге. Он позволяет передавать данные от одной команды к другой. Однако его часто используют неэффективно.
Многие думают, что конвейер просто передаёт вывод одной команды в другую:
1. Первая команда создаёт вывод.
2. Конвейер передаёт его во вход второй команды.
3. Вторая команда получает вход.
Но на самом деле процесс сложнее:
1. Первая команда создаёт вывод.
2. Конвейер создаёт FIFO-сегмент в памяти.
3. Данные записываются в FIFO блоками.
4. Вторая команда запускается и получает данные блоками.
Каждый
Лучше заменить на:
Так
Как оптимизировать конвейеры?
- Изучите параметры команд (
- Обрабатывайте данные перед циклами (
- Используйте встроенные функции Bash.
Что делать, если без конвейера не обойтись?
Используйте именованный конвейер (Named Pipe), чтобы избежать повторного создания памяти:
Это особенно полезно в больших скриптах.
👉@linuxchmod
Конвейер (pipe) — один из самых мощных инструментов в shell-скриптинге. Он позволяет передавать данные от одной команды к другой. Однако его часто используют неэффективно.
Многие думают, что конвейер просто передаёт вывод одной команды в другую:
1. Первая команда создаёт вывод.
2. Конвейер передаёт его во вход второй команды.
3. Вторая команда получает вход.
Но на самом деле процесс сложнее:
1. Первая команда создаёт вывод.
2. Конвейер создаёт FIFO-сегмент в памяти.
3. Данные записываются в FIFO блоками.
4. Вторая команда запускается и получает данные блоками.
Каждый
|
создаёт новый сегмент памяти и заново запускает команды. Например:
grep A | grep B | grep C
Лучше заменить на:
grep "A.*B.*C"
Так
grep
запускается один раз, что быстрее и эффективнее. Как оптимизировать конвейеры?
- Изучите параметры команд (
egrep
, gawk
и др.), чтобы не передавать данные лишний раз. - Обрабатывайте данные перед циклами (
sed
, awk
). - Используйте встроенные функции Bash.
Что делать, если без конвейера не обойтись?
Используйте именованный конвейер (Named Pipe), чтобы избежать повторного создания памяти:
mkfifo my_pipe
cat my_pipe &
echo "данные" > my_pipe
Это особенно полезно в больших скриптах.
👉@linuxchmod
👍3🤔1
Утилита динамического мониторинга процессов Nmon
Это утилита измерения и настройки производительности. Она может отображать информацию о ЦП, оперативной памяти, сети, дисках (в виде мини графиков или числовых данных), файловых системах, NFS, самых нагружающих процессах, ресурсах.
Устанавливается командой:
Для запуска утилиты необходимо выполнить команду:
https://telegra.ph/Utilita-dinamicheskogo-monitoringa-processov-Nmon-03-11
👉@linuxchmod
Это утилита измерения и настройки производительности. Она может отображать информацию о ЦП, оперативной памяти, сети, дисках (в виде мини графиков или числовых данных), файловых системах, NFS, самых нагружающих процессах, ресурсах.
Устанавливается командой:
sudo pamcan -S nmon
Для запуска утилиты необходимо выполнить команду:
nmon
https://telegra.ph/Utilita-dinamicheskogo-monitoringa-processov-Nmon-03-11
👉@linuxchmod
👍2
Media is too big
VIEW IN TELEGRAM
Как определить и предотвратить DDoS-атаку TCP SYN Flood при помощи Wireshark / tcpdump
На мастер-классе вы узнаете:
- как происходит установление соединения и обмен данными в TCP;
- что такое трехстороннее рукопожатие (квитирование) TCP;
- об использовании инструментов для захвата и анализа пакетов Wireshark / tcpdump;
- как увидеть пакеты / сегменты трехстороннего квитирования (SYN, ACK), а также последовательные номера (sequence number);
- что из себя представляет DDoS-атака TCP SYN Flood, как ее увидеть и предотвратить;
- как повысить свою квалификацию в качестве ИТ-специалиста и зарабатывать в разы больше в условиях экономического кризиса.
источник
👉@linuxchmod
На мастер-классе вы узнаете:
- как происходит установление соединения и обмен данными в TCP;
- что такое трехстороннее рукопожатие (квитирование) TCP;
- об использовании инструментов для захвата и анализа пакетов Wireshark / tcpdump;
- как увидеть пакеты / сегменты трехстороннего квитирования (SYN, ACK), а также последовательные номера (sequence number);
- что из себя представляет DDoS-атака TCP SYN Flood, как ее увидеть и предотвратить;
- как повысить свою квалификацию в качестве ИТ-специалиста и зарабатывать в разы больше в условиях экономического кризиса.
источник
👉@linuxchmod
👍3