
Если я запущу sudo df -h
команду, то получу следующий вывод:
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 12G 9.5G 1.1G 91% /
/dev/sda4 3.8G 1.5G 2.1G 41% /home
/dev/sda1 99M 75M 20M 80% /boot
tmpfs 3.9G 0 3.9G 0% /dev/shm
/dev/sdc1 51G 2.6G 46G 6% /u000
Но как я узнаю список каталогов в /sda2
? Например, если я запущу ls /
команду, я получу все каталоги в корне.
$ ls /
bin cdunix dev etc lib lost+found misc mnt1 mtp net PatchInstall root selinux sys tmp usr
boot cron_4058 esm home lib64 media mnt mnt2 NB_DIR opt proc sbin srv tftpboot u000 var
- Но есть ли какая-нибудь команда или способ, с помощью которых я могу также получить список их файловой системы?
- Так как на осталось очень мало места
/dev/sda2/
. Как мне освободить больше места из этого раздела?
решение1
Если вы ищете каталоги, которые занимают место и не находятся на другом разделе, то вам нужно du -hx --max-depth=1 /
. Он -x
сообщает ему не переходить в каталоги, которые находятся на других файловых системах (разделах). Он --max-depth=1
просит вывести только строку (с указанием общего пространства для этого каталога и всех подкаталогов) для каждого каталога, /
а не для каждого отдельного подкаталога.
Затем вы можете начать углубляться в более крупные подкаталоги, чтобы выяснить, что занимает место.
решение2
Если я правильно понял этот вопрос, есть программа под названием tree
. Она выведет список всех каталогов в виде древовидной структуры. Установив ее, вы можете сделать что-то вроде:
tree -x
Где -x
Остаться только в текущей файловой системе. Ala find -xdev.
ОБНОВЛЕНИЕ: Я попробовал, tree -P /dev/xvda
и, похоже, он показал каталоги в этой файловой системе. -P
Команда означает шаблон. Поэтому, отвечая на ваш вопрос, вы должны иметь возможность использовать его для вывода списка каталогов в файловых системах.
Чтобы вывести список первых уровней в /
каталоге, попробуйте команду:
tree -LP 1 /dev/xvda
где L
— уровень Максимальная глубина отображения дерева каталогов.
Обратитесь к страницам руководства.здесь
решение3
Но как узнать список каталогов в /sda2?
В /dev/sda2 нет каталогов, /dev/sda2 — это раздел на диске (sda — это диск, а 2 — номер раздела).
Но есть ли какая-нибудь команда или способ, с помощью которых я могу также получить список их файловой системы?
Поскольку у вас смонтирована только одна файловая система, то все они находятся в /fs.
Лучший способ увидеть список смонтированных файловых систем — использовать mount:
$ sudo mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,relatime,size=10240k,nr_inodes=2018106,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,relatime,size=3232436k,mode=755)
/dev/sda5 on / type ext4 (rw,noatime,errors=remount-ro,data=ordered)
Чтобы узнать объем хранилища, используемый папкой, можно использовать команду du
, например:
~/tmp$ du -sh
752K .
du
имеет много вариантов использования полных. Действительно хороший вариант при отслеживании больших папок, --max-depth=1
который ограничит глубину вывода:
du -h --max-depth=1 /
7,9M /sbin
702M /lib
Если вы запустите это в / без прав root, вы получите множество сообщений об ошибках.
du
может помочь вам выяснить, какие файлы удалить, чтобы освободить место. Если вы не можете удалить ни одного файла, вам нужно либо изменить размер раздела, либо переместить некоторые данные в другой раздел.