1

В одной из моих систем корневой раздел заполнен:

snip:˜ # df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs           11G  9.3G     0 100% /
devtmpfs        744M   36K  744M   1% /dev
tmpfs           751M     0  751M   0% /dev/shm
tmpfs           751M  296K  751M   1% /run
/dev/sda7        11G  9.3G     0 100% /
tmpfs           751M     0  751M   0% /sys/fs/cgroup
tmpfs           751M  296K  751M   1% /var/lock
tmpfs           751M  296K  751M   1% /var/run
tmpfs           751M     0  751M   0% /media
/dev/sda5       151M   39M  104M  28% /boot
/dev/sda8       4.4G  207M  3.3G   6% /home

Но du не показывает около 9,3 гигабайта использования:

snip:~ # du /* -s -h
5.2M    /bin
34M /boot
36K /dev
22M /etc
199M    /home
154M    /lib
20M /lib64
0   /media
0   /mnt
0   /opt
0   /proc
7.9M    /root
288K    /run
7.1M    /sbin
0   /selinux
756K    /srv
0   /sys
0   /tmp
1.6G    /usr
1.1G    /var

Это всего около 3 гигабайт.

  • Как это может быть?
  • Где искать оставшиеся 6+ гигабайт использованных гигабайт?

Я использую openSUSE 12.2:

snip:~ # cat /etc/SuSE-release
openSUSE 12.2 (x86_64)
VERSION = 12.2
CODENAME = Mantis

1 ответ1

1

Сначала немного справочной информации

Если у вас есть btrfs в корневой файловой системе на http://www.opensuse.org/en/, то произойдут две вещи:

  1. openSUSE автоматически начнет использовать snapper для создания снимков вашей корневой файловой системы.
  2. снимки будут занимать дисковое пространство, которое дю не показывает

Это означает, что вам не хватит места на диске раньше, чем вы ожидаете. Таким образом, рекомендация (не в документации) - создавать разделы, использующие моментальные снимки, в два раза больше, чем обычно.

Я не нашел способ показать размер каждого снимка или общий размер всех снимков.

Таким образом, вы должны отслеживать свободное место на диске с помощью df или этой конкретной команды btrfs для корневой (/) файловой системы:

btrfs filesystem df /

Очистка снимков окуня

Благодаря NerdyRoom ™ »Радости btrfs и OpenSuSE - или« на устройстве не осталось места ». Я нашел самый простой способ удалить старые снимки, которые вы можете удалить (и вам придется делать, когда у вас заканчивается свободное место на диске).

Сначала запустите snapper list чтобы увидеть порядковый номер снимков, которые там есть.

Из этого списка выберите разумную нижнюю и верхнюю границу снимков для удаления.

Затем выполните это с нижней (1) и верхней (3656) границей:

for i in `seq 1 3656`; do snapper delete $i; done

Изменить 20161212:

Анонимный пользователь предложил изменить, чтобы сделать это короче. Я согласен, так как вышеперечисленное можно сделать короче в соответствии с man-страницей snapper:

snapper delete 1-3656

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .