# Получение информации обо всех разделах Linux

**URL:** <http://linux.ru/forum/t/linux/9305>\
**Category:** Программирование: C / C++\
**Created:** [29.Октябрь.2010 20:27:33 UTC](http://linux.ru/forum/t/linux/9305 "2010-10-29T20:27:33Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![iVarela](http://linux.ru/forum/letter_avatar_proxy/v4/letter/i/8edcca/32.png) [@iVarela](http://linux.ru/forum/u/iVarela)\
**Post date:** [29.Октябрь.2010 20:27:33 UTC](http://linux.ru/forum/t/linux/9305/1 "2010-10-29T20:27:33Z")

</div>

Здравствуйте.

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

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

Скачал исходники df - посмотрел… там черт ногу сломит…

Подскажите КАК получить список всех разделов диска, а так же всех примонтированных разделов и устройств с названием и объемом свободного/занятого места.

Вот пример работы команды “DF”

/dev/sda1 15507312 3852624 10854252 27% /

/dev/sda5 1945132 238564 1606164 13% /var

/dev/sda3 1945164 35852 1808908 2% /tmp

/dev/sda6 103206016 8503540 89375324 9% /dataa

tmpfs 4089140 0 4089140 0% /dev/shm

/dev/sdb1 49224712 2581700 44142500 6% /oracle

/dev/sdb2 147652216 26670360 113481512 20% /oracle/oradata

/dev/sdb3 49224744 1603980 45120248 4% /onyma

/dev/sdb4 1193171036 1118001784 14559624 99% /data

/dev/sdc1 1439276700 1301050396 65115296 96% /data1

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

Заранее благодарю.

---

<div class="post-metadata">

**Author:** ![AccessD](http://linux.ru/forum/letter_avatar_proxy/v4/letter/a/6de8d8/32.png) [@AccessD](http://linux.ru/forum/u/AccessD)\
**Post date:** [30.Октябрь.2010 10:02:02 UTC](http://linux.ru/forum/t/linux/9305/2 "2010-10-30T10:02:02Z")

</div>

df вам даёт всё, кроме типа, который можно выдернуть из mount.

если вам нужно вывод в определённом порядке сделать - awk

---

<div class="post-metadata">

**Author:** ![iVarela](http://linux.ru/forum/letter_avatar_proxy/v4/letter/i/8edcca/32.png) [@iVarela](http://linux.ru/forum/u/iVarela)\
**Post date:** [30.Октябрь.2010 12:15:00 UTC](http://linux.ru/forum/t/linux/9305/3 "2010-10-30T12:15:00Z")

</div>

Мне не нужен DF и не нужен BASH

Задача стоит в написании модуля на на C/C++

---

<div class="post-metadata">

**Author:** ![AccessD](http://linux.ru/forum/letter_avatar_proxy/v4/letter/a/6de8d8/32.png) [@AccessD](http://linux.ru/forum/u/AccessD)\
**Post date:** [30.Октябрь.2010 18:19:26 UTC](http://linux.ru/forum/t/linux/9305/4 "2010-10-30T18:19:26Z")

</div>

возьмите за отправную точку dumpe2fs
