TGViewer
🐧 Linux Junior. Программирование под Linux. 🐧 Linux Junior. Программирование под Linux. @juniorlinux · 3.08K subscribers
Post #564 1.15K
🔥 Уменьшение размера лог-файлов

В обычном состоянии, если приложение запущено и пишет в лог файл, его не рекомендуется удалять, поскольку в *nix, открытый файловый дескриптор связан не с именем файла, а с iNode.

И если мы удалим лог-файл, приложение может не начать писать в новый файл с нуля, а продолжать писать в старый, который для нас уже будет недоступен по имени (мы же его удалили). Затем, когда приложение остановится и закроет дескриптор, данные удалятся с файловой системы.

(Большинство программ при записи в лог каждый раз открывают и закрывают файл, и тогда этой проблеме они не подвержены).

Поэтому очистку файла следует делать либо так (очистим файл, не удаляя его):

> application.log


Либо так (файл будет урезан до указанного размера):

truncate --size=1M application.log


Но эта команда именно урежет, т.е. в файле останутся старые данные, а свежие как раз и будут урезаны.

Поэтому можно делать вот так, сохраняя последние 1000 строк:

echo "$(tail -n 1000 application.log)" > application.log
  • 👍 5
  • 🔥 1
More from @juniorlinux
  1. Sep 28, 2026⚙️ Как устроена автоматизация задач через cron в Linux Если вам нужно регулярное выполнени…
  2. Sep 22, 2026По умолчанию rsync только добавляет и обновляет файлы, но не трогает то, что было удалено…
  3. Sep 22, 2026❓ Как удалить на приемнике файлы, которых больше нет в источнике, при синхронизации через…
  4. Sep 16, 2026Post #589
  5. Sep 10, 2026Как распаковать .tar.gz, .tar.bz2, .tar.xz и .tar.zst в Linux Для работы с архивами в Linu…
  6. Sep 4, 2026Посмотреть очередь задач, созданных через at, можно командой atq (или at -l). Она выведет…
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 →