В сценарии bash мне нужно получить общий размер диска и используемый в данный момент размер всего диска.Получить свободное место на жестком диске в linux
Я знаю, что я могу получить общий размер диска без необходимости быть корень с этой командой:
cat /sys/block/sda/size
Эта команда будет выводить количество блоков на устройстве SDA. Умножьте его на 512, и вы получите количество байтов на этом устройстве. Этого достаточно для общего размера диска.
Теперь для используемого пространства. Я хочу получить это значение без root. Я могу предположить, что имя устройства - SDA. Теперь есть эта команда: df
Я думал, что смогу использовать эту команду, но кажется, что эта команда выводит только данные из смонтированных в данный момент разделов.
Есть ли способ получить в общей сложности пространство, используемое на диске SDA, не нуждаясь в корне, и не все разделы должны быть установлены?
Давайте предположим, что следующий пример:
/dev/sda1 80GB Linux partition 20GB Used
/dev/sda2 80GB Linux Home partition 20GB Used
/dev/sda3 100GB Windows Parition. 30GB Used
Давайте предположим, мой SDA диск разбит на разделы, как и выше. Но пока я на Linux, мой раздел Windows (sda3) не монтируется.
Выход df даст мне в общей сложности 40 ГБ. Используется так, чтобы он не учитывал sda3.
Снова вопрос: Есть ли способ без корня, чтобы получить в общей сложности 70 ГБ используемого пространства?
'FDISK -l' с Судом? – ritesht93
Как и мой вопрос, я знаю способы с помощью sudo. Однако эта программа не будет работать с правами sudo. По крайней мере, я стараюсь этого не делать. Мне действительно нужно решение без sudo – Baklap4
lsblk | tr -s '' | cut -d '' -f1,4 | column -t – Joda