btrfs: недостаточно свободного места на диске, но устройство используется не полностью

Я использую btrfs для моего домашнего каталога, который охватывает несколько устройств. В общей сложности у меня должно быть около 7,3 ТБ пространства - и это показывает df, но я исчерпал пространство после использования только 5,7 ТБ данных:

# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdd3       7.3T  5.7T   63G  99% /home

btrfs может сказать это для себя:

# btrfs fi df /home
Data, RAID0: total=5.59TB, used=5.59TB
System, RAID1: total=8.00MB, used=328.00KB
System: total=4.00MB, used=0.00
Metadata, RAID1: total=11.50GB, used=8.22GB

Что странно, потому что должно быть достаточно разделов для поддержки 7,3 ТБ (кроме того, конфигурация данных btrfs должна быть «одиночной», а не RAID0).

Вот что говорит btrfs show:

# btrfs fi show
Label: none  uuid: 2dd4a2b6-c672-49b1-856b-3abdc12d56a5
    Total devices 9 FS bytes used 5.59TB
    devid    2 size 303.22GB used 303.22GB path /dev/sdb1
    devid    3 size 303.22GB used 303.22GB path /dev/sdb2
    devid    4 size 325.07GB used 324.50GB path /dev/sdb3
    devid    1 size 2.73TB used 1.11TB path /dev/sdc1
    devid    5 size 603.62GB used 589.05GB path /dev/sdd1
    devid    6 size 632.22GB used 617.65GB path /dev/sdd2
    devid    7 size 627.18GB used 612.61GB path /dev/sdd3
    devid    8 size 931.51GB used 931.51GB path /dev/sde1
    devid    9 size 931.51GB used 931.51GB path /dev/sde2

Как видите, в devid 1 (последний добавленный диск) используется только 1.11 ТБ из 2.73 ТБ, доступных в разделе ( это, предположительно, 3 ТБ накопителя, но можно использовать только 2,7 ТБ: - [).

Я искал повсюду, но не мог понять, как заставить btrfs использовать больше раздела. Что мне не хватает?

Примечания:

  1. Я использую Ubuntu 12.04.2 с текущим ядром 3.2.0-23.
  2. Это после того, как я побежал btrfs fi resize max /home и btrfs fi balance /home
3
задан 12 May 2014 в 12:57

1 ответ

Вы используете данные raid0, что означает чередование без четности. Как только вы заполняете ЛЮБОЙ диск в массиве raid0, массив заполняется, потому что на этом диске больше нет места для записи его фрагмента полосы.

Это ~ 3 ТБ устройство слишком много больше, чем другие устройства, которые вы должны использовать в btrfs-raid0 на практике. Чтобы заставить систему использовать весь диск, вам потребуется разделить его, а затем добавить оба раздела как отдельные диски. Между прочим, НЕ ДЕЛАЙТЕ ЭТОГО, поскольку это приведет к странным и ужасным последствиям для производительности, что, как я полагаю, весьма критично для вас, если вы используете raid0 ...?

довольно древнее ядро ​​для запуска btrfs IMO. Btrfs все еще находится в разработке HEAVY, и вы действительно должны отслеживать гораздо более новые ядра, если собираетесь запускать btrfs.

Использование Btrfs с несколькими устройствами - создание файловой системы: Если у вас есть диски с разными размерами и вы хотите использовать полную емкость каждого диска, вы должны использовать один профиль для блоков данных , а не raid0:

# Use full capacity of multiple drives with different sizes (metadata mirrored, data not mirrored and not striped)  
mkfs.btrfs -d single /dev/sdb /dev/sdc
0
ответ дан 12 May 2014 в 12:57

Другие вопросы по тегам:

Похожие вопросы: