Linux как узнать что занимает много места

Чем занято место на диске Linux

Ситуация, когда на разделах Linux заканчивается место может быть очень часто встречаемой. На вебсерверах такая проблема возникает еще чаще, т.к. большое количество посетителей и ошибки в программах могут приводить к огромному росту лог-файлов и т.д. и появляется необходимость определить чем занято место на диске Linux, чтобы удалить ненужные данные и освободить место. Есть несколько вариантов как это сделать.

1-й способ. Утилита du — подсчет занимаемого места.

Воспользоваться встроенной утилитой du. Сделать это достаточно просто. Например, чтобы определить в текущей папке занимаемое место всеми подкаталогами и файлами, нужно использовать команду:

du -sm *

Вывод этой команды будет примерно такой:

Немного поясню использованные ключи:
s — означает, что нужно вывести суммарное занимаемое место, т.е. например, не показывать каждый файл из папки folder1 и занимаемое им место, а показать, сколько всего места занимают все файлы в папке folder1
m — означает вывод данных в Мб, можно использовать вместо него ключи b (в байтах) и k (в килобайтах)
* — означает подсчитать все объекты в текущем каталоге. Если не указать * , то будет подсчитано все занимаемое место текущего каталога. Так же, можно подсчитать сколько места занимает конкретная папка со всеми файлами и подкаталогами в ней, для чего нужно написать вместо * название нужного каталога.

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

du -sm * | sort -n

Эта простая команда поможет вам выяснить, чем занято место в конкретной папке или на всем разделе Linux. Команда универсальна, проста в использовании и есть в любых дистрибутивах Linux.

2-й способ. Утилита ncdu — анализ занятого места и его освобождение

Есть так же и другие способы определить чем занято место на диске, например, очень удобная в плане анализа занятого места — утилита ncdu. Установить ее можно, например, так:

  • Для Debian систем (rpm-пакеты) (в т.ч. Ubuntu) командой apt-get install ncdu
  • Для Red Hat систем (dpkg-пакеты) командой yum install ncdu

Дальше просто запустите ncdu и подождите, когда она подсчитает занимаемое место. По-умолчанию программа посчитает размеры папкой текущей папки, из которой программа была запущена. Если нужно посчитать какую-то другую папку, просто добавьте к команде путь к папке, например, так: ncdu /var/www. Если нужно посчитать занимаемое место на всем диске, можно использовать ncdu /.

Программа показывает занимаемое папками место, позволяет заходить в них и сразу видеть сколько подпапки занимают места. Так же в этой утилите можно выполнять различные действия над файлами и папками. Получить справку по клавишам управления можно нажав «?«. Ниже приведу список некоторых из клавиш управления:

  • d — удалить выбранный файл или папку с файлами;
  • n — отсортировать файлы и папки по имени;
  • s — отсортировать файлы и папки по объему занимаемого места;
  • t — показывать сначала папки, затем файлы;
  • g — режим отображения (в процентах, графически, комплексно);
  • a — режим отображения (размер файла, занятое место на жестком диске)
  • e — включить/отключить отображение скрытых файлов;
  • i — показать дополнительную информацию о папке или файле;
  • r — заново пересчитать занимаемое место;
  • q — выйти из программы;
Читайте также:  Проверить windows наличие ошибок

Программа очень удобная, простая и выполняет задачу по анализу и освобождению свободного места полностью, рекомендую ее к использованию.

3-й способ. Графические утилиты.

Есть большое количество графических программ, которые позволяют делать примерно то же, что ncdu, только в графике. В Ubuntu, например, есть графическая программа, которая находится в Приложения > Системные утилиты > Анализатор использования диска. Кроме того, есть много и других программ. Приведу небольшой список, чтобы вы могли их попробовать и выбрать, какая больше нравится:

  • В системах с Gnome обычно есть утилита Baobab, которая графически покажет занимаемое папками место, так же выводит диаграмму;
  • Утилита KDirStat для KDE (WinDirStat для Windows) — в отличие от Baobab показывает вместо диаграммы прямоугольники, размер которых соответствует занимаемому папками пространства;
  • Gd Map — аналог KDirStat для Gnome;
  • Filelight и Philesight — аналоги Baobab (показывает папки в виде диаграммы).

Вот пожалуй, основной набор способов определения занятого места на дисках Linux. Можно конечно найти еще множество других способов, здесь я привел самые основные и распространенные.

Источник

Закончилось место на сервере Linux. Как узнать, чем занято?

Начинающие мастера часто сталкиваются с проблемой, когда заканчивается свободное место на хостинге или VPS с Linux. При этом объёмных работ по наполнению сайтов, работающих на сервере, не производилось. У моего коллеги был случай, когда из-за нехватки места не могли создастся файлы сессий на сайте. Давайте разберёмся, как это предотвратить на реальном примере.

Как узнать в linux, сколько осталось свободного места

Для того, чтобы узнать сколько место осталось на сервере, выполните команду:

Данная команда отобразит информацию о свободном пространстве на жёстком диске в гигабайтах. Кроме того, программа вычисляет процент занятого пространства, чтоб облегчить восприятие. Если занято более 90% — уже стоит беспокоиться.

Печальная картина — sda1 у нас занят 21 ГБ из 24. Место скоро закончится, но лучше это предотвратить.

Как узнать, чем занято место на сервере

Часто, причинами разрастания объёмов данных на сервер являются файлы логов. Например, из-за какой-нибудь
ошибки в скрипте сайта при каждом его выполнении ошибки пишется в лог.

Поищем 10 самых больших файлов на сервере, выполнив команду:

Нашли самые объёмные файлы

Видим, что самый большой файл лежит в папке mysql и имеет расширение MYD. Его трогать нельзя, так как в этом файлы хранятся данные для базы данных MySQL. Это относится и к файлам ipdata1 и ib_logfile*.

В файле selogs.txt хранилась информация о ботах поисковых систем, приходящих на сайт. Такие файлы можно безболезненно удалять, выполнив команду:

Файлы логов btmp.* содержат в себе информацию о неудачных попытках входа в систему. Возможно вас пытаются взломать, подобрав пароль методом bruteforce. Чтобы себя обезопасить, рекомендую настроить авторизация по ssh ключу. Изучив содержимое этих файлов (при необходимости), их тоже можно удалить.

Читайте также:  Раздача с ноута wifi windows 10

Очистка linux системы с помощью утилиты apt

Если у вас дистрибутив семейства Debian, можете удалить ненужные пакеты и кэш с помощью утилиты apt.

Перед установкой какого-либо пакета через apt-get, он кэшируется в локальный репозиторий. Объём сохранённых deb пакетов может достигать внушительных размеров. Команда команда apt-get clean удалит все закэшированные deb пакеты и освободит обширное пространство на диске.

При установке программы, вмести с ней в linux устанавливаются дополнительные пакеты, которые использует эта программа. Если программа была удалена, то её зависимости автоматически не удаляются. Данная команда и предназначена для удаления этих пакетов. Но если доля зависимостей ваших программ может быть невелико, то размер зависимостей устаревших версий ядра операционной системы linux может быть огромным. Выполните эту команду и увидите эффект.

Освобождение места с помощью утилиты yum

В семействе дистрибутивов RedHat аналогичные операции можно произвести с помощью следующих команд:

Детальное исследование занятого места на дисках в Linux

Для детального исследования занятого пространства в linux рекомендую использовать утилиту ncdu. Установить ее можно командой:

Если у вас yum, вместо apt-get, то:

sudo yum install

После установки перейдите в любую папку и выполните в консоли команду:

Вот пример с результатом работы данной программы для папки, где лежат файлы моего блога.

Таким образом, можно искать папки, занимающие большие объёмы дискового пространства.

Источник

Как найти файлы и папки занимающие больше всего места в Linux

Пользователи компьютеров обычно знают, по какой причине у них заканчивается место на диске — скачено слишком много файлов с помощью Torrent, слишком много фотографий накопилось за последние годы, слишком большой видеоархив с последних событий и так далее. Но иногда ситуации не такие тривиальные — место может закончится на системной диске или на удалённом веб-сервере. В этой статье мы рассмотрим способы, которые позволят найти самые большие папки, которые заняли слишком много места на диске.

Описанные варианты ориентированы на командную строку — специально чтобы быть применимыми одновременно и для пользователей с настольными компьютерами, и для администраторов веб-серверов.

1. ncdu для очистки папок

Программа ncdu является одним из самых удобных вариантов — она просто отлично справляется со своими задачами. У неё Ncurses интерфейс, то есть для обычных пользователей это будет просто очень удобно, а для администраторов, обслуживающих удалённые веб-сервера без графического интерфейса она также подойдёт, поскольку Ncurses не требует графического окружения рабочего стола.

Программа очень интуитивная и проста в использовании, достаточно запустить её:

При этом у программы большое количество возможностей и дополнительных функций и оптимизаций, с которыми вы можете познакомиться в статье «ncdu: графический интерфейс du чтобы быстро узнать, какие файлы и папки израсходовали место на диске».

2. Как с помощью du найти самые большие папки

Теперь рассмотрим приёмы использования утилит командной строки, обычно уже имеющихся на машинах даже с минимальным количеством установленных программ.

Нужна начать с того, чтобы сориентироваться, среди каких директорий нужно искать те, которые израсходовали слишком много место в системе. Начать можно примерно со следующих команд:

Вместо нужно вписать директорию в системе, например, если мы хотим начать с корневой директории:

Читайте также:  Криптопро csp mac os установить серийный номер

Эта команда покажет только папки, размер которых измеряется гигабайтами.

Следующая команда делает нечто похожее, но сортирует папки по возрастанию размера и показывает только 10 самые тяжёлые:

Пример для анализа всей корневой файловой системы:

В этих командах:

  • опция -P говорит не следовать по символическим ссылкам (это может привести к тому, что файлы будут посчитаны дважды)
  • опция -x означает оставаться на одной файловой системе (очень полезно, не будут посчитаны смонтированные диски, а также диски с виртуальной файловой системой)
  • опция -h печатает размер файлов в простом для восприятия человеком формате
  • sudo для повышения привилегий — позволяет команде считать размер всех директорий и не выводить множество ошибок из-за недостатка прав на чтения папок

Чтобы указать корневую директорию, используйте /, чтобы указать текущую директорию, используйте . (точка). В любой из перечисленных выше команд вы можете указывать определённую папку, чтобы начать сбор информации с неё. Например, когда вы нашли папку с большим размером и хотите узнать больше подробностей о ней, укажите её в одной из команд.

3. Как найти большие файлы

Если есть основания думать, что нехватка места на диске заключается в том, что его заняли какие-то большие файлы (например, файлы логов какого-то приложения) а не множество маленьких файлов, то с помощью команды find можно выполнить поиск файлов, размер которого больше определённого, например:

Эта команда найдёт все файлы, размер которых больше 10 мегабайт.

В этой команде вместо / (означает искать начиная с корневой директории) вы можете указать любую другую директорию. А вместо +10M вы можете указать любое значение и другой префикс, например вместо M (мегабайты) указать G (гигабайты).

Источник

Свободное место на разделах Linux и занимаемое папками пространство

Системы на базе UNIX, весьма стабильны, и если они перестают работать корректно, первым делом, необходимо убедиться в наличие свободного дискового пространства. В данной инструкции приведены примеры консольных команд.

Занимаемое место всеми разделами

Базовая команда, которая работает для всех систем семейства UNIX:

* -h добавлено для более читабельного вывода информации по занимаемому месту. Без данной опции информация будет показана в килобайтах.

Примерный результат выполнения команды:

1 — путь к файловому разделу (диск, внешний накопитель, сетевая шара и так далее).
2 — полный объем раздела.
3 — объем использованного пространства.
4 — сколько еще осталось места.
5 — сколько использовано в процентах.
6 — куда примонтирована файловая система.

Посмотреть занимаемое место папками

Чтобы узнать, какой именно каталог занимает много места, воспользуемся командой:

* в данном примере смотрим все папки корневого раздела (/).

Примерный вывод будет следующий:

Это очень удобная команда для поиска каталога, который занимает большую часть пространства раздела.

То же самое с сортировкой по весу папки:

du -d1 / | sort -nr

Вес одной папки и ее содержимого

Отобразить занимаемое место конкретной папки и всего ее содержимого можно следующей командой:

* отобразит занимаемое место каталогом, в котором мы находимся (можно посмотреть командой pwd).

Что чаще всего занимает место на диске

Из данных, которые могут занимать много места, и которые можно чистить, как правило, являются log-файлы — журналы приложений и операционной системы. Это текстовая информация, которая хорошо поддается сжатию. Чтобы автоматизировать процесс чистки логов, воспользуйтесь инструкцией Ротация логов в Linux и FreeBSD с помощью logrotate.

Также место могут занимать временные данные — они находятся в каталоге /tmp.

Источник

Оцените статью