Agedu — Unix-утилита для анализа дискового пространства, которая связывает размер каталогов со временем последнего доступа к файлам. Обычный du помогает понять, какие папки занимают больше всего места, а Agedu добавляет к этому ещё один слой анализа: показывает, какие объёмы данных давно не открывались. За счёт этого программа полезна не только для поиска крупных каталогов, но и для поиска старых файлов Linux, архивов, распакованных сборок, временных рабочих директорий, забытых ISO-образов, старых виртуальных машин и других данных, которые занимают место, но не участвуют в регулярной работе.
Agedu работает в несколько этапов. Сначала программа сканирует дерево каталогов и создаёт индекс agedu.dat. Затем этот индекс используется для построения отчётов: в терминале, в одиночном HTML-файле, в наборе связанных HTML-страниц или через встроенный web server. Такой подход удобен для серверов, рабочих станций и домашних Linux-систем: повторный просмотр отчётов не требует повторного обхода всех файлов, пока индекс остаётся актуальным.
Программа не удаляет файлы автоматически и не решает за пользователя, что является мусором. Она показывает, где находятся крупные данные, давно не имевшие обращений, а окончательное решение остаётся за администратором или владельцем каталога. Это важное отличие от программ очистки диска: Agedu не подменяет ручную проверку, не выполняет безопасное удаление, не чистит кэш браузеров и не оптимизирует систему как CCleaner, Wise Disk Cleaner или Glary Disk Cleaner. Её задача уже и точнее: анализ занятого места через atime, то есть last access time.
Краткая характеристика Agedu
| Параметр | Описание |
|---|---|
| Название | Agedu |
| Тип программы | консольная Unix-утилита с HTML-отчётами |
| Основная задача | анализ дискового пространства по каталогам с учётом времени последнего доступа |
| Формат работы | сканирование дерева каталогов, создание индекса, построение отчётов |
| Основной индекс | agedu.dat |
| Основные режимы | -s, -S, -L, -D, -w, -t, -H, --cgi |
| Визуальный отчёт | HTML-страница с цветными полосами и переходами по каталогам |
| Текстовый отчёт | вывод в терминал в стиле du, но с фильтрацией по возрасту данных |
| Лицензия | MIT |
| Нативная Windows-версия | отсутствует; для Windows существует отдельная scan-only утилита ageduscan.exe, создающая dump для дальнейшей обработки на Unix-машине |
| Основная аудитория | администраторы Linux/Unix, пользователи серверов, владельцы больших домашних каталогов, команды с архивами и сборками |
Agedu точнее всего воспринимать как disk usage analyzer для тех случаев, когда одного размера папки недостаточно. Программа отвечает на вопрос: какие каталоги не просто большие, а большие и давно не использовавшиеся. В этом её практическая ценность при очистке диска Linux, разборе домашних директорий, подготовке архивирования и анализе серверного хранилища.
Для кого подходит Agedu
Agedu рассчитана на пользователей, которые уверенно работают с терминалом и понимают структуру файловой системы. Программа не прячет команды за графическим мастером, не показывает кнопку очистить, не предлагает автоматическую оптимизацию. Она даёт отчёт, а пользователь сам проверяет найденные каталоги, сопоставляет их с рабочими процессами и принимает решение: удалить, перенести, сжать, оставить или вынести в архив.
Для администратора Linux-сервера Agedu полезна при нехватке места на разделе /home, /var, рабочем каталоге проекта, каталоге сборок или сетевом хранилище. Программа не ограничивается списком самых тяжёлых папок: HTML-отчёт показывает, где лежат старые данные, а цветовая шкала помогает быстрее отделить активные рабочие каталоги от залежавшихся результатов вычислений, дампов и временных архивов.
Домашнему пользователю Agedu помогает разобрать каталог с загрузками, архивами, виртуальными машинами, ISO-образами, медиафайлами и старыми проектами. В отличие от обычного графического анализатора размера папок, Agedu показывает не только объём, но и давность обращения к данным. Это особенно заметно в каталогах, где одинаково крупными выглядят и реально нужные файлы, и забытые распаковки, которые давно не открывались.
В среде разработки Agedu удобна для анализа старых build-директорий, зависимостей, временных результатов тестов, логов, архивов контейнеров и локальных копий репозиториев. При этом программа не вмешивается в структуру проекта: она только читает метаданные файловой системы, строит индекс и показывает отчёт. Такой подход безопаснее автоматической очистки, потому что удаление не выполняется без проверки.
В HPC-средах и общих пользовательских хранилищах Agedu даёт администратору аргументы для обсуждения архивации или удаления старых данных. ADMIN Magazine рассматривает Agedu именно как инструмент, который помогает быстро увидеть возраст данных по каталогам, анализировать старые пользовательские директории и готовить отчёты для дальнейших решений по хранению.
Чем Agedu отличается от обычного анализа размера папок
Обычный анализатор диска отвечает на вопрос где занято много места. Agedu добавляет второй вопрос: когда к этим данным обращались. Это меняет логику работы с отчётом. Каталог на 100 ГБ не всегда является кандидатом на удаление: он может содержать активно используемые виртуальные машины, рабочие наборы данных или текущие сборки. Каталог на 20 ГБ, к которому не обращались два года, часто интереснее для проверки, чем крупная, но свежая рабочая папка.
Agedu использует atime — время последнего доступа. Большинство Unix-файловых систем умеет хранить не только время изменения файла, но и момент последнего чтения. Программа сканирует дерево, сохраняет размеры и access time, а затем строит отчёты по каталогам и подкаталогам. В HTML-интерфейсе старые данные отображаются ближе к красному цвету, недавно использованные — ближе к зелёному, промежуточные состояния проходят через оранжевый и жёлтый.
На скриншоте видна типичная логика Agedu: сверху расположен путь к анализируемому каталогу, ниже — цветовая шкала Key to colour coding (mouse over for more detail), затем блок Overall и список Subdirectories. Названия подкаталогов оформлены как ссылки. При переходе по ним отчёт перестраивается вокруг выбранного каталога, поэтому можно постепенно углубляться в дерево и находить конкретную область, где хранится старый крупный массив данных.
Рабочий процесс в Agedu
Основной сценарий состоит из трёх действий: просканировать каталог, открыть отчёт, удалить индекс после завершения анализа. Для пользователя это выглядит как короткая последовательность команд, но внутри Agedu выполняет отдельную работу: строит pathname index, подготавливает структуру данных, сохраняет её в agedu.dat, а затем обслуживает отчёты из индекса.
Базовый запуск начинается со сканирования:
agedu -s /home/userПараметр -s или --scan указывает Agedu просканировать дерево каталогов от заданной точки. В текущем каталоге появляется файл agedu.dat. Если индекс создаётся внутри сканируемого дерева, Agedu не учитывает собственный индекс как обычный пользовательский файл, поэтому файл отчёта не искажает результат сканирования.
После создания индекса отчёт открывается через встроенный web server:
agedu -wРежим -w или --web поднимает локальный web server, выбирает порт и выводит URL вида http://127.0.0.1:48638/. Адрес находится в localhost-пространстве, поэтому подключение идёт с той же машины. В браузере пользователь видит HTML-отчёт с цветными полосами, размерами, процентами и ссылками на каталоги.
Когда просмотр завершён, индекс удаляется командой:
agedu -RAgedu позволяет объединять действия в одну команду:
agedu -s /home/user -w -RВ таком варианте программа сканирует каталог, запускает HTML-отчёт и после завершения удаляет agedu.dat. Это удобно для разовой диагностики, когда не нужно хранить индекс после просмотра.
Интерфейс Agedu: терминал, локальный web server и HTML-страницы
У Agedu нет классического оконного интерфейса с меню, панелями инструментов и кнопками управления файлами. Взаимодействие начинается в терминале. Пользователь вводит команды, видит служебный вывод сканирования, получает URL и открывает результат в браузере. Визуальная часть программы — это HTML-отчёт, который создаётся на основе индекса.
Терминальная часть показывает этапы работы: построение индекса путей, обработку directory atimes, создание индекса и итоговый размер файла agedu.dat. В режиме web server Agedu выводит строку Using Linux /proc/net magic authentication или данные HTTP Basic authentication, а затем URL для открытия в браузере. Эти сообщения важны: они показывают, как защищён отчёт и по какому адресу он доступен.

Ссылка:
HTML-страница Agedu предельно простая. В ней нет лишних декоративных элементов: основное место занимают горизонтальные полосы, размеры каталогов, проценты и ссылки. Заголовок Disk space breakdown by last-access time сразу показывает, что отчёт строится вокруг времени последнего доступа. Блок Overall описывает выбранный каталог целиком, а Subdirectories показывает вложенные папки. Справа от полос находятся названия директорий; по ним можно переходить глубже.
Цветовая шкала — главный элемент чтения отчёта. Красный сектор указывает на самые старые данные, зелёный — на недавно открывавшиеся. Жёлтые и оранжевые участки показывают промежуточные сроки. При анализе большого каталога нужно смотреть не только на абсолютный размер, но и на сочетание ширины полосы и цвета: широкая красная часть обычно заслуживает первичной проверки, а широкая зелёная часть чаще относится к активной работе.
Основные задачи, которые можно сделать в Agedu
Просканировать каталог и построить индекс
Сканирование — исходная операция. Команда agedu -s /path проходит по каталогу и подкаталогам, собирает данные о размере и времени последнего доступа, затем сохраняет результат в индекс. По умолчанию индекс называется agedu.dat и лежит в текущем рабочем каталоге. Путь к индексу можно изменить через -f или --file, если нужно хранить несколько отчётов или не засорять текущую директорию.
Пример для домашнего каталога:
agedu -s /home/userПример с отдельным расположением индекса:
agedu -f /tmp/home-user-agedu.dat -s /home/userСканирование по умолчанию не пересекает границы файловых систем. Это важно для серверов, где внутри /home, /mnt, /srv или /var могут быть примонтированы отдельные разделы. Agedu ориентирована на ситуацию, когда место заканчивается на конкретной файловой системе, поэтому не уходит в другие смонтированные области без явного указания. Для анализа всех вложенных файловых систем используется --cross-fs.
Открыть интерактивный HTML-отчёт
Режим agedu -w запускает встроенный web server и создаёт локальный отчёт. В браузере пользователь получает визуальную карту каталогов. Это самый наглядный режим Agedu: он показывает, где находится основная масса старых данных, и позволяет переходить по дереву без повторного запуска сканирования.
Пример:
agedu -wПосле запуска web server программа выводит URL. Его нужно открыть в браузере. В отчёте можно нажимать на названия подкаталогов и элементы пути сверху. Переход по каталогу не запускает новый обход диска: Agedu использует уже созданный индекс.

На этом экране хорошо видна практическая ценность Agedu. Каталоги отсортированы по занимаемому месту, но каждая строка дополнительно окрашена по давности доступа. Поэтому отчёт не сводится к списку больших директорий: он показывает, какие из них состоят преимущественно из старых данных, а какие остаются свежими.
Построить текстовый отчёт в терминале
Режим -t или --text выводит отчёт в терминал. Он полезен на серверах без графической оболочки, в SSH-сессиях, скриптах и регулярных проверках. Текстовый вывод похож на du, но Agedu умеет ограничивать отчёт файлами, которые не открывались заданный срок.
Пример базового текстового отчёта:
agedu -t /home/userПример отчёта только по данным, к которым не обращались шесть месяцев и больше:
agedu -t /home/user -a 6mПараметр -a или --age принимает значения с единицами y, m, w, d: годы, месяцы, недели, дни. Например, -a 2y оставляет в отчёте данные возрастом от двух лет, а -a 90d показывает файлы, к которым не обращались 90 дней и дольше.
Сформировать HTML-файл без web server
Режим -H или --html создаёт HTML-отчёт без запуска встроенного web server. По умолчанию Agedu выводит одиночный HTML-документ в стандартный вывод. С параметром глубины -d программа создаёт набор связанных HTML-файлов; верхний файл называется index.html. Такой формат удобен, когда отчёт нужно сохранить как статический результат проверки и открыть позже без активного процесса Agedu.
Пример одиночного HTML-отчёта:
agedu -H /home/user > report.htmlПример набора HTML-страниц с глубиной два уровня:
agedu -H /home/user -d 2 -o agedu-reportВ режиме нескольких HTML-файлов параметр -o указывает каталог вывода, а не имя одного файла. Если каталог отсутствует, Agedu создаёт его и размещает внутри HTML-страницы.
Ограничить отчёт конкретным возрастом данных
Для текстового отчёта используется -a, а для HTML-отчётов — -r или --age-range. Это разные параметры с разной задачей. -a отбирает данные не моложе указанного срока, а -r настраивает шкалу цветов в HTML-интерфейсе.
Пример шкалы, где красный означает данные, не использовавшиеся два года и больше, а зелёный — данные, открывавшиеся недавно:
agedu -w -r 2yПример шкалы, где красный начинается от двух лет, а зелёный считается свежим при доступе три месяца назад или позднее:
agedu -w -r 2y-3mТакой режим полезен, когда в одном хранилище лежат данные с очень разным жизненным циклом. Для временных рабочих файлов диапазон в два года слишком грубый, а для научных архивов или старых проектов он может быть нормальным ориентиром.
Исключить ненужные пути из сканирования
Agedu поддерживает несколько групп фильтров: --prune, --prune-path, --exclude, --exclude-path, --include, --include-path. Они нужны, когда полный обход дерева даёт слишком много лишней информации или затрагивает области, которые не нужно анализировать.
--prune полностью исключает файл или каталог из сканирования. Если под правило попадает директория, Agedu не только не включает её в индекс, но и не проходит внутрь. Это удобно для каталогов с кэшем, примонтированными временными хранилищами или областями, которые уже проверяются отдельно.
--exclude работает мягче: объект не попадает в индекс, но содержимое каталога может быть просканировано, если вложенные элементы не исключены другими правилами. --include возвращает в индекс данные, которые ранее были исключены. Последнее подходящее правило имеет приоритет, поэтому порядок параметров в команде имеет значение.
Пример анализа только MP3-файлов:
agedu -s . --exclude '*' --include '*.mp3'В этой команде сначала исключается всё, а затем обратно включаются файлы с расширением .mp3. Такой подход удобен не только для музыки: аналогично можно проверять старые архивы, ISO-образы, дампы баз данных, видеофайлы или результаты рендеринга.
Переключиться с atime на mtime
По умолчанию Agedu анализирует last access time. Опция --mtime переключает программу на время последнего изменения файла. Этот режим нужен, когда access time испорчен массовым чтением файлов, поисковой индексацией, резервным копированием или особенностями монтирования. Он также помогает искать недавно созданные крупные данные, если диск быстро заполнился после появления большого дампа, core-файла или результата некорректной работы программы.
Пример:
agedu --mtime -s /home/useragedu -wРежим --mtime не является полной заменой обычному анализу по atime. Он чаще даёт больше кандидатов для ручной проверки, потому что файл может давно не изменяться, но оставаться нужным и регулярно читаться. Для архивов, справочников, зависимостей проекта и библиотек это особенно важно: отсутствие изменений не означает отсутствие использования.
Показать отдельные файлы в отчёте
По умолчанию Agedu показывает сводку по каталогам. Опция --files добавляет отдельные файлы в отчёты вместо того, чтобы объединять всё, что не находится в подкаталоге. Это полезно на последнем этапе анализа: сначала пользователь находит подозрительный каталог через общую карту, затем включает детализацию и смотрит, какие конкретные файлы внутри занимают место.
Пример:
agedu -w --filesили для текстового режима:
agedu -t /home/user --files--files лучше использовать точечно. На верхнем уровне большого дерева он может перегрузить отчёт списком отдельных файлов, а внутри уже найденной директории помогает быстрее перейти от общей оценки к конкретным объектам.
Пошаговая инструкция: как найти старые крупные файлы через Agedu
Шаг 1. Выбрать область анализа
Agedu эффективнее работает, когда пользователь заранее выбирает понятную область. Для домашнего компьютера это часто /home/user, ~/Downloads, каталог виртуальных машин или папка с проектами. Для сервера — /home, /srv, /var/log, /opt, рабочий каталог приложения, shared storage или отдельная точка монтирования.
Не стоит сразу сканировать весь корень /, если задача связана с конкретным разделом. По умолчанию Agedu не переходит через границы файловых систем, и это помогает анализировать именно тот раздел, где заканчивается место. Для общей картины по нескольким разделам используется --cross-fs, но такой режим требует понимания структуры монтирования.
Шаг 2. Запустить сканирование
Команда для домашнего каталога:
agedu -s /home/userДля отдельного каталога загрузок:
agedu -s /home/user/DownloadsДля каталога проекта:
agedu -s /srv/projectВо время обхода Agedu выводит прогресс. Программа обычно показывает однострочный отчёт о том, где находится сканирование, если стандартный поток ошибок связан с терминалом. Управлять этим поведением можно через --progress, --no-progress и --tty-progress.
Шаг 3. Открыть HTML-отчёт
После завершения сканирования запускается web-интерфейс:
agedu -wAgedu выводит URL. Его нужно вставить в браузер. В отчёте пользователь видит верхний каталог, общий объём и список подкаталогов. Для перехода внутрь достаточно нажать на название директории. Для возврата используются элементы пути в верхней части страницы.
Шаг 4. Читать цветовую шкалу и размеры
В отчёте Agedu нельзя смотреть только на самый большой каталог. Нужно учитывать сразу три параметра:
размер слева от полосы;
процент справа от полосы;
цветовую структуру самой полосы.
Красная широкая часть означает большой объём данных, к которым давно не обращались. Зелёная широкая часть означает большой объём недавно использованных данных. Жёлтые и оранжевые участки требуют проверки по контексту: для одних каталогов несколько месяцев без доступа нормально, для других это уже признак забытых файлов.
Шаг 5. Переходить по подкаталогам
Agedu показывает названия подкаталогов как ссылки. После перехода выбранная директория становится центром отчёта, её Overall-полоса растягивается на ширину страницы, а ниже появляются её непосредственные подкаталоги. Так можно постепенно сузить область от /home/user до конкретной папки, например старой виртуальной машины, распакованного архива, временного каталога сборки или набора логов.

На этом примере отчёт уже открыт внутри подкаталога. Страница сохраняет ту же структуру: путь вверху, цветовая шкала, Overall, список Subdirectories. Такой однотипный интерфейс удобен при глубокой навигации: пользователь не переключается между режимами, а последовательно уточняет место, где накопились старые данные.
Шаг 6. Проверить найденные каталоги вручную
Agedu показывает хороших кандидатов для разборки, но не выполняет смысловую проверку. Перед удалением нужно открыть каталог штатными средствами системы, посмотреть состав файлов, владельца, дату изменения, связь с приложениями, проектами, резервными копиями и задачами. Особенно осторожно нужно работать с каталогами сборок, зависимостей, контейнеров, виртуальных машин и архивов рабочих данных.
Для проверки можно использовать обычные инструменты Linux:
ls -lah /path/to/directorydu -sh /path/to/directoryfind /path/to/directory -maxdepth 1 -type f -printf '%TY-%Tm-%Td %TH:%TM %s %p\n' | sortAgedu помогает понять, куда смотреть, но удаление остаётся отдельной операцией. Такой подход снижает риск случайно удалить данные, которые давно не читались напрямую, но нужны программе, сборочной системе или пользователю.
Шаг 7. Удалить индекс после анализа
Индекс agedu.dat может быть крупным, поэтому после разовой проверки его лучше удалить:
agedu -RНа больших деревьях индекс занимает заметное место: структура Agedu требует O(N log N) хранения, где N связано с числом файлов и каталогов. В man page приведён пример: сканирование домашнего каталога примерно с половиной миллиона файлов и директорий и около 20 ГБ данных дало индекс больше 60 МБ.
Практические команды Agedu
| Задача | Команда | Когда использовать |
|---|---|---|
| Просканировать домашний каталог | agedu -s /home/user | первичная проверка пользовательских данных |
| Открыть HTML-отчёт | agedu -w | интерактивный просмотр через браузер |
| Просканировать, открыть отчёт и удалить индекс | agedu -s /home/user -w -R | разовая диагностика без сохранения agedu.dat |
| Создать индекс в другом месте | agedu -f /tmp/agedu-home.dat -s /home/user | когда текущий каталог не подходит для хранения индекса |
| Открыть отчёт из выбранного индекса | agedu -f /tmp/agedu-home.dat -w | работа с несколькими индексами |
| Показать текстовый отчёт | agedu -t /home/user | SSH, скрипты, сервер без браузера |
| Показать данные старше 6 месяцев | agedu -t /home/user -a 6m | поиск старых файлов Linux в терминале |
| Настроить цветовую шкалу HTML | agedu -w -r 2y-3m | анализ хранилища с понятным жизненным циклом данных |
| Показать отдельные файлы | agedu -w --files | детализация внутри найденного каталога |
| Исключить каталог из обхода | agedu -s /home/user --prune cache | пропуск ненужных областей |
| Анализировать только MP3 | agedu -s . --exclude '*' --include '*.mp3' | проверка отдельного типа файлов |
| Использовать mtime | agedu --mtime -s /home/user | когда atime недостоверен |
| Запустить web server на заданном адресе | agedu -w --address 127.0.0.1:8081 | контроль адреса и порта |
| Включить Basic authentication | agedu -w --auth basic | доступ через браузер с логином и паролем |
| Удалить индекс | agedu -R | завершение разовой проверки |
Команды Agedu хорошо комбинируются. Это удобно для администраторской работы: можно одной строкой создать индекс, открыть отчёт и удалить временный файл после окончания просмотра. Для регулярных проверок лучше хранить индекс в заранее выбранном месте через -f, чтобы скрипт не зависел от текущего каталога.
Настройка доступа к HTML-отчёту
Agedu показывает структуру файловой системы, имена каталогов и распределение данных. Такая информация может быть чувствительной, поэтому web-интерфейс не должен открываться без контроля. По умолчанию Agedu использует режим default: на Linux программа пытается применить magic authentication через /proc/net/tcp, а при невозможности переходит к HTTP Basic authentication и создаёт логин с паролем.
Режимы --auth:
| Режим | Что делает | Практический смысл |
|---|---|---|
magic | проверяет, что подключение создано тем же user id, под которым запущен Agedu | удобно на локальной Linux-машине и многопользовательском сервере |
basic | использует HTTP Basic authentication | подходит для браузерного доступа с логином и паролем |
none | не включает защиту | допустимо только для отчётов без конфиденциальной структуры и при полной уверенности в окружении |
default | выбирает magic, а при недоступности механизма — basic | нормальный вариант без ручной настройки |
Пример запуска с Basic authentication:
agedu -w --address 127.0.0.1:8081 --auth basicAgedu выводит имя пользователя, пароль и адрес отчёта. При открытии URL браузер показывает окно авторизации. Это обычное окно HTTP Basic authentication: нужно ввести логин и пароль, выданные программой, после чего откроется HTML-отчёт.

Если задан --address ANY, web server слушает подключения не только с localhost. Такой запуск требует особенно аккуратной настройки аутентификации, потому что отчёт раскрывает структуру каталогов. Для обычной диагностики на той же машине достаточно адреса 127.0.0.1 и стандартного поведения Agedu.

Системные требования
Agedu относится к Unix-утилитам. Основная рабочая среда — Unix-подобные системы, где доступны стандартные механизмы обхода файловой системы, метаданные файлов и терминальная работа. Для визуального просмотра отчёта нужен браузер, но графическая оболочка не обязательна: отчёт можно открыть через SSH-туннель, сгенерировать HTML-файл или использовать текстовый режим.
| Компонент | Требование |
|---|---|
| Операционная среда | Unix-подобная система |
| Терминал | нужен для запуска команд и просмотра текстового вывода |
| Браузер | нужен для интерактивного HTML-отчёта через -w |
| Файловая система | должна предоставлять корректные last access times для обычного режима |
| Режим монтирования | noatime делает обычный анализ по atime бесполезным; relatime подходит для поиска данных, не использовавшихся месяцы или годы |
| Память и адресное пространство | очень крупные файловые системы могут требовать 64-битную систему из-за memory-mapped index file |
| Windows | нативного порта Agedu нет; доступен отдельный scan-only инструмент для создания dump с дальнейшей обработкой на Unix |
| Сборка из исходников | в пакетной формуле Homebrew используется CMake как build-зависимость |
Главное требование Agedu — корректный atime. Если файловая система смонтирована с noatime, программа не получает полезной информации о последнем доступе. При relatime точность access time снижается, но для типичного анализа старых файлов это допустимо: при поиске данных, не использовавшихся месяцы или годы, погрешность до суток не меняет вывод отчёта.
Для больших хранилищ важен размер индекса. Agedu использует memory-mapped data file, поэтому индекс не должен превышать доступное адресное пространство процесса. При очень крупном дереве каталогов практичнее выполнять индексирование на 64-битной машине или использовать режимы dump/load для разделения сканирования и построения индекса.
Ограничения Agedu
Agedu зависит от корректности файловых метаданных. Если atime отключён, перезаписан массовым чтением или не отражает реальную работу приложений, отчёт теряет точность. Программа умеет переключаться на --mtime, но время изменения решает другую задачу: оно показывает, когда файл менялся, а не когда его читали. Поэтому --mtime полезен как запасной режим, а не как полноценная замена основному анализу.
Agedu может давать ложные кандидаты на разбор. Это происходит, когда программа логически зависит от файла, но не читает его физически и не обновляет atime. Типичные примеры — rsync и make: они могут проверять mtime и не перечитывать неизменившиеся файлы. В такой ситуации каталог выглядит старым, хотя удаление приведёт к проблемам.
Индекс agedu.dat может быть большим. Это не временный маленький лог, а рабочая структура данных для последующих запросов. На больших деревьях каталогов индекс нужно хранить осознанно, удалять после разовой диагностики и не оставлять в общедоступных местах. Agedu создаёт индекс с ограничительными правами, потому что сама структура каталогов может содержать конфиденциальную информацию.
Программа не является файловым менеджером. В отличие от FreeCommander XE, Double Commander или других решений из категории файловых менеджеров, Agedu не предназначена для повседневного копирования, переименования, сравнения панелей и ручной навигации по файлам. Её интерфейс помогает найти проблемную область, а не управлять файлами внутри неё.
Agedu не заменяет мониторинг диска. Если нужно отслеживать изменения в реальном времени, смотреть события файловой системы или фиксировать активность каталогов, ближе по задаче будут инструменты вроде DiskPulse. Agedu работает как диагностический анализатор: сделал снимок состояния, построил индекс, изучил отчёт, принял решение.
Плюсы и минусы
Плюсы:
показывает не только размер каталогов, но и возраст данных по времени последнего доступа;
создаёт наглядный HTML-отчёт с цветовой шкалой и переходами по подкаталогам;
работает через терминал и подходит для серверов без полноценной графической оболочки;
поддерживает текстовый режим
-t, удобный для SSH и скриптов;умеет создавать статические HTML-отчёты через
-H;позволяет объединять несколько действий в одной команде;
поддерживает фильтры
--prune,--exclude,--includeи их path-варианты;умеет работать с dump/load-сценарием через
-S,-D,-L;имеет режим
--mtimeдля ситуаций, когда access time не помогает;защищает локальный HTML-отчёт через magic authentication или HTTP Basic authentication;
распространяется под MIT-лицензией.
Минусы:
результат обычного режима зависит от корректного atime;
файловые системы с
noatimeне подходят для основного сценария;программа не удаляет данные и требует ручной проверки кандидатов;
нет полноценного настольного GUI с кнопками управления файлами;
индекс может занимать заметное место;
крупные файловые системы могут требовать 64-битную машину для индексирования;
возможны ложные кандидаты на удаление, если приложения используют файлы без физического чтения;
HTML-отчёт раскрывает структуру каталогов, поэтому доступ к нему нужно защищать;
для начинающего пользователя командная логика сложнее, чем графические анализаторы вроде Baobab или Filelight.
Отзывы пользователей и профильных изданий
LinuxUser выделяет у Agedu практическую задачу: программа помогает быстро находить каталоги, где накопились старые ненужные данные, и показывает их через понятную браузерную диаграмму. В материале подчёркивается сочетание du-подобного подсчёта места и анализа timestamps последнего доступа. Итоговая оценка сдержанная и техническая: Agedu экономит время при поиске старых данных, но из-за большого числа параметров опытному пользователю всё равно нужна подробная man page.
ADMIN Magazine рассматривает Agedu в контексте больших файловых систем и HPC. Главный плюс там — быстрый обзор возраста данных по каталогам, работа с пользовательскими директориями, возможность текстовых отчётов и пригодность для сценариев, где администратору нужно объяснить пользователям, почему старые данные стоит сжать, перенести или удалить. В этом контексте Agedu ценна не как чистильщик, а как инструмент аргументации и планирования хранения.
TecMint описывает Agedu как свободную open source утилиту, близкую по базовой идее к du, но дополненную отчётами по last-access time, HTML-выводом и гиперссылками для перехода по каталогам. В практической части показаны сценарии agedu -s, agedu -w, настройка адреса, Basic authentication, текстовый вывод, фильтрация по возрасту и удаление индекса через agedu -R.
Усреднённая картина отзывов вокруг Agedu выглядит так: программу ценят за точное попадание в задачу, работу на серверах, простую HTML-навигацию и возможность быстро найти старые крупные каталоги. Скепсис обычно связан не с качеством отчёта, а с самой природой atime: пользователю приходится понимать, как файловая система обновляет access time, и не удалять данные только по красной полосе в отчёте. В обсуждениях также регулярно всплывает сравнение с ncdu: интерактивный TUI удобнее для быстрого ручного обхода, а Agedu сильнее там, где важен возраст данных.
Сравнение с аналогами
Agedu относится к анализаторам дискового пространства, но сравнивать её нужно аккуратно. Многие программы показывают размер каталогов, строят графики или помогают быстро найти тяжёлые папки. Agedu отличается тем, что добавляет к размеру время последнего доступа. Поэтому она не всегда заменяет аналоги, а часто дополняет их.
| Программа | Тип интерфейса | Что показывает | Главное отличие от Agedu | Когда выбрать |
|---|---|---|---|---|
du | терминал | размер каталогов и файлов | не показывает возраст данных | быстрый стандартный подсчёт места |
| ncdu | TUI, ncurses | интерактивное дерево размеров | удобнее для ручной навигации и удаления, но не специализируется на atime | SSH-сервер, быстрый поиск самых больших каталогов |
| GNOME Disk Usage Analyzer / Baobab | GUI | дерево и графическое представление папок | ориентирован на рабочий стол GNOME и визуальный анализ размеров | пользовательский desktop-сценарий |
| KDE Filelight | GUI | концентрические кольца использования диска | сильнее визуализирует структуру, но не строит отчёт по давности доступа | KDE/Windows и наглядная визуальная карта |
| Duc | CLI/GUI-набор | индексирование, запросы и графики использования диска | рассчитан на масштабируемую базу размеров и визуализацию, а не на поиск старых данных по atime | очень большие файловые системы и повторяемые отчёты |
| LookDisk | Windows GUI | поиск файлов и анализ содержимого | Windows-инструмент другого класса | поиск файлов на Windows через LookDisk |
| SearchMyFiles | Windows GUI | поиск файлов по параметрам | не строит atime-ориентированную карту каталогов | точечный поиск файлов через SearchMyFiles |
du остаётся базовым инструментом, когда нужно быстро узнать размер каталога. Команда есть почти везде, проста для скриптов и не требует отдельного индекса. Но du не отвечает на вопрос, какие данные давно не открывались. Agedu использует похожий обход дерева, но добавляет last access time и отчёты по подкаталогам.
ncdu удобнее Agedu для быстрой интерактивной работы в терминале. Его текстовый интерфейс хорошо подходит для удалённого сервера без графической оболочки: можно ходить по папкам, сортировать и быстро видеть, что занимает место. Но Agedu выигрывает в задаче анализа старых данных, потому что строит отчёт именно по сочетанию размера и access time.
Baobab, также известный как GNOME Disk Usage Analyzer, удобен на рабочем столе GNOME. Он сканирует папки, устройства и online accounts, показывает дерево и графическое представление размеров. Для пользователя, которому нужна графическая программа без терминала, Baobab проще. Для администратора, которому нужен отчёт по last-access time на сервере, Agedu даёт более профильный результат.
Filelight визуализирует использование диска через концентрические кольца. Такой формат хорошо показывает распределение места по дереву и быстро выявляет крупные ветви. Agedu визуально проще, но информативнее для поиска старых залежавшихся данных: цвет в её отчёте связан не только с размером, а со сроком последнего доступа.
Duc ближе к Agedu по идее индекса. Он тоже строит базу данных по файловой системе и затем позволяет выполнять запросы и строить графики. Сильная сторона Duc — масштабирование на огромные файловые системы и повторяемое индексирование. Сильная сторона Agedu — анализ wasted disk space через возраст данных, а не просто визуализация распределения байтов.
Если пользователь работает в Windows и ищет смежные инструменты на freeexe, логичнее смотреть не Agedu, а программы другого назначения: Wise Disk Cleaner для очистки, CCleaner для обслуживания системы, LookDisk для поиска файлов, SearchMyFiles для точного поиска по параметрам, HDDExpert или PassMark DiskCheckup для проверки состояния накопителей. Agedu относится к Unix-сценарию и не заменяет эти Windows-программы.
Практические сценарии использования
Разбор переполненного домашнего каталога
Для домашней системы типичный запуск выглядит так:
agedu -s /home/user -w -RПользователь получает HTML-отчёт, открывает верхний уровень /home/user, смотрит на крупные красные и оранжевые участки, затем переходит в Downloads, каталоги виртуальных машин, старые проекты и папки с архивами. После просмотра Agedu удаляет индекс, потому что команда включает -R.
В таком сценарии важно не удалять файлы из отчёта напрямую по названию. Домашний каталог часто содержит скрытые директории приложений: .cache, .config, .local, профили браузеров, данные IDE, контейнеры и файлы виртуализации. Красная полоса рядом с такой директорией означает проверить, а не удалить.
Проверка каталога загрузок
Каталог загрузок обычно содержит много одноразовых файлов: архивы, установочные пакеты, ISO-образы, PDF, видео, временные выгрузки. Agedu помогает быстро отделить свежие загрузки от того, что не открывалось месяцами.
agedu -s ~/Downloadsagedu -w -r 1y-1mДиапазон 1y-1m делает шкалу полезной для пользовательского каталога: старые данные около года и больше уходят в красную сторону, а файлы, открывавшиеся в последний месяц, выглядят свежими. После перехода в подозрительную папку можно включить детализацию:
agedu -w --filesАнализ старых сборок и результатов тестов
В каталогах разработки часто остаются директории build, dist, target, временные артефакты, локальные копии зависимостей, результаты тестовых прогонов и дампы. Agedu помогает найти те области, к которым давно не обращались.
agedu -s /srv/project --prune .git --prune node_modulesagedu -w--prune здесь полезен, когда отдельные каталоги не нужно анализировать в этом проходе. Например, .git может быть важной служебной директорией, а node_modules легко восстанавливается в рамках проекта, но решение зависит от конкретного процесса. Agedu не подсказывает политику удаления; она помогает увидеть объём и возраст.
Подготовка архивации на сервере
На сервере Agedu хорошо работает как предварительный анализ перед переносом данных в архивное хранилище. Администратор сканирует пользовательские каталоги, строит отчёты и получает список областей, где много старых данных. Затем эти каталоги проверяются с владельцами данных или по внутренним правилам хранения.
agedu -f /var/tmp/agedu-home.dat -s /homeagedu -f /var/tmp/agedu-home.dat -t /home -a 1yТекстовый режим удобен для первичного отчёта: он показывает объёмы старше заданного срока по подкаталогам. HTML-режим затем помогает визуально объяснить, где именно скопился объём и как он распределён внутри дерева. Такие отчёты помогают не только находить старые данные, но и обсуждать с пользователями сжатие, удаление или расширение хранилища.
Разбор внезапно заполненного диска
Если диск быстро заполнился после сбоя, теста, некорректного задания или создания огромного дампа, обычный atime-анализ не всегда лучший вариант. В такой ситуации важнее понять, что недавно изменилось или появилось. Для этого используется --mtime:
agedu --mtime -s /varagedu -wВ отчёте будет использоваться время изменения. Такой режим помогает найти недавно созданные крупные файлы, но при анализе ненужности он требует осторожности: давно не изменявшийся файл может быть активно используемым справочником, библиотекой, базовым образом или набором данных.
Безопасность и приватность отчётов
Agedu не читает содержимое файлов как пользовательские документы, но индексирует структуру каталогов, размеры и временные метки. Даже эти данные могут раскрывать названия проектов, пользователей, клиентов, рабочих директорий, резервных копий и внутренних систем. Поэтому agedu.dat и HTML-отчёты нельзя оставлять в доступных местах без понимания последствий.
Индекс создаётся с ограничительными правами. Это снижает риск, что другие пользователи на той же машине прочитают структуру сканируемого дерева через файл индекса. Но при запуске web server ответственность смещается на настройки доступа: адрес, порт и режим --auth.
Безопасная базовая схема для локальной проверки:
agedu -s /home/user -w -RБолее контролируемая схема с явным адресом:
agedu -s /home/useragedu -w --address 127.0.0.1:8081 --auth basicagedu -RНе стоит использовать --auth none для системных каталогов, домашних директорий, проектных хранилищ и серверов с несколькими пользователями. Этот режим открывает полный доступ к отчётам всем, кто может подключиться к web server.
Типичные ошибки при работе с Agedu
Считать красный цвет командой к удалению
Красный цвет означает давний access time, а не мусор. Файл мог не читаться напрямую, но оставаться частью сборочной цепочки, резервной копии, образа, справочника, набора данных или редко используемого архива. Перед удалением нужно проверить назначение каталога и связь с приложениями.
Запускать анализ на файловой системе с noatime
Если раздел смонтирован с noatime, Agedu не получает полезной информации для обычного режима. Отчёт по last access time в такой среде будет вводить в заблуждение. Для частичных задач можно использовать --mtime, но это другой критерий анализа.
Забывать индекс agedu.dat
После разовой диагностики индекс лучше удалить. Он может занимать десятки или сотни мегабайт на больших деревьях и хранит структуру каталогов. Команда agedu -R удаляет индекс из текущего расположения, а при использовании -f нужно указывать тот же путь к файлу.
Открывать web server наружу без защиты
--address ANY делает отчёт доступным не только через localhost. Без строгой аутентификации это опасно для каталогов с рабочими именами, пользовательскими данными и структурой проектов. Для локального анализа достаточно стандартного 127.0.0.1.
Сканировать слишком широкую область
Запуск на корне файловой системы без понимания точек монтирования, системных каталогов и исключений создаёт шумный отчёт. Лучше начинать с того раздела или каталога, где реально не хватает места, а затем уточнять область через подкаталоги.
Путать --exclude и --prune
--prune исключает объект и не сканирует содержимое каталога. --exclude исключает объект из индекса, но может продолжать обход вложенных данных. Для ускорения обхода больших ненужных веток нужен --prune; для тонкой фильтрации вывода — --exclude и --include.
Переносить agedu.dat между разными архитектурами
Индекс зависит от характеристик CPU-архитектуры. Для переноса результатов между разными типами машин используются -S, -D и -L, а не простое копирование agedu.dat.
Как проверять результаты Agedu перед удалением
Проверка начинается с понимания контекста. Если Agedu показывает старую крупную директорию, сначала нужно определить, кто её использует, когда она создавалась, как связана с приложениями и есть ли резервная копия. Для личных файлов достаточно ручного просмотра, для серверов — согласования с владельцем данных или внутренней политикой хранения.
Практический порядок:
открыть каталог, который Agedu пометила как старый и крупный;
посмотреть список файлов и подкаталогов;
проверить назначение через README, конфигурацию проекта, имена директорий, владельца и права;
сравнить размер через
du -sh;проверить дату изменения и дату доступа для отдельных файлов;
уточнить, не используется ли каталог сервисом, задачей cron, сборочной системой или резервным процессом;
перенести данные в архив, если они нужны редко;
удалить только после проверки и при наличии понятного восстановления.
Для системных каталогов полезно сначала создать список кандидатов, а не удалять сразу:
agedu -t /srv -a 1y > old-data-report.txtТакой файл можно приложить к задаче на разбор хранилища, отправить владельцам проектов или использовать как основу для архивации. Agedu в этом режиме становится инструментом инвентаризации, а не одноразовой утилитой для освобождения места.
Полезные связки с другими инструментами
Agedu хорошо дополняет стандартные команды Linux. После визуального поиска старой области через HTML-отчёт можно перейти к обычным средствам проверки:
du -sh /path/to/candidatefind /path/to/candidate -type f -atime +365 -printfind /path/to/candidate -type f -mtime +365 -printls -lah /path/to/candidatedu даёт точный размер выбранного каталога. find помогает вывести конкретные файлы по atime или mtime. ls показывает владельцев, права и размеры. Agedu берёт на себя главную навигационную задачу: быстро находит, куда смотреть.
В графическом рабочем окружении Agedu можно сочетать с визуальными программами. Например, сначала найти старую ветку через Agedu, затем открыть её в файловом менеджере или графическом анализаторе. На freeexe для смежных задач есть отдельные разделы: поиск файлов, HDD, SSD, USB и Flash, оптимизация системы. Это не аналоги Agedu один к одному, но они закрывают соседние пользовательские сценарии.
FAQ
Agedu сама удаляет файлы?
Нет. Agedu строит отчёты и показывает кандидатов для проверки. Удаление выполняется отдельно штатными средствами системы. Это снижает риск автоматической потери нужных данных.
Чем Agedu отличается от du?
du показывает размер каталогов. Agedu тоже анализирует занятое место, но дополнительно учитывает last access time и показывает, какие данные давно не открывались. За счёт этого программа помогает искать wasted disk space, а не просто крупные папки.
Зачем нужен файл agedu.dat?
agedu.dat — индекс, который создаётся после сканирования. Из него Agedu строит текстовые и HTML-отчёты. Без индекса программа не сможет быстро обслуживать переходы по каталогам и повторные отчёты.
Почему индекс нужно удалять?
Индекс может быть большим и содержит структуру сканируемых каталогов. После разового анализа его лучше удалить командой agedu -R. Если индекс создан через -f, удаление нужно выполнять с тем же параметром пути.
Что делать, если файловая система смонтирована с noatime?
Обычный режим Agedu в такой среде не даёт полезного результата по last access time. Для отдельных задач можно использовать --mtime, но отчёт будет строиться по времени изменения, а не по времени доступа.
Можно ли использовать Agedu без графической оболочки?
Да. Сканирование и текстовый отчёт работают в терминале. HTML-отчёт можно открыть через браузер на той же машине, через SSH-туннель или заменить статическим HTML-выводом через -H.
Можно ли сохранить HTML-отчёт?
Да. Режим -H создаёт HTML-отчёт. С параметром -d Agedu формирует набор связанных страниц, а верхний файл называется index.html.
Почему отчёт показывает старые данные, которые всё ещё нужны?
Agedu ориентируется на файловые timestamps. Если приложение зависит от файла, но не читает его физически, atime не обновляется. Такие данные могут выглядеть неиспользуемыми, хотя удалять их нельзя.
Когда лучше выбрать ncdu?
ncdu лучше подходит для быстрой интерактивной работы в терминале, особенно на удалённом сервере. Agedu стоит выбирать, когда важен именно возраст данных и нужно отделить старые крупные каталоги от активно используемых.
Когда лучше выбрать Baobab или Filelight?
Baobab удобнее на рабочем столе GNOME, когда нужна простая графическая проверка размера папок. Filelight подходит для визуального обзора диска через концентрические кольца. Agedu выигрывает в задачах, где размер нужно анализировать вместе с last access time.
Итоговые рекомендации
Agedu стоит использовать, когда нужно не просто узнать, какие каталоги занимают место, а найти большие области данных, к которым давно не обращались. На сервере это удобный инструмент для анализа /home, /srv, рабочих директорий и общих хранилищ. В домашней Linux-системе он помогает разобрать загрузки, архивы, виртуальные машины и старые проекты. В командах разработки Agedu полезна для поиска забытых сборок, временных результатов и крупных каталогов, выпавших из регулярной работы.
Для разовой проверки достаточно команды agedu -s /path -w -R: она создаёт индекс, открывает отчёт и удаляет временный файл после завершения. Для регулярной диагностики лучше хранить индекс в отдельном месте через -f, использовать текстовый режим -t и сохранять отчёты для дальнейшего разбора. Для файловых систем с недостоверным atime нужно либо исправлять условия монтирования, либо осознанно переходить к --mtime.
Agedu не заменяет очистку диска, файловый менеджер и мониторинг накопителя. Её сильная сторона — точный анализ дискового пространства Linux по сочетанию размера и времени последнего доступа. Если нужно быстро удалить кэш и временные файлы, подойдут чистильщики вроде Wise Disk Cleaner или Glary Disk Cleaner. Если нужен интерактивный терминальный обход размеров, удобнее ncdu. Если нужно понять, где лежат старые крупные данные, Agedu даёт более подходящую карту для ручной проверки, архивации и аккуратного освобождения места.
Список изменений
История версий и развитие программы:
- Agedu появилась как узкоспециализированный ответ на ограничение обычного du . Стандартная команда показывает, где занято место, но не помогает отличить активные крупные данные от старых забытых наборов. Agedu развила эту идею через объединение размера каталогов и last-access time. Уже раннее описание программы включало базовую архитектуру, которая сохранилась в дальнейшем: сканирование дерева, создание индекса, построение отчётов и HTML-навигация по подкаталогам.
- В материалах LinuxUser за 2009 год Agedu уже описывалась как программа Simon Tatham для поиска устаревших данных: она читала timestamps последнего доступа, связывала их с объёмом каталогов и показывала результат в браузере через собственный web server. Там же были отмечены двухэтапная логика работы, создание индекса, режим --web , локальный адрес, аутентификация и графическая шкала в браузере.
- Дальнейшее развитие программы видно по набору режимов, которые поддерживает современная man page. Помимо базовых -s и -w , Agedu содержит текстовый вывод -t , scan-to-dump -S , загрузку dump через -L , вывод существующего индекса через -D , генерацию HTML через -H , CGI-режим, presort/postsort для подготовки внешних dump-данных, настройку глубины -d , вывод отдельных файлов через --files , фильтры include/exclude/prune и настройку шкалы через --age-range .
- Отдельное направление развития — безопасность локального web-отчёта. Agedu не просто поднимает страницу на случайном порту: программа поддерживает разные режимы доступа через --auth , использует Linux /proc/net/tcp для magic authentication, умеет включать HTTP Basic authentication и допускает явное указание логина и пароля через --auth-file или --auth-fd . Такая защита важна, потому что отчёт раскрывает структуру файловой системы и объёмы данных по каталогам.
- Ещё одна линия развития — переносимость результатов анализа. Индекс agedu.dat зависит от характеристик CPU-архитектуры, поэтому прямой перенос индекса между разными типами машин не является надёжным. Для таких задач появились режимы dump/load: -S создаёт текстовый dump без индекса, -L строит индекс из dump, а -D выгружает существующий индекс в переносимый текстовый формат. Это делает Agedu пригодной для сценариев, где файловая система доступна на одной машине, а просматривать отчёт удобнее на другой.


Оставте свой отзыв о Agedu