- Размеры папок и дисков в Linux. Команды df и du
- Свободное место на диске (df)
- Опция -h
- Размер конкретного диска
- Размер папок на диске (du)
- Анализ дискового пространства в Linux – команды du и ncdu
- как посмотреть свободное место на диске
- Команда du – синтаксис и опции
- Примеры использования команды du
- Команда ncdu
- Примеры команд ncdu
- Как посмотреть диски в Linux
- 1. lsblk
- 2. df -h
- 3. fdisk -l
- 4. parted -l
- 5. cfdisk
- 6. sfdisk -l
- 7. ls -l /dev/disk/by-id
- 8. lshw -class disk
- Заключение
Размеры папок и дисков в Linux. Команды df и du
Рассмотрим, как используя команды df и du просматривать свободное место на дисках и размеры папок в Linux.
Свободное место на диске (df)
Для просмотра свободного и занятого места на разделах диска в Linux можно воспользоваться командой df.
Первым делом можно просто ввести команду df без каких-либо аргументов и получить занятое и свободное место на дисках. Но по умолчанию вывод команды не очень наглядный — например, размеры выводятся в КБайтах (1К-блоках).
Примечание: df не отображает информацию о не смонтированных дисках.
Опция -h
Опция -h (или —human-readable) позволяет сделать вывод более наглядным. Размеры выводятся теперь в ГБайтах.
Размер конкретного диска
Команде df можно указать путь до точки монтирования диска, размер которого вы хотите вывести:
Размер папок на диске (du)
Для просмотра размеров папок на диске используется команда du.
Если просто ввести команду без каких либо аргументов, то она рекурсивно проскандирует вашу текущую директорию и выведет размеры всех файлов в ней. Обычно для du указывают путь до папки, которую вы хотите проанализировать.
Если нужно просмотреть размеры без рекурсивного обхода всех папок, то используется опция -s (—summarize). Также как и с df, добавим опцию -h (—human-readable).
Источник
Анализ дискового пространства в Linux – команды du и ncdu
Одной из распространённых задач в системном администрировании является оценка состояния жёстких дисков (а также и других устройств хранения), в том числе анализ использования дискового пространства. В Linux для таких целей давно существуют утилиты с удобным графическим интерфейсом, предоставляющих наглядную информацию о занятом пространстве в виде диаграмм и графиков. Однако, для системных администраторов, обслуживающих «серьёзные» сервера на основе Linux-систем, графический интерфейс — чрезмерное удовольствие, не оправдывающее затрачиваемых на него ресурсов. Поэтому необходимо уметь обходиться средствами командной консоли, используя специализированные консольные утилиты для анализа дискового пространства, которые доступны в виде двух команд — du и ncdu.
как посмотреть свободное место на диске
Давайте узнаем сколько у нас свободного места в системе. Узнать это можно с помощью команды
как видим у нас диск занят на 97%, и нам необходимо узнать что у нас заняло место. Давайте этим займемся.
Команда du – синтаксис и опции
Disk Usage – именно так интерпретируется название команды du. Она была написана ещё в самой первой версии UNIX (в определённом роде предшественницы Linux), еще в стенах одной из лабораторий компании AT&T. Этот факт даёт понять, насколько важно следить за дисковым пространством, а также анализировать его при наличии специализированных программных инструментов, ведь du – одна из самых первых утилит из стандартного комплекта UNIX/Linux.
Итак давайте узнаем что у нас занимает место
Более подробное описание команды du и ключей вы можете прочитать ниже. Вывод будет следующий
Отсюда мы видим что самый большой каталог у нас /var. Посмотрим что у на занимает место в каталоге /var
видим что это папка log
Теперь смотрим /var/log
и вот здесь мы уже видим пять самых больших файлов с логами, именно они и заняли все место на диске. Давайте рассмотрим команду du подробнее.
Согласно описанию из официального man-руководства, утилита du суммирует использование дискового пространства набора элементов, рекурсивно с каталогами. Синтаксис команды не простой, а очень простой, поскольку представляет собой классический прототип команды Linux:
Если дать команду du без параметров, то по-умолчанию будет выведен список всех каталогов и подкаталогов для текущего каталога. Также по-умолчанию единицей измерения объёма является 1024 байта или 512 байт, в зависимости от конфигурации используемой системы:
Как видно, code_text.txt занимает 4 килобайта (т. к. 1024 байта = 1 килобайт) дискового пространства. То же самое и с папками, но по-умолчанию будет указан общий размер папки без детализации по файлам и подкаталогам. В следующей таблице приведены опции команды du:
Опция | Назначение |
-a | Выводит объём для всех элементов, а не только для каталогов |
—apparent-size | Выводит действительные размеры, но не занимаемое место а диске |
-B, —block-size=РАЗМЕР | Задаёт использование определённых единиц измерения объёма |
-b, —bytes | То же самое, что и «—block-size —apparent-size=1» |
-с, —total | Выводит общий результат |
-D, —dereference-args | Указывает обрабатывать только те символьные ссылке, которые перечислены в командной строке |
-d, —max-depth=N | Выводит общий размер только до N-го уровня (включительно) дерева каталогов |
-h, —human-readable | Выводит размеры в удобном для человека виде |
-k | Эквивалентно —block-size=1K |
-L, —dereference | Разыменовывает символьные ссылки |
-l, —count-links | Складывает размеры, если несколько жёстких ссылок |
-m | Эквивалентно —block-size=1M |
-t, —threshold=РАЗМЕР | Исключает элементы, которые меньше РАЗМЕРА, если это значение положительно или размер которых больше, если это значение отрицательно |
—time | Выводит время последнего изменения в каталоге и во всех подкаталогах |
—time=АТРИБУТ | Выводит указанный атрибут времени (atime, access, use, ctime, status), а не время последнего изменения |
—time-style=СТИЛЬ | Выводит время в указанном в СТИЛЬ формате: full-iso, long-iso, iso |
-X, —exclude-from=ФАЙЛ | Исключает все эдементы, которые совпадают с шаблоном из ФАЙЛа |
—exclude=ШАБЛОН | Исключает элементы, совпадающие с шаблоном |
-x, —one-file-system | Пропускать каталоги из других систем |
Используемые командой du единицы измерения размера (или объёма) задаются в формате «цифраБуква», где цифра — это коэффициент, а Буква — степень единицы измерения, например: 5K = 5 * 1024 = 5120 = 5 килобайт и по аналогии для M – мегабайт, G – гигабайт.
Примеры использования команды du
Узнать общий размер каталога (например с резервными копиями):
Вывод размеров всех подкаталогов (рекурсивно):
С учётом файлов:
С фильтрацией в зависимости от размера файла/каталога:
Как видно, были отброшены файлы/каталоги размером меньше 2 мегабайт. Следующая команда, напротив — исключит из вывода только файлы/каталоги больше 2 мегабайт:
Команда ncdu
Более удобный способ найти что занимает место на диске можно с помощью команды ncdu. Утилита ncdu (Ncurses Disk Usage) способна делать всё то же самое, что и утилита du и даже немного больше. К тому же, она предоставляет пользователю удобный в использовании псевдографический интерфейс, с помощью которого можно быстро перемещаться по дереву системы, оценивая размеры интересующих элементов и папок.
Фактически, ncdu может выполнять функции полноценного браузера системы, при этом имеет большое количество опций, позволяющих настраивать псевдоинтерфейс для разных режимов работы, экспортировать и импортировать результаты работы в файлы, выполнять сортировки, экономить сетевой трафик, если это нужно, когда анализируется удалённая (например по SSH) система.
По-умолчанию, выполнение команды ncdu без параметров, выводит файловый браузер, в котором после предварительного сканирования (с показом прогресса выполнения) отображается список элементов и подкаталогов текущего каталога. По этому списку можно перемещаться, используя клавиши курсора, спускаться в подкаталоги ( ) выходить из них, при этом информация о размере представленных элементах и папок отображается «как на ладони». В строке состояния отображается общий используемый объём (Total disk usage), фактический объём (Apparent size), а также количество файлов и папок для текущего анализируемого каталога.
Основные опции команды ncdu:
Опция | Назначение |
-o ФАЙЛ | Позволяет экспортировать результаты работы в указанный файл |
-f ФАЙЛ | Загружает из файла для отображения данные ранее экспортированные с помощью опции -o |
-0 | Не никаких информационных сообщений при сканировании файловой системы |
-1 | Подобна опции -0, но выдаёт единственную строку о статусе выполненного действия. По-умолчанию используется при экспорте в файл |
-q | Тихий режим. Во время сканирования директории экран с результатами сканирования будет обновляться каждые 2 секунды, вместо 10 раз за секунду. Обычно используется при работе с удаленными системами |
-r | Включает режим «только для чтения» для отключения встроенной функции удаления. Не работает с опцией -o |
-x | Не выходить за рамки текущей используемой файловой системы |
—exclude ШАБЛОН | Исключает из подсчёта значения размеров файлов, имена которых удовлетворяют шаблону, но эти файлы будут отображаться в списке |
-X ФАЙЛ, —exclude-from-file | Исключает из подсчёта значения размеров файлов, имена которых удовлетворяют шаблону из файла, но они также будут отображаться в списке |
Интерфейс ncdu действительно очень дружественный — размеры всегда отображаются в «человекопонятных» единицах.
Для работы с псевдоинтерфейсом ncdu предусмотрен целый набор «горячих клавиш», позволяющих удалять выбранные файлы и каталоги, включать режим представления используемого пространства в процентах, отображать информацию о выбранных элементах, а также выполнять другие полезные функции. Об этом более подробно можно прочитать в соответствующих man-страницах в разделе «KEYS», используя команду man ncdu.
Примеры команд ncdu
Сделаем поиск занимаемого пространства с помощью ncdu
ncdu /
Снова видим большой каталог /var, и уже с помощью клавишь и ENTER мы можем передвигаться по каталогам. Видим каталог log
А здесь мы видим наши большие логи
Еще несколько полезных примеров.
Сканирование объёмных каталогов с экспортом/архивированием в лог для последующего использования или просмотра:
Сканирование текущей директории, экспорт результатов в лог, и последующий просмотр этих результатов в браузере ncdu:
Работа с удалённой системой:
В данной команде опция -C используется для утилиты ssh для сжатия сетевого трафика при некачественном или медленном соединении.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
Как посмотреть диски в Linux
Системные администраторы ОС Linux обычно просматривают диски, чтобы проверить все дисковое пространство и его использование. Список дисков также помогает увидеть подключенные диски к системе, разделы и файловую систему, используемую дисками.
В системе Linux существует несколько способов посмотреть все жесткие диски. Из этой статьи вы узнаете, как посмотреть диски в Linux с помощью командной строки.
1. lsblk
lsblk (list block devices) используется для просмотра информации обо всех доступных блочных устройствах, таких как жесткий диск и флэш-накопители.
Просто набрав команду lsblk, вы получите список всех блочных устройств в виде древовидного формата. Это удобный и простой способ посмотреть диски.
sda 8:0 0 238.5G 0 disk
├─sda1 8:1 0 529M 0 part
├─sda2 8:2 0 100M 0 part /boot/efi
├─sda3 8:3 0 16M 0 part
├─sda4 8:4 0 165.8G 0 part
├─sda5 8:5 0 70G 0 part /
└─sda6 8:6 0 2G 0 part [SWAP]
zram0 252:0 0 8G 0 disk [SWAP]
2. df -h
Команда df используется для просмотра объема доступного дискового пространства. Так же команда df отобразит имя устройства, общее количество блоков, используемое дисковое пространство, доступное дисковое пространство, процент используемого пространства, точку монтирования файловой системы, а также покажет удаленно смонтированные файловые системы, такие как NFS.
Команда df -h покажет доступное пространство всех дисков в удобочитаемом виде.
Ответ в терминале:
Filesystem Size Used Avail Use% Mounted on
devtmpfs 5.8G 0 5.8G 0% /dev
tmpfs 5.8G 90M 5.7G 2% /dev/shm
tmpfs 2.4G 11M 2.4G 1% /run
tmpfs 4.0M 0 4.0M 0% /sys/fs/cgroup
/dev/sda5 69G 62G 3.1G 96% /
tmpfs 5.8G 4.7M 5.8G 1% /tmp
/dev/sda2 96M 41M 56M 43% /boot/efi
tmpfs 1.2G 200K 1.2G 1% /run/user/1000
3. fdisk -l
Команда fdisk — это текстовая утилита, используемая для управления разделами диска. С помощью fdisk вы можете отобразить разделы диска, создать новый раздел, удалить существующий раздел жесткого диска и просмотреть размер раздела.
Для этого используется команда fdisk -l отобразит все доступные разделы диска
Ответ в терминале:
Disk /dev/sda: 238.47 GiB, 256060514304 bytes, 500118192 sectors
Disk model: SK hynix SC300B
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: FF57C955-D98A-49C4-B1ED-835A44F2A0A4
Device Start End Sectors Size Type
/dev/sda1 2048 1085439 1083392 529M Windows recovery environment
/dev/sda2 1085440 1290239 204800 100M EFI System
/dev/sda3 1290240 1323007 32768 16M Microsoft reserved
/dev/sda4 1323008 349122559 347799552 165.8G Microsoft basic data
/dev/sda5 349122560 495923199 146800640 70G Linux filesystem
/dev/sda6 495923200 500117503 4194304 2G Linux swap
Disk /dev/zram0: 8 GiB, 8589934592 bytes, 2097152 sectors
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk /dev/loop0: 207.15 MiB, 217214976 bytes, 424248 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/loop1: 99.18 MiB, 103993344 bytes, 203112 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
4. parted -l
Parted — это полезный и мощный инструмент используемый для управления разделами жесткого диска из терминала (командной строки). Обладает способностями такими как список, создание, сжатие, удаление, поиск и восстановление разделов диска. С помощью команды parted вы можете легко управлять всеми разделами жесткого диска.
команда parted-l покажет расположение разделов дисков.
Ответ в терминале:
Model: ATA SK hynix SC300B (scsi)
Disk /dev/sda: 256GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 556MB 555MB ntfs Basic data partition hidden, diag
2 556MB 661MB 105MB fat32 EFI System Partition boot, esp
3 661MB 677MB 16.8MB Microsoft reserved partition msftres
4 677MB 179GB 178GB ntfs Basic data partition msftdata
5 179GB 254GB 75.2GB ext4
6 254GB 256GB 2147MB linux-swap(v1) swap
Model: Unknown (unknown)
Disk /dev/zram0: 8590MB
Sector size (logical/physical): 4096B/4096B
Partition Table: loop
Disk Flags:
Number Start End Size File system Flags
1 0.00B 8590MB 8590MB linux-swap(v1)
5. cfdisk
Cfdisk немного отличается от вышеприведенных команд, эта команда обеспечивает графическое представление в терминальном интерфейсе. С помощью cfdisk вы можете просматривать, создавать, удалять и изменять разделы.
Disk: /dev/sda Size: 238.47 GiB, 256060514304 bytes, 500118192 sectors Label: gpt, identifier: FF57C955-D98A-49C4-B1ED-835A44F2A0A4 Device Start End Sectors Size Type
/dev/sda1 2048 1085439 1083392 529M Windows recovery environment
/dev/sda2 1085440 1290239 204800 100M EFI System
/dev/sda3 1290240 1323007 32768 16M Microsoft reserved
/dev/sda4 1323008 349122559 347799552 165.8G Microsoft basic data
/dev/sda5 349122560 495923199 146800640 70G Linux filesystem
/dev/sda6 495923200 500117503 4194304 2G Linux swap
┌──────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Partition name: Basic data partition │
│ Partition UUID: E73F9719-F144-42A8-87BC-862FB470828B │
│ Partition type: Windows recovery environment (DE94BBA4-06D1-4D40-A16A-BFD50179D6AC) │
│ Attributes: RequiredPartition │
│ Filesystem UUID: 8C0A62C30A62A9C2 │
│Filesystem LABEL: Recovery │
│ Filesystem: ntfs │
└──────────────────────────────────────────────────────────────────────────────────────────────────────────┘
[ Delete ] [ Resize ] [ Quit ] [ Type ] [ Help ] [ Write ] [ Dump ]
Команда для просмотра дисков в Linux cfdisk
6. sfdisk -l
sfdisk — это редактор таблиц разделов. Он может показать разделы, показать размер раздела, проверить разделы на устройстве и подготовить устройство.
Команда sfdisk -l покажет разделы каждого диска.
Ответ в терминале:
Disk /dev/sda: 238.47 GiB, 256060514304 bytes, 500118192 sectors
Disk model: SK hynix SC300B
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: FF57C955-D98A-49C4-B1ED-835A44F2A0A4
Device Start End Sectors Size Type
/dev/sda1 2048 1085439 1083392 529M Windows recovery environment
/dev/sda2 1085440 1290239 204800 100M EFI System
/dev/sda3 1290240 1323007 32768 16M Microsoft reserved
/dev/sda4 1323008 349122559 347799552 165.8G Microsoft basic data
/dev/sda5 349122560 495923199 146800640 70G Linux filesystem
/dev/sda6 495923200 500117503 4194304 2G Linux swap
Disk /dev/zram0: 8 GiB, 8589934592 bytes, 2097152 sectors
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/loop0: 207.15 MiB, 217214976 bytes, 424248 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/loop1: 99.18 MiB, 103993344 bytes, 203112 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
7. ls -l /dev/disk/by-id
команда ls — это очень простая, но мощная команда, используемая для отображения файлов и каталогов. Мы можем посмотреть диски, посмотреть каталог /dev/disk/by-id.
$ ls -l /dev/disk/by-id
Ответ в терминале:
total 0
lrwxrwxrwx 1 root root 9 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9 -> ../../sda
lrwxrwxrwx 1 root root 10 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9-part3 -> ../../sda3
lrwxrwxrwx 1 root root 10 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9-part4 -> ../../sda4
lrwxrwxrwx 1 root root 10 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 Jun 20 23:26 ata-SK_hynix_SC300B_HFS256G39MND-3510B_FI68N023911308NC9-part6 -> ../../sda6
lrwxrwxrwx 1 root root 9 Jun 20 23:26 wwn-0x5ace42e0900dd482 -> ../../sda
lrwxrwxrwx 1 root root 10 Jun 20 23:26 wwn-0x5ace42e0900dd482-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Jun 20 23:26 wwn-0x5ace42e0900dd482-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 Jun 20 23:26 wwn-0x5ace42e0900dd482-part3 -> ../../sda3
lrwxrwxrwx 1 root root 10 Jun 20 23:26 wwn-0x5ace42e0900dd482-part4 -> ../../sda4
lrwxrwxrwx 1 root root 10 Jun 20 23:26 wwn-0x5ace42e0900dd482-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 Jun 20 23:26 wwn-0x5ace42e0900dd482-part6 -> ../../sda6
Вы также можете посмотреть:
8. lshw -class disk
lshw — это инструмент Linux, который используется для получения подробной информации об аппаратной конфигурации системы.
Используйте -class disk для просмотра информации о диске.
Ответ в терминале:
*-disk
description: ATA Disk
product: SK hynix SC300B
physical id: 0.0.0
bus info: scsi@1:0.0.0
logical name: /dev/sda
version: 0P00
serial: FI68N023911308NC9
size: 238GiB (256GB)
capabilities: gpt-1.00 partitioned partitioned:gpt
configuration: ansiversion=5 guid=ff57c955-d98a-49c4-b1ed-835a44f2a0a4 logicalsectorsize=512 sectorsize=4096
Кроме того, можно вывести class disk as-json или -html или-xml.
Ответ в терминале:
<
«id» : «disk»,
«class» : «disk»,
«claimed» : true,
«handle» : «GUID:ff57c955-d98a-49c4-b1ed-835a44f2a0a4»,
«description» : «ATA Disk»,
«product» : «SK hynix SC300B»,
«physid» : «0.0.0»,
«businfo» : «scsi@1:0.0.0»,
«logicalname» : «/dev/sda»,
«dev» : «8:0»,
«version» : «0P00»,
«serial» : «FI68N023911308NC9»,
«units» : «bytes»,
«size» : 256060514304,
«configuration» : <
«ansiversion» : «5»,
«guid» : «ff57c955-d98a-49c4-b1ed-835a44f2a0a4»,
«logicalsectorsize» : «512»,
«sectorsize» : «4096»
>,
«capabilities» : <
«gpt-1.00» : «GUID Partition Table version 1.00»,
«partitioned» : «Partitioned disk»,
«partitioned:gpt» : «GUID partition table»
>,
«children» : [
]
>
Заключение
Для всех команд, кроме lsblk и ls-l dev/disk, требуется root — доступ или разрешения суперпользователя для его запуска.
В этой статье мы узнали, как посмотреть диски в Linux с помощью командной строки.
Источник