uk
Feedback
Linux: Системный администратор

Linux: Системный администратор

Відкрити в Telegram

Здесь вы найдете полезные советы, практические материалы и интересные инсайты по администрированию Linux. Погружаемся в мир команд, скриптов и серверов вместе! 🚀 Авторский канал действующего админа 👨🏼‍💻

Показати більше
1 940
Підписники
Немає даних24 години
-17 днів
+1430 день
Архів дописів
🔥 Обнаружение и устранение утечек памяти в Linux 🔥 Привет, админы! Сегодня разберем, как выявлять утечки памяти в Linux и не допускать их на продакшене. 🚀 🔍 Как понять, что память утекает? Частые признаки: ✅ Постепенный рост потребления RAM процессом ✅ ОЗУ забивается, а swap активно используется ✅ Система тормозит, перезапуск помогает, но ненадолго 🛠 Проверяем потребление памяти 🔹 Команда top или htop Сортируем по памяти (Shift + M в top):

top
или

htop
🔹 Смотрим самые "прожорливые" процессы

ps aux --sort=-%mem | head -10
🔹 Слежка за конкретным процессом

pidstat -r -p <PID> 5
Замените <PID> на ID подозрительного процесса. 🔎 Поиск утечек памяти 🔹 Используем pmap Показывает детали по памяти процесса:

pmap -x <PID>
🔹 Тестируем valgrind (для C/C++ программ) Если пишете на C/C++, проверяйте утечки так:

valgrind --leak-check=full ./your_program
🔹 Проверяем с smem Анализ потребления памяти всеми процессами:

smem -t -k | head -20
🔥 Как предотвратить утечки? ✅ Регулярно перезапускайте сервисы (systemctl restart your_service) ✅ Мониторьте память с prometheus + grafana ✅ Используйте systemd с ограничениями на RAM:

[Service]
MemoryMax=500M
Если у вас были случаи утечек памяти — как справлялись? Делитесь в комментариях! 💬👇 #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

🖥️ Как работает KVM: базовое введение в виртуализацию Если вы еще не использовали KVM, самое время попробовать! Это встроенная в ядро Linux технология виртуализации, которая позволяет запускать виртуальные машины без установки дополнительных гипервизоров. 🔹 Что нужно для работы KVM? - 64-битный процессор с поддержкой VT-x (Intel) или AMD-V (AMD). - Установленные пакеты:

apt install qemu-kvm libvirt-daemon-system virt-manager
- Проверьте поддержку аппаратной виртуализации:

egrep -c '(vmx|svm)' /proc/cpuinfo
Если результат 0 — железо не поддерживает виртуализацию. 🔹 Создание первой виртуальной машины Используем GUI-интерфейс virt-manager или команду:

virt-install --name testvm --ram 2048 --vcpus 2 --disk size=20 --os-variant ubuntu20.04 --cdrom /path/to/iso
После установки можно управлять машиной через virsh:

virsh list --all
virsh start testvm
virsh shutdown testvm
🔹 Почему KVM лучше? - Интеграция в ядро Linux - Поддержка live-миграции - Высокая производительность - Простота использования Вы уже используете KVM? Или предпочитаете VirtualBox, VMware? Давайте обсудим! 🚀 #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

🛠️ Как исправить "Read-only file system" в Linux? Столкнулись с ошибкой Read-only file system? Это может случиться из-за внезапного отключения питания, сбоев файловой системы или аппаратных проблем. Как исправить? 🔹 Проверяем логи:

dmesg | tail -50
journalctl -xe
Ищем ошибки типа EXT4-fs error или Remounting filesystem read-only. 🔹 Проверяем монтирование:

mount | grep ro
Если / или нужный раздел примонтирован с ro, значит, система автоматически защитила его от записи. 🔹 Пробуем перемонтировать:

mount -o remount,rw /
Если сработало — отлично. Если нет, едем дальше. 🔹 Проверяем файловую систему:

fsck -y /dev/sdX
Замените sdX на проблемный раздел (df -h поможет определить его). Важно! Лучше выполнять из live-системы или в режиме восстановления. 🔹 Железные проблемы: Если ошибки указывают на сбой диска (bad sectors), стоит проверить SMART:

smartctl -a /dev/sdX
Много секторов Reallocated, Pending, Offline Uncorrectable? Диск под замену! ❓ Сталкивались с таким? Как решали? Делитесь в комментариях! #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

🔧 Автоматизация обновлений пакетов в Linux 🛠️ Привет, админы! Сегодня поговорим о автоматизации обновлений пакетов в Linux. Обновления – важная часть безопасности и стабильности системы, но делать их вручную на десятках серверов – это боль. Давайте упростим себе жизнь! 😎 1️⃣ Автообновления в Debian/Ubuntu Можно настроить unattended-upgrades, чтобы система сама обновляла пакеты: Установка:

sudo apt update && sudo apt install unattended-upgrades
Включаем автоматическое обновление:

sudo dpkg-reconfigure unattended-upgrades
Далее следуем инструкциям, включаем обновления, и всё! 🔹 Файл конфигурации: /etc/apt/apt.conf.d/50unattended-upgrades 🔹 Логи: /var/log/unattended-upgrades/ 2️⃣ Автообновления в CentOS/RHEL/AlmaLinux/Rocky Здесь нам поможет пакет dnf-automatic: Установка:

sudo dnf install dnf-automatic -y
Настройка: Редактируем файл /etc/dnf/automatic.conf - Ищем строку apply_updates = no - Меняем на apply_updates = yes Запускаем сервис:

sudo systemctl enable --now dnf-automatic.timer
🔹 Логи: /var/log/dnf.rpm.log 3️⃣ Обновления по расписанию (Crontab) Если не хочется ставить дополнительные пакеты, можно сделать простенький cron-запуск: Пример для Debian/Ubuntu:

echo "0 3 * * * root apt update -y && apt upgrade -y" | sudo tee /etc/cron.d/autoupdate
Этот скрипт будет обновлять систему каждую ночь в 3 часа. ⚠️ Важно: - Если обновления критичны, тестируйте их сначала на тестовой машине. - Следите за логами, чтобы не пропустить проблемы. - Иногда автообновления могут сломать что-то важное (особенно на серверах с нестандартными конфигурациями). А вы используете автообновления на своих серверах? Или предпочитаете всё делать руками? 💬 Пишите в комментах! #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

🔥 Оптимизация скорости загрузки Linux: Ускоряем boot! 🚀 Привет, админы! Сегодня поговорим про ускорение загрузки Linux. Если ваш сервер или рабочая станция загружаются слишком долго, вот несколько способов исправить это: 1️⃣ Анализируем время загрузки Используем команду:

systemd-analyze
Она покажет общее время загрузки. А чтобы увидеть, какие службы тормозят запуск:

systemd-analyze blame
Отключите ненужные службы командой:

sudo systemctl disable <service>
2️⃣ Отключаем графический режим (если не нужен) Если сервер работает без GUI, лучше отключить:

sudo systemctl set-default multi-user.target
А если он всё же включён, можно попробовать легковесные дисплейные менеджеры, например lightdm вместо gdm. 3️⃣ Оптимизируем загрузчик Редактируем GRUB:

sudo nano /etc/default/grub
Убираем GRUB_TIMEOUT=5 (ставим 1-2 секунды) и добавляем параметр quiet для ускорения загрузки. Затем применяем:

sudo update-grub
4️⃣ Используем Parallel Boot Добавляем в /etc/systemd/system.conf:

DefaultTimeoutStartSec=10s
DefaultTimeoutStopSec=10s
Это сократит таймауты при запуске и остановке сервисов. 5️⃣ Чистим ненужные модули Проверяем загружаемые модули:

lsmod
Отключаем ненужные в /etc/modprobe.d/blacklist.conf:

blacklist модуль_название
📢 А у вас долго грузится Linux? Какие методы ускорения помогли вам? Пишите в комментариях! ⏳⚡ #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

🚀 Как правильно чистить /var/log в Linux? Привет, коллеги! Сегодня расскажу, как грамотно чистить логи в Linux, чтобы не перегружать систему и не терять важные данные. 🛑 Ошибка новичков – просто удалить файлы из /var/log/. Да, так освободится место, но службы, использующие логи, могут сломаться. ✅ Правильные способы очистки: 🔹 Используем logrotate Это стандартный инструмент для управления логами в Linux. Настройки хранятся в /etc/logrotate.conf и /etc/logrotate.d/. Можно настроить автоудаление старых логов:

sudo nano /etc/logrotate.conf
Добавляем:
/var/log/*.log {
    daily
    rotate 7
    compress
    missingok
    notifempty
}
Это означает: чистим ежедневно, храним 7 копий, сжимаем старые файлы. 🔹 Очистка логов вручную Если нужно срочно освободить место, используем:

sudo truncate -s 0 /var/log/syslog
sudo truncate -s 0 /var/log/auth.log
Эта команда обнуляет файлы, не удаляя их. 🔹 Удаление старых логов Можно удалить файлы старше 7 дней:

sudo find /var/log -type f -name "*.log" -mtime +7 -delete
📢 А как вы чистите логи? Используете logrotate или предпочитаете скрипты? Делитесь в комментариях! 👇 #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

🔥 Оптимизация загрузки системы с systemd-analyze Привет, коллеги! Сегодня разберем, как ускорить загрузку системы с помощью systemd-analyze. Это инструмент, который помогает выявить медленные сервисы и устранить узкие места в процессе boot. 🚀 Проверяем время загрузки Запускаем:

systemd-analyze
Вы увидите разбиение времени загрузки на три части: - Firmware – время, затраченное BIOS/UEFI. - Loader – время загрузчика (GRUB, systemd-boot и т. д.). - Kernel – загрузка ядра. - Userspace – время работы systemd перед передачей управления пользователю. 🔍 Выявляем медленные сервисы

systemd-analyze blame
Этот список покажет, какие сервисы загружаются дольше всего. Например:
10.456s mysql.service  
5.321s docker.service  
3.214s networkd.service  
Часто виноваты базы данных, сетевые службы и тяжелые демоны. ⚡ Оптимизируем 1️⃣ Отключаем ненужные сервисы

systemctl disable имя_сервиса --now
2️⃣ Используем systemd-analyze critical-chain Этот инструмент покажет зависимости сервисов и что тормозит загрузку:

systemd-analyze critical-chain
3️⃣ Добавляем noauto или x-systemd.automount` для редко используемых дисков в /etc/fstab 4️⃣ Настраиваем systemd-tmpfiles-clean.timer, чтобы не перегружать систему удалением временных файлов. После изменений перезагружаемся и проверяем, стало ли быстрее:

systemd-analyze
Если помогло – делимся в комментах! 😉 🚀 #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

📌 Как проверить, кто держит файл открытым в Linux? Бывало у вас такое? Нужно удалить или переместить файл, а система упорно не даёт это сделать, ссылаясь на то, что файл занят каким-то процессом. Разберёмся, как найти виновника! 🔎 Используем lsof Команда lsof (list open files) покажет нам, какие процессы держат файл:

lsof /путь/к/файлу
Если у вас её нет, установите: - Debian/Ubuntu: sudo apt install lsof - RHEL/CentOS: sudo yum install lsof - Arch: sudo pacman -S lsof 🔥 Освобождаем файл Допустим, мы нашли процесс, который держит файл. Теперь его можно завершить:

kill -9 PID
Где PID — идентификатор процесса, который мы узнали через lsof. 💡 Альтернативный вариант — fuser Ещё один способ:

fuser -v /путь/к/файлу
А чтобы принудительно закрыть процесс, можно выполнить:

fuser -k /путь/к/файлу
⚠️ Будьте осторожны с kill -9 и fuser -k, особенно если работа идёт на продакшн-сервере! А вы часто сталкиваетесь с такими ситуациями? Как обычно решаете проблему? Пишите в комментариях! ⬇💬 #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

🚀 Как запустить сервис автоматически при загрузке Linux? Привет, админы! Часто сталкиваемся с задачей: нужно, чтобы сервис стартовал автоматически при перезагрузке сервера. Давайте разберем три варианта для разных случаев. 1️⃣ systemd – современный способ Для систем с systemd (Ubuntu 16+, CentOS 7+, Debian 8+): ✅ Добавить сервис в автозапуск:

systemctl enable nginx
Запустить вручную (если еще не запущен):

systemctl start nginx
Проверить статус:

systemctl status nginx
⏳ Если после перезагрузки не стартует – проверьте логи:

journalctl -u nginx --no-pager | tail -20
2️⃣ rc.local – олдскульный способ Если systemd недоступен (старые системы, embedded): Добавляем команду в /etc/rc.local перед exit 0:

/usr/bin/python3 /opt/my_script.py &
Затем делаем файл исполняемым:

chmod +x /etc/rc.local
Этот метод не идеален, но иногда помогает. 3️⃣ crontab – если сервис не daemonized Иногда проще запустить процесс через cron, особенно если он не умеет работать в фоне:

crontab -e
Добавляем строку:

@reboot /usr/bin/python3 /opt/my_script.py
Теперь скрипт стартует при загрузке. 📌 Вывод Лучше всего использовать systemd, но в некоторых случаях пригодятся rc.local и cron. Какой метод предпочитаете вы? Пишите в комментариях! #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

🛠️ Как быстро узнать, какие процессы нагружают систему? Привет, коллеги! Сегодня расскажу, как быстро выявить "прожорливые" процессы, которые могут нагружать CPU, память или диск. Особенно полезно, когда сервер тормозит, а причина не очевидна. 🔥 ТОП-5 процессов по загрузке CPU:

ps -eo pid,ppid,user,%cpu,%mem,cmd --sort=-%cpu | head -n 6
📌 Разбор команды: - -eo — выбираем, какие колонки отображать. - pid,ppid,user,%cpu,%mem,cmd — показываем ID процесса, родительский процесс, владельца, % загрузки CPU и памяти, команду запуска. - --sort=-%cpu — сортируем по убыванию нагрузки на процессор. - head -n 6 — выводим первые 5 строк (плюс заголовок). 📊 ТОП-5 процессов по потреблению памяти:

ps -eo pid,ppid,user,%cpu,%mem,cmd --sort=-%mem | head -n 6
Здесь всё аналогично, но сортируем по памяти. 📂 Самые активные процессы на диске (I/O):

iotop -o -n 5
Эта команда (из пакета iotop) покажет процессы, активно читающие/записывающие данные на диск. 🚀 Завершаем "прожорливый" процесс: Если нашли виновника, можно его аккуратно завершить:

kill -9 PID
Где PID — это ID процесса. Но будьте осторожны! Убедитесь, что не убиваете важный системный процесс. 💡 А как вы мониторите нагрузку на сервер? Используете htop, atop или что-то ещё? Делитесь в комментариях! 🚀 #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

🛠️ Как быстро проверить загрузку процессора в Linux? Привет, админы! Сегодня разберём несколько команд, которые помогут моментально оценить нагрузку на CPU. Это полезно, если сервер тормозит или нужно оперативно выяснить, кто жрёт ресурсы. 📊 1️⃣ Используем top

top
В реальном времени покажет загрузку процессора, память и активные процессы. Сортировка по использованию CPU идёт автоматически. Полезные клавиши в top: - Shift + P — отсортировать по загрузке CPU. - 1 — показать загрузку по каждому ядру. - q — выйти. 📊 2️⃣ htop – удобная альтернатива

htop
Красивый интерфейс, удобное управление, фильтрация процессов. Устанавливаем:

apt install htop  # для Debian/Ubuntu  
yum install htop  # для CentOS  
dnf install htop  # для Fedora  
⚡ 3️⃣ Быстрый анализ через mpstat

mpstat -P ALL 1 5
Покажет загрузку каждого ядра за последние 5 секунд. Устанавливаем через sysstat:

apt install sysstat  # Debian/Ubuntu  
yum install sysstat  # RHEL/CentOS  
🔍 4️⃣ Кто грузит CPU?

ps -eo pid,comm,%cpu --sort=-%cpu | head -n 10
Выведет топ-10 процессов, которые больше всего нагружают процессор. 🔥 А что используете вы для мониторинга CPU? Делитесь инструментами в комментариях! 🚀 #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

🛠️ Как быстро найти и удалить большие файлы в Linux? Привет, коллеги! Сегодня расскажу, как быстро найти и удалить самые тяжелые файлы в системе. Иногда место на сервере заканчивается в самый неподходящий момент, и админ вынужден срочно искать виновников. 🔍 Поиск самых больших файлов: Используем команду find, чтобы найти файлы больше 1 ГБ:

find / -type f -size +1G -exec ls -lh {} +
🔹 / – корневая директория, можно заменить на нужный путь 🔹 -type f – ищем только файлы 🔹 -size +1G – файлы больше 1 ГБ 🔹 -exec ls -lh {} + – отображаем размер и путь 🔥 Удаление больших файлов: Будьте осторожны, сначала убедитесь, что удаляете нужное!

find /var/log -type f -size +500M -delete
🔹 Здесь удаляем файлы больше 500 МБ в /var/log 📌 Дополнительно: Чтобы найти самые крупные каталоги, используйте:

du -ah / | sort -rh | head -20
Эта команда покажет 20 самых тяжелых объектов. ❓ А какие еще команды вы используете для очистки места? Делитесь в комментариях! 💬 #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

💡Небольшая шпаргалка по основным командам Linux: Сеть (DNS) ipcalc – калькулятор сети ethtool interface – отобразить физическую статистику интерфейса interface; ping host – пропинговать host и вывести результат whois domain – получить информацию whois для domain traceroute host – трассировка маршрута до определенного хоста ifconfig eth0 – отображение/настройка параметров сетевого интерфейса etho (либо другого, если без указания интерфейса – отобразит конфигурацию всех интерфейсов) inet ip.add.re.s – задание ip адреса интерфейса (TCP/IP) mask xxx.xxx.xxx.xxx – задание маски подсети интерфейса broadkast xxx.xxx.xxx.xxx – задание широковещательного адреса интерфейса up – запустить интерфейс down – остановить интерфейс -a – отображение всех железных интерфейсов (в том числе и не поднятых и поднятых) route – отображение таблицу маршрутизации -n – не резолвить имена в адреса add destination gw gateway metric metric – добавить маршрут (add) для destination (адрес назначения), IP адрес шлюза (gw) – gateway, с метрикой metric add -net -указание добавить маршрут для сети add – host -указание добавить маршрут для хоста del destination – удалить маршрут с назначением destination mtr host – отображение статистики трассировки до хоста host (красивее чем трасероут ) netcat host port – просмотр, кто слушает порт nc – TCP/IP швейцарсий нож -h – отобразить помощь -l port – прослушивать локальный порт port для входящих соединений. netstat -отображение статистики сети -r – таблица маршрутизации -n – без разрешения IP адресов в имена и сетевых портов в названия -a – состояние всех (во всех состояниях) соединений на локальной машине -t – статистика по протоколу TCP -u – статистика по протоколу UDP -i – отобразить статистику сетевых интерфейсов -l – просмотр сокетов, слушающих (LISTEN) соединения (ожидающих соединения) -p – отобразить имя программы и PID (process ID), с которой взаимодействует сокет #Linux@linux_odmin #Шпаргалка@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

🔥 Как проверить, какие процессы занимают порт в Linux? Привет, админы! Сегодня я покажу вам, как быстро проверить, какие процессы используют определенный порт в Linux. Это полезно, когда, например, веб-сервер не стартует, потому что порт уже занят. 🛠 Команда netstat (если у вас установлен пакет net-tools)

netstat -tulnp | grep :80
💡 Опция -tulnp расшифровывается так: - -t – TCP, - -u – UDP, - -l – слушающие порты, - -n – показывать номера портов, - -p – показывать процесс, который использует порт. 🛠 Команда ss (современная альтернатива netstat)

ss -tulnp | grep :80
🛠 Использование lsof Если хотите узнать, какой процесс занимает порт 80:

lsof -i :80
Если lsof не установлен, установите его:

# Debian/Ubuntu
apt install lsof  
# CentOS/RHEL
yum install lsof  
🛠 Альтернатива через fuser

fuser -v 80/tcp
🔥 Эта команда сразу покажет PID процесса, а с флагом -k можно его принудительно завершить:

fuser -k 80/tcp
Теперь вы знаете, как быстро найти и убить процессы, блокирующие нужные порты. 🚀 А вы каким методом пользуетесь чаще всего? Делитесь в комментариях! 👇 #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

🚀 Как ускорить загрузку системы в Linux? Ну и последний на сегодня пост! Разберёмся, как ускорить загрузку Linux-севера, ведь время старта системы — это важный показатель, особенно для критичных сервисов. 🔥 1. Анализируем задержки загрузки Используем systemd-analyze для проверки времени загрузки:

systemd-analyze
Вы увидите разбивку по этапам загрузки. Чтобы детализировать задержки:

systemd-analyze blame
Эта команда покажет, какие сервисы дольше всего стартуют. 🔥 2. Отключаем ненужные сервисы Если нашли сервисы, которые загружаются долго и не нужны, их можно отключить:

systemctl disable сервис
systemctl mask сервис  # Полное отключение
Например, если у вас сервер без графического интерфейса:

systemctl disable gdm
🔥 3. Оптимизируем файловую систему Если у вас ext4, можно включить journal_async_commit для ускорения работы:

tune2fs -o journal_async_commit /dev/sdX
А ещё полезно отключить проверку диска при каждом `X`-м запуске:

tune2fs -c 0 /dev/sdX
🔥 4. Настраиваем параллельную загрузку сервисов Редактируем grub:

nano /etc/default/grub
Добавляем в GRUB_CMDLINE_LINUX_DEFAULT:

quiet splash systemd.legacy_boot=false
После чего обновляем загрузчик:

update-grub
🔥 5. Используем preload Устанавливаем preload, чтобы кешировать часто используемые библиотеки:

apt install preload -y  # Для Debian/Ubuntu
yum install preload -y  # Для RHEL/CentOS
Этот сервис будет следить за тем, какие файлы используются чаще всего, и загружать их в память заранее. 👉 А какие ещё способы ускорения загрузки вы используете? Делитесь в комментариях! 💬 #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

📌 Топ команд htop, о которых ты мог не знать! Привет, админы! Сегодня я покажу вам, как выжать максимум из htop – мощного интерактивного монитора процессов. Многие пользуются им для просмотра нагрузки на систему, но знаете ли вы о его скрытых фишках? Давайте разбираться! 🔥 Полезные команды: 1️⃣ F2 (Setup) – Настройка интерфейса. Можно скрыть ненужные столбцы или поменять цветовую схему. 2️⃣ F3 (Search) – Быстрый поиск процесса по имени. 3️⃣ F4 (Filter) – Фильтрация процессов по имени или команде. 4️⃣ F5 (Tree View) – Отображение процессов в виде древовидной структуры. Очень удобно для отладки зависимостей! 5️⃣ F6 (Sort By) – Изменение сортировки (CPU, MEM, PID и т.д.). 6️⃣ F7/F8 – Изменение приоритета (nice) процессов на лету. 7️⃣ F9 (Kill) – Убийство процесса без выхода из htop. 💡 Дополнительные лайфхаки: 🔹 Shift + U – Снимает выделение всех процессов. 🔹 Shift + P / M / T – Быстро сортирует по CPU, памяти или времени выполнения. 🔹 H – Подсветка зависимых процессов (родитель-потомок). 🔹 I – Инвертирует сортировку, полезно при анализе. А вы знали про эти фишки? Делитесь в комментариях, как используете htop в повседневной работе! 👇🚀 #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

📌 Как восстановить удаленные файлы в Linux? Привет, коллеги! Сегодня разберем одну из самых неприятных ситуаций – случайное удаление важных файлов. 😱 🔹 Первое правило – не паниковать! Главное – не записывать новые данные на диск, откуда был удален файл, иначе его будет сложнее восстановить. 🛠 Способы восстановления: 1️⃣ Корзина (Trash) Если файл был удален через GUI (например, Nautilus или Dolphin), проверьте ~/.local/share/Trash/. 2️⃣ Команда lsof (если файл еще открыт процессом) Иногда процесс продолжает использовать удаленный файл:

lsof | grep '(deleted)'
Можно скопировать содержимое из /proc/<PID>/fd/<FD> в новый файл. 3️⃣ Восстановление через extundelete (для ext4) Если файл был удален с раздела ext4, используем extundelete:

sudo umount /dev/sdX1  # Размонтируем раздел
sudo extundelete /dev/sdX1 --restore-all
Файлы восстанавливаются в папку RECOVERED_FILES. 4️⃣ Photorec – восстановление данных с диска Подходит для файловых систем ext4, NTFS, FAT и других:

sudo apt install testdisk  # Устанавливаем пакет
sudo photorec
Выбираем диск и начинаем поиск удаленных файлов. 5️⃣ grep в raw-данных (если знаем содержимое) Можно попробовать найти фрагменты файла прямо на диске:

grep -a -b "текст из файла" /dev/sdX
Где -a указывает, что это текст, а -b показывает смещение. 🔥 Лучший способ защиты – бэкапы! Используйте rsnapshot, borg, restic или хотя бы rsync для резервного копирования. 💬 А какие методы восстановления использовали вы? Делитесь опытом в комментариях! 👇 #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

📌 Оптимизация автозапуска сервисов в Linux: избавляемся от лишнего Привет, админы! Сегодня разберём важную тему — автозапуск сервисов в Linux. Бывает, что после установки системы или пакетов в автозапуске оказываются ненужные сервисы, которые грузят память и процессор. Давайте это исправим! 🔹 Проверяем список сервисов

systemctl list-unit-files --type=service | grep enabled
Эта команда покажет все сервисы, включённые в автозапуск. 🔹 Отключаем ненужные сервисы Например, если вам не нужен Bluetooth, его можно отключить:

sudo systemctl disable bluetooth.service
А если сервис запущен, то сразу и останавливаем:

sudo systemctl stop bluetooth.service
🔹 Полностью маскируем сервис (если он не нужен совсем)

sudo systemctl mask bluetooth.service
Это запретит его запуск даже вручную. 🔹 Проверяем скорость загрузки системы Чтобы понять, какие сервисы тормозят загрузку:

systemd-analyze blame
Самые долгие процессы будут вверху списка. Зачастую можно отключить NetworkManager-wait-online.service, если сервер работает без GUI:

sudo systemctl disable NetworkManager-wait-online.service
👉 Оптимизация автозапуска не только ускоряет загрузку, но и снижает нагрузку на систему. Делаете ли вы ревизию сервисов на своих серверах? Пишите в комментах! 🚀 #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

🚀 Оптимизация SSH: Как ускорить подключение к серверу? Всем привет! Сегодня разберем, как ускорить подключение к серверу по SSH. Замечали, что иногда при подключении бывает задержка в несколько секунд? Это может раздражать, особенно если приходится часто подключаться к разным серверам. Давайте разберем причины и решения. 🔍 Основные причины задержки 1️⃣ Reverse DNS Lookup – сервер пытается выполнить обратное разрешение IP-адреса клиента. 2️⃣ GSSAPI-аутентификация – ненужная проверка, которая включена по умолчанию. 3️⃣ Плохая сеть или высокий RTT – если сеть нестабильна, время подключения может увеличиваться. ⚡ Ускоряем SSH ✅ Отключаем обратное разрешение IP На сервере редактируем файл /etc/ssh/sshd_config:

UseDNS no
Перезапускаем SSH:

systemctl restart sshd
Отключаем GSSAPI-аутентификацию На клиенте в ~/.ssh/config добавляем:

Host *
    GSSAPIAuthentication no
Или редактируем /etc/ssh/ssh_config глобально. ✅ Используем ControlMaster (ускоряет повторные подключения) В ~/.ssh/config добавляем:

Host *
    ControlMaster auto
    ControlPath ~/.ssh/master-%r@%h:%p
    ControlPersist 10m
Теперь, если уже есть активное соединение, новое подключение будет мгновенным! 🔥 Итог Эти три простых настройки могут заметно ускорить вашу работу с SSH. Попробуйте и напишите в комментариях, помогло ли вам! #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin

📜 Bash-скрипт для очистки логов: автоматизируем рутину Логи – полезная вещь, но если их не чистить, диск быстро заполняется. Вот простой Bash-скрипт, который удаляет старые логи, оставляя только свежие:

#!/bin/bash

LOG_DIR="/var/log"
DAYS=7

find $LOG_DIR -type f -name "*.log" -mtime +$DAYS -exec rm -f {} \;

echo "Очистка логов старше $DAYS дней завершена."
📌 Как использовать? 1️⃣ Сохраните скрипт как clear_logs.sh. 2️⃣ Дайте права на выполнение:

   chmod +x clear_logs.sh
   
3️⃣ Добавьте в cron, чтобы запускался раз в день:

   crontab -e
   
И добавьте строку:

   0 2 * * * /path/to/clear_logs.sh
   
Теперь логи будут чиститься автоматически каждую ночь в 2:00. А как вы боретесь с мусором в /var/log? 🤔 Делитесь своими решениями в комментариях! #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin 👉 @linux_odmin