TGViewer
Linux Ready | DevOps Linux Ready | DevOps @linux_ready · 11.2K subscribers
Post #1206 2.47K
Как уменьшать лог-файлы без перезапуска сервиса!

В Linux файловый дескриптор привязан к inode, а не к имени файла. Если процесс уже открыл лог и пишет в него, удаление файла не освободит место сразу.

Поэтому лог корректно очищать без удаления файла:
> application.log


Эта конструкция обнуляет содержимое, но сохраняет тот же inode и открытый дескриптор.

Если нужно урезать файл до конкретного размера, используется truncate:
truncate -s 1M application.log


Команда обрежет файл до 1MB. Она оставляет начало файла и удаляет хвост, то есть будут потеряны последние (самые новые) записи.

Если требуется сохранить последние записи, важно не менять inode файла.

Корректный вариант, перезаписать содержимое в тот же файл:
tail -n 1000 application.log > tmp.log && cat tmp.log > application.log && rm tmp.log


🔥 Так сохраняются последние 1000 строк, inode остаётся тем же, и сервис продолжит писать в текущий файл.

🚪 Linux Ready | #совет
  • 🔥 14
  • 👍 10
  • 🤝 9
  • ❤ 1
More from @linux_ready
  1. Oct 6, 2026В GNU/Linux есть отдельная утилита для преобразования чисел внутри текстовых потоков! Допу…
  2. Oct 6, 2026Удобный бот для мониторинга доступности сайтов и серверов Никаких сторонних сайтов и прило…
  3. Oct 6, 2026Большой файл можно клонировать почти мгновенно без полного копирования его данных! На файл…
  4. Oct 5, 2026Для отладки изолированного процесса необязательно заходить внутрь контейнера или менять ег…
  5. Oct 5, 2026Как оплачивать зарубежные сервисы в 2026 году? Можно бегать между посредниками и бояться б…
  6. Oct 5, 2026📂 Напоминалка для работы с SED! Например, sed 's/old/new/g' file.txt заменяет все вхожден…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →