Вільний простір на диску в Unix / Linux OS


11

Як отримати доступний дисковий простір в ОС Unix / Linux, включаючи нерозподілений простір (який не був призначений жодним розділам)?


1
Інші відповіді, що розміщуються тут, є чудовими, тому я не додаватиму їх (хоч я і схвалюю їх!), Але зауважу, що майже будь-яка команда дивитись на сирий пристрій (це те, що вам потрібно зробити, щоб див. простір, який ще не доступний для користувачів системи), потрібні привілеї. Якщо у вас немає кореня, забудьте його.
MadHatter

1
І якщо у вас є проблема, яку ви намагаєтеся вирішити, то вам слід написати про цю проблему.
Майкл Хемптон

Моя проблема полягає в тому, що я не знаю, як отримати доступний простір на диску, ось і все.
krapstuke

Відповіді:


20

У Linux вільний простір може сховатися у безлічі місць:

  1. Вільний простір файлової системи (найочевидніший):

    df -h
    
  2. Нерозподілений простір:

    for dev in /dev/sd?; do parted "$dev" print; done
    

    або

    for dev in /dev/sd?; do fdisk -l "$dev"; done
    

    і уважно вивчіть, скільки місця знаходиться між перегородками та між перегородками та кінцем пристрою

  3. Вільний простір у системі LVM:

    vgs
    

    або

    pvs
    

    фізичний об'єм може використовувати менше місця, ніж розмір розділу, тому порівняйте його розмір з розміром розділу

  4. Простір, не призначений для розділу в системі MD:

    for dev in /dev/md*; do mdadm --detail "$dev"; done
    

    Вам потрібно буде порівняти "Використовуваний розмір Dev" з розміром розділу

  5. Файлові системи можуть бути меншими за обсяг, на якому вони працюють (спасибі @PaulGear!). Ви повинні порівняти розмір логічного обсягу LVM, пристрою MD RAID, розділу або якогось іншого пристрою, на якому розміщена файлова система, з розміром файлової системи (як повернуто df).

Якщо у вас є більше одного диска або групи томів LVM і відносно новий дистрибутив, ви можете використовувати lsblkдля показу дерева блокових пристроїв разом із точками кріплення.

ПРИМІТКА. Існує також різниця між маркетинговим ГБ (який становить 10 ^ 9В) та ОС або інженерним ГБ (що становить 2 ^ 30В, і слід записати GiB для розмежування між ними). 40 Гб - це приблизно 37,25 Гбіт. Всі перераховані вище інструменти, крім partedвикористання двійкових гігабайт в якості одиниць за замовчуванням. Додайте unit MiBдо printрозбитої команди перед тим, щоб отримати відповіді в Мебібайти (також корисно для вирівнювання розділів на SSD та 4KiB секторних дисках).


1
Зауважте також, що між щілинами може бути простір, наприклад, якщо у вас НН, що становить 40 Гб, та файлова система на ньому лише 30 Гб. Переконайтесь, що ви перехресно перевірте відповіді dfта lvs.
Пол Гір

3

Можливо, це здається, що прагнення до такого інструменту, як диспетчер розділів, або gparted.

http://kde-apps.org/content/show.php?content=89595

http://gparted.sourceforge.net/download.php

cfdisk також покаже нерозподілений простір на диску на основі диска:

cfdisk /dev/sda

Вкажіть відповідний пристрій - sda, sdb, sdc тощо.


2

Спробуйте:

df -h 

або

fdisk -l *

http://www.unix.com/red-hat/178290-get-unallocated-disk-space.html

Наведене вище посилання має ще якийсь опис того, що ви хочете

http://www.computerhope.com/unix/udf.htm Сподіваюся, що це допомагає


Так, але це не допомогло. df показує просто розділи, виділені простором. Машина має 5 дисків, загальний обсяг яких становить 48 Гб. З консолі я отримую приблизно ~ 30 Гб всього місця.
krapstuke

1

Ви можете бачити розділи з "df -h". Для решти ви можете скористатися " розірваним назвою диска ", а потім "надрукувати".

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.