Альтернативы команде du для проверки использования диска
Как вы, возможно, уже знаете, команда "du" используется для вычисления и суммирования использования пространства файлов и каталогов в Unix-подобных системах. Если вы активно пользуетесь командой du, это руководство будет вам интересно! Сегодня я наткнулся на несколько хороших альтернатив команды du. Их может быть много, но это те, о которых я знаю на данный момент. Если я что-нибудь наткнусь в будущем, я добавлю это в этот список. Кроме того, если вы знаете какие-либо другие альтернативы, сообщите мне об этом в разделе комментариев ниже. Я их тоже рассмотрю и добавлю в список. Теперь давайте посмотрим на некоторые хорошие альтернативы команде du.
1. Нду
Ncdu — популярная альтернатива команде du в сообществе Linux. Разработчик Ncdu не удовлетворен работой команды du, поэтому он создал свою собственную. Ncdu — простой, но быстрый анализатор использования диска, написанный на языке программирования C с интерфейсом ncurses и позволяющий определить, какие каталоги или файлы занимают больше места в локальной или удаленной системе. . Мы уже опубликовали подробное руководство по Ncdu. Если вам интересно узнать об этом больше, перейдите по следующей ссылке.
- Как проверить использование дискового пространства в Linux с помощью Ncdu
2. Оловянное лето
Tin Summer используется для поиска артефактов сборки, занимающих дисковое пространство. Это также еще одна хорошая альтернатива команде du. Благодаря многопоточности Tin-summer значительно быстрее команды du при расчете размера больших каталогов. В отличие от команды Du, она считывает размеры файлов, а не использование диска. Tin SUmmer — это бесплатный инструмент с открытым исходным кодом, написанный на языке программирования Rust.
Разработчик утверждает, что Tin Summer — хорошая альтернатива du Command, потому что:
- В больших каталогах она работает быстрее по сравнению с командой du.
- По умолчанию он отображает результаты использования диска в удобочитаемом формате.
- Он использует regex для исключения файлов/каталогов,
- Обеспечивает отсортированный и раскрашенный вывод,
- Расширяемый,
- И более.
2.1. Установите Tin Summer в Linux
Чтобы установить Tin Summer, откройте терминал и выполните следующую команду:
curl -LSfs https://japaric.github.io/trust/install.sh | sh -s -- --git vmchale/tin-summer
Альтернативно вы можете установить Tin Summer с помощью менеджера пакетов Cargo . Убедитесь, что вы установили Rust в свою систему, как описано по следующей ссылке.
- Установить язык программирования Rust в Linux
После установки Rust выполните следующую команду, чтобы установить Tin Summer:
$ cargo install tin-summer
Если какой-либо из вышеупомянутых методов не работает, загрузите последнюю версию двоичного файла со страницы выпусков, скомпилируйте и установите ее вручную.
2.2. Применение
Чтобы узнать размеры файлов в текущем рабочем каталоге, используйте следующую команду:
$ sn f
749 MB ./.rustup/toolchains
749 MB ./.rustup
147 MB ./.cargo/bin
147 MB ./.cargo
900 MB .
Видеть? По умолчанию он отображает более приятный ввод в удобочитаемом формате. Вам не нужно использовать какие-либо дополнительные флаги (например, -h в команде du), чтобы получить этот результат.
Чтобы узнать размеры файлов в определенном каталоге, укажите фактический путь, как показано ниже:
sn f <path-to-the-directory>
Мы также можем отсортировать список на выходе. Чтобы отобразить отсортированный список пяти крупнейших каталогов, запустите:
$ sn sort /home/sk/ -n5
749 MB /home/sk/.rustup
749 MB /home/sk/.rustup/toolchains
147 MB /home/sk/.cargo
147 MB /home/sk/.cargo/bin
2.6 MB /home/sk/mcelog
900 MB /home/sk/
К вашему сведению, последний результат в приведенном выше выводе — это общий размер самых больших каталогов в данном каталоге, то есть /home/sk/. Так что не удивляйтесь, почему вы получаете шесть результатов вместо 5.
Чтобы найти в текущем каталоге каталоги с артефактами сборки:
$ sn ar
Tin Summer также может искать каталоги, содержащие артефакты, занимающие определенный размер дискового пространства. Скажем, например, чтобы найти каталоги, содержащие артефакты, занимающие более 100 МБ дискового пространства, выполните:
sn ar -t100M
Как уже упоминалось, Tin Summer работает быстрее в больших каталогах, но медленнее в маленьких. Однако разработчик уверяет, что найдет способ исправить это в будущих выпусках!
Чтобы получить помощь, запустите:
sn --help
Для получения более подробной информации проверьте репозиторий проекта GitHub, указанный в конце этого руководства.
3. Пыль
Dust (du+rust=dust) — более интуитивно понятная версия утилиты du. Это даст нам мгновенный обзор того, какие каталоги занимают дисковое пространство, без необходимости использовать команды head или sort. Как и Tin Summer, он по умолчанию отображает размер каждого каталога в удобочитаемом формате. Он бесплатный, с открытым исходным кодом и написан на языке программирования Rust.
3.1. Установите Dust в Linux
Поскольку утилита пыли написана на Rust, ее можно установить с помощью менеджера пакетов «cargo», как показано ниже.
cargo install du-dust
Альтернативно вы можете загрузить последнюю версию двоичного файла со страницы релизов и установить ее, как показано ниже. На момент написания этого руководства последней версией была 0.3.1.
wget https://github.com/bootandy/dust/releases/download/v0.3.1/dust-v0.3.1-x86_64-unknown-linux-gnu.tar.gz
Извлеките файл загрузки:
tar -xvf dust-v0.3.1-x86_64-unknown-linux-gnu.tar.gz
Наконец, скопируйте исполняемый файл в свой путь ` PATH, например /usr/local/bin.
sudo mv dust /usr/local/bin/
3.2. Применение
Чтобы узнать общий размер файлов в текущем каталоге и его подкаталогах, запустите:
dust
Пример вывода:
Мы также можем получить полный путь ко всем каталогам, используя флаг -p.
dust -p
Чтобы получить общий размер нескольких каталогов, просто укажите их через пробел:
dust <dir1> <dir2>
Вот еще несколько примеров.
Покажите видимый размер файлов:
dust -s
Показывать только определенное количество каталогов:
dust -n 10
Показать 3 уровня подкаталогов в текущем каталоге:
dust -d 3
Для получения помощи запустите:
dust -h
Более подробную информацию можно найти на странице проекта на GitHub, указанной в конце.
4. Дискус
Diskus Это простая и быстрая утилита командной строки, альтернативная команде du -sh
. Утилита diskus вычисляет общий размер файла текущего каталога. Это распараллеленная версия команды du -sh
или, скорее, du -sh --bytes
. Разработчик утилиты diskus утверждает, что она примерно в девять раз быстрее по сравнению с 'du -sh'. Diskus — это минимальная, быстрая программа с открытым исходным кодом, написанная на языке программирования Rust.
4.1. Установить дискус в Linux
Утилита diskus доступна в репозитории Arch Linux [Community]. Чтобы установить его, просто запустите:
sudo pacman -S diskus
В Ubuntu и ее производных загрузите последнюю версию утилиты diskus со страницы релизов и установите ее, как показано ниже.
wget "https://github.com/sharkdp/diskus/releases/download/v0.3.1/diskus_0.3.1_amd64.deb"
sudo dpkg -i diskus_0.3.1_amd64.deb
Альтернативно вы можете установить diskus с помощью менеджера пакетов Cargo . Убедитесь, что в вашей системе установлен Rust 1.29 или выше, как описано в ссылке, приведенной выше в разделе «Установка Tin Summer».
Если в вашей системе установлен Rust, выполните следующую команду для установки diskus:
cargo install diskus
4.2. Применение
Обычно, когда я хочу проверить общее дисковое пространство, используемое определенным каталогом, я использую флаги -sh с командой du, как показано ниже.
du -sh dir
Здесь флаг -s указывает сводку.
Используя инструмент Diskus, я нахожу общий размер текущего рабочего каталога с помощью команды:
diskus
Я протестировал diskus, чтобы вычислить общий размер различных каталогов в моей системе Arch Linux. Скорость вычисления общего размера каталога впечатляет! Должен признать, что эта утилита работает гораздо быстрее, чем du -sh. Имейте в виду, что он может определить размер текущего каталога только на данный момент.
Чтобы получить помощь, запустите:
diskus -h
Более подробную информацию о Diskus можно найти на официальной странице GitHub (ссылка в конце).
Рекомендуем прочитать:
- Как узнать размер каталога в Linux
5. Дуу
Duu, сокращение от Ddirectory Usage Utility, — это еще один инструмент для определения использования диска в данном каталоге. . Это кроссплатформенный продукт, поэтому вы можете использовать его в операционных системах Windows, Mac OS и Linux. Он написан на языке программирования Python.
5.1. Установите Дуу в Linux
Убедитесь, что у вас установлен Python3. Python3 доступен в репозиториях по умолчанию большинства дистрибутивов Linux, поэтому установка не составит проблем.
После установки Python3 загрузите последнюю версию Duu с официальной страницы релизов.
wget https://github.com/jftuga/duu/releases/download/2.20/duu.py
5.2. Применение
Чтобы узнать дисковое пространство, занятое текущим рабочим каталогом, просто запустите:
python3 duu.py
Пример вывода:
Как вы можете видеть в приведенном выше выводе, утилита Duu отобразит сводную информацию об общем количестве файлов и каталогов, а также их общем размере в байтах, КБ и МБ. Он также отобразит общий размер каждого элемента.
Чтобы отобразить общее использование диска для определенного каталога, просто укажите полный путь, как показано ниже:
python3 duu.py /home/sk/Downloads/
Более подробную информацию можно найти на странице Duu на github, расположенной в конце.
6. Дуф
Duf — это утилита командной строки для определения использования диска в Linux и Unix-подобных системах. Он отображает подробную информацию об использовании диска в удобной табличной форме и удобном для пользователя формате. Вы даже можете получить данные об использовании диска в формате JSON .
Duf — это сокращение от disk usage/free. Она также считается лучшей альтернативой традиционной команде df
.
Duf — приложение с открытым исходным кодом, написанное на языке программирования Go и выпущенное под лицензией MIT. Он работает под GNU/Linux, BSD и Mac OS.
Чтобы узнать больше о Duf, ознакомьтесь со следующим руководством:
- Как просмотреть использование диска с помощью Duf в Linux и Unix
7. Файллайт
Filelight — это графическая утилита для визуализации использования диска в вашей системе Linux, которая отображает результаты использования диска в цветном радиальном расположении. Filelight — один из старейших проектов, существующий уже давно. Он полностью бесплатен и имеет открытый исходный код.
Чтобы узнать, как просмотреть отчет об использовании диска с помощью Filelight, ознакомьтесь со следующим руководством.
- Filelight – визуализируйте использование диска в вашей системе Linux
И это все на данный момент. Надеюсь, это было полезно. Теперь вы знаете семь альтернатив команде du. Лично я предпочитаю Ncdu всем, представленным в этом руководстве. Теперь твоя очередь. Попробуйте и поделитесь с нами своими мыслями об этих инструментах в разделе комментариев ниже.
Ресурсы:
- Репозиторий Tin Summer на GitHub
- Репозиторий Dust на GitHub
- Репозиторий Diskus GitHub
- Репозиторий Duu на GitHub