файловая система ext2 или ext3 с максимально доступным пространством

1788
vbence

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

Я хочу использовать ext2 или ext3 для общего раздела между Win7 и Ubuntu (с ext2fsd ).

Моя проблема в том, что я создал 850-гигабайтный раздел ext2 и GParted говорит:

Size: 853.15 GiB Used: 13.46 GiB 

Это НЕ 5% места, зарезервированного для пользователя root (это будет более 40 гигабайт). И конечно я попробовал tune2fs -m 0 /dev/sda4. Это нормально, что 13 гигабайт теряется только для файловой системы?

Вся помощь приветствуется.

Некоторые детали, если вам это нужно:

# partition table of /dev/sda unit: sectors  /dev/sda1 : start= 2048, size= 389120, Id=83, bootable /dev/sda2 : start= 393214, size= 82028546, Id= 5 /dev/sda3 : start= 82429515, size= 81915435, Id= 7 /dev/sda4 : start=164345856, size=1789177856, Id=83 /dev/sda5 : start= 393216, size= 78123008, Id=83 /dev/sda6 : start= 78518272, size= 3903488, Id=82 

df говорит:

Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda5 38445384 5101796 31390516 14% / none 2021640 660 2020980 1% /dev none 2029348 1512 2027836 1% /dev/shm none 2029348 348 2029000 1% /var/run none 2029348 0 2029348 0% /var/lock /dev/sda1 182331 22620 149983 14% /boot /dev/sda4 880550492 73744 880476748 1% /media/334cb5f6-2f18-4193-b2c8-99bd42cd6f01 

tune2fs -l /dev/sda4 говорит:

tune2fs 1.41.14 (22-Dec-2010) Filesystem volume name:  Last mounted on:  Filesystem UUID: 334cb5f6-2f18-4193-b2c8-99bd42cd6f01 Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: ext_attr resize_inode dir_index filetype sparse_super large_file Filesystem flags: signed_directory_hash  Default mount options: (none) Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 55918592 Block count: 223647232 Reserved block count: 0 Free blocks: 220119187 Free inodes: 55918581 First block: 0 Block size: 4096 Fragment size: 4096 Reserved GDT blocks: 970 Blocks per group: 32768 Fragments per group: 32768 Inodes per group: 8192 Inode blocks per group: 512 Filesystem created: Sat May 21 10:35:15 2011 Last mount time: n/a Last write time: Sat May 21 11:21:55 2011 Mount count: 8 Maximum mount count: 20 Last checked: Sat May 21 10:35:15 2011 Check interval: 15552000 (6 months) Next check after: Thu Nov 17 09:35:15 2011 Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 256 Required extra isize: 28 Desired extra isize: 28 Default directory hash: half_md4 Directory Hash Seed: 7ba9b270-1cc8-4622-b25c-768497678f99 

cat /etc/mke2fs.conf говорит:

[defaults] base_features = sparse_super,filetype,resize_inode,dir_index,ext_attr blocksize = 4096 inode_size = 256 inode_ratio = 16384  [fs_types] ext3 = { features = has_journal } ext4 = { features = has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize inode_size = 256 } ext4dev = { features = has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize inode_size = 256 options = test_fs=1 } small = { blocksize = 1024 inode_size = 128 inode_ratio = 4096 } floppy = { blocksize = 1024 inode_size = 128 inode_ratio = 8192 } news = { inode_ratio = 4096 } largefile = { inode_ratio = 1048576 blocksize = -1 } largefile4 = { inode_ratio = 4194304 blocksize = -1 } hurd = { blocksize = 4096 inode_size = 128 } 
2

1 ответ на вопрос

2
vbence

После прочтения и последующего прочтения я пришел к выводу, что иноды занимают это огромное количество места.

Вы можете подтвердить это с помощью вывода tune2fs, умножив следующие значения:

Inode count: 55918592 Inode size: 256 

... и это действительно даст вам недостающие 13 концертов (14 315 159 552).

В файле make2fs.conf вы можете увидеть следующее значение по умолчанию: inode_ratio = 16384. Умножение этого числа на количество inode дает полный размер раздела (916 170 211 328), так что это именно то, что кажется. Количество инодов рассчитывается по partition size / inode_ratio.

Поскольку я читаю сжатие, размер inode не рекомендуется, но inode_ratioсам по себе даст вам большое пространство для перемещения. largefileЗапрограммированный создает индексный дескриптор на каждые 1 МБайты.

Я не зашел так далеко (на этом разделе не будут храниться небольшие файлы операционной системы, но будут загружаться и иногда исходный код), поэтому я получил модерируемое 128000 . Он не должен быть степенью 2, иноды не являются зеркалом данных HD 1-1 (как FAT16), они используются более динамично.

Это (в сочетании с, -m 0конечно) только заняло 2 концерта из моего большого раздела. С чем я могу жить.

mkfs.ext3 -i 128000 -m 0 /dev/sda4 

Это дало мне 9 миллионов инодов (что ограничивает максимальное количество файлов и каталогов, которые можно хранить на HD). Но, как я сказал ранее, ни одна ОС не будет установлена ​​на нем, и, учитывая, что исходный код ядра Linux содержит около 25 000 файлов, переход от более ранних 55-миллиметровых и 9-миллиметровых inode кажется хорошим компромиссом.

Отказ от ответственности:

Вы должны быть осторожны при настройке inode_ratio, так как ваша файловая система будет нести это навсегда. Вы не можете добавить inode в (ext2 или ext3) раздел без переформатирования.

Кроме того, не возможно просто сжать раздел и создать новую на свободном пространстве, если вы бежите из инодов, потому что сужая partion бы proportinally уменьшить дескрипторы, так что вы не можете сделать это только несколько инодов бесплатно.

Да, вы нашли это правильно. Обычный формат этого раздела позволяет создавать ** 55 миллионов ** файлов и каталогов, и для этого потребуется 13 гигабайт сырой емкости разделов. 13 концертов кажется много, но это всего 1,5% от общего количества. 1,5% при всей этой универсальности, это хороший компромисс? Вы можете уменьшить коэффициент инода, это ваше хранилище. Просто убедитесь, что ** средний ** размер файла в байтах будет ** выше **, чем номер соотношения инодов, см. Http://serverfault.com/a/523210 для получения подробной информации. Stéphane Gourichon 7 лет назад 0