NickNill 15.02.2011 10:20

Archlinuxbtrfs?? Better FileSystem!

Давно я ничего не постил, но вот решил себе поставить всю систему на btrfs.
Если кто не знает, у меня стоит Ubuntu ArchLinux. В последних archboot образах есть возможность устанавливать arch на btrfs. Лично мне archboot нравятся намного больше обычного установщика.

Да, о чем это я.
Вообщем сделал бэкап всех важных файлов на свой 2.5 sata2 винт 500 Гб (который еще в кармане таскаю, если надо). Еле влезли =) К слову, на нем поставил все-таки ext4, на всякий случай.
И вот, компьютер готов к тестам.

Хочу сказать, что сначала я использовал raid0 с помощью bios материнской платы, потом решил перевести все на software raid (на компьютере два жестких диска по 1Тб). Так вот software raid даже немного обгонял тот, что в материнке. Могу как нибуть показать скрины, если хотите =)

И поэтому я решил поставить btrfs - там имеется raid на уровне файловой системы, и стало интересно как он используется.
После изучения информации, выяснил что также в этой фс имеется сжатие. Думаю надо попробовать, и поэтому включил его.

Итак, уже прошло больше недели как я ее использую. Все работает стабильно, правда я не тестировал на выключение света - у меня UPS и компьютер выключается сам когда нужно. Но пару раз делал ребуты с кнопки, и все ок.
По поводу сжатия - меня оно действительно удивило. Мало того что по тестам оно быстрее(если верить alv'у), чем просто btrfs, так еще взгляните на это.
Theorical space used by packages: 5810M
Real space used by packages: 5369M
Space used by pkg downloaded in cache (cachedir): 716K
Space used by src downloaded in cache: null


 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<nniil>$ df -h
Файловая система Разм Исп Дост Исп% Точка монтирования
udev 10M 228K 9,8M 3% /dev
/dev/sda2 30G 3,4G 25G 13% /

</nniil><nniil>$ btrfs fi df /
Data, RAID0: total=6.00GB, used=3.15GB
Data: total=8.00MB, used=920.00KB
System, RAID0: total=16.00MB, used=4.00KB
System: total=4.00MB, used=0.00
Metadata, RAID0: total=2.00GB, used=248.54MB
Metadata: total=8.00MB, used=4.00KB

<root># btrfs fi show /dev/sda2
failed to read /dev/sr1
failed to read /dev/sr0
Label: 'rootfs' uuid: 1400e5ef-3848-470d-aa31-7deccec13df4
Total devices 2 FS bytes used 3.39GB
devid 1 size 14.65GB used 4.03GB path /dev/sda2
devid 2 size 14.65GB used 4.01GB path /dev/sdb2

Btrfs Btrfs v0.19
</root></nniil>


Я конечно не совсем понимаю последние два вывода, но судя по всему реально на диске выделено 8Гб, из них используется 6Гб под данные, из них 3,15 занято. 2 Гб выделено под метаданные, из них 248,54 Мб занято. Вместе получается 3,4 гб занято, а остальное пока свободно. Но главное что сжатие системного раздела достигает ~0,62, а это немало. Конечно, на другом разделе с данными, такими как музыка и видео, числа совсем другие. Нужно еще подожать, пока появится опция compression-force.

Пока что все, прошу в коментариях напишите советы по оценке (и может по увеличению) быстродействия. Могу добавить что
1
2
3
4
dd if=/dev/zero of=/file bs=1024k count=2000
2000+0 записей считано
2000+0 записей написано
скопировано 2097152000 байт (2,1 GB), 10,3034 c, 204 MB/c


Но я не считаю данный тест обьективным.
Сейчас еще надо поэкспрементировать со снапшотами, очень вкусная вещь, особенно для chroot.
UPDATE: потестировал snapshot немного. Мне кажется он работает чуть не так, как предполагалось. Поменял права всех исполняемых файлов и папок на 0111, после чего некоторые файлы поменялись на /. Хотя по-идее не должны. Может я в чем неправ?

UPDATE2: у меня /home сделан с опциями -d raid0 -m raid1 - думаю так если что, может даже некоторые файлы останутся. Как думаете?


Тэги: ArchLinux btrfs
+ 8 -
Похожие Поделиться

segoon 15.02.2011 11:02 #
Попробуйте потестируйте его в условиях нехватки места, сейчас у него это самое уязвимое место - IIRC до сих пор паникует.
NickNill 15.02.2011 11:06 #
ну у меня 2 тб места, из них 1,5 свободно. Трудно будет потестировать =) можно забить нулями или случайными числами /file до упора, ща проверю
segoon 15.02.2011 11:13 #
~/linux/fs/btrfs$ grep BUG * | wc
872 2330 29804
Некоторая часть из них это как раз OOM на диске :-)
NickNill 15.02.2011 12:01 #
Ну заполнил корень. Data заполнилась на 26 из 26. Осталось свободное место только в metadata, 1,7 Гб. Я так понял надо насоздавать кучу пустых файлов чтобы там занять место. Ну с переполненым Data пока никакие баги не вылезли (dmesg пуст, ядро не паникует)
demon1981 15.02.2011 12:38 #
в yum на fedora есть плагин fssnapshot. при пользовании btrfs позволяет при действиях с пакетами (обновление, удаление, установка...) делать автоматические снапшоты fs вот тут надо быть аккуратным с местом. Сам плагин старые снапшоты не очищает. Только клепает их. Когда на корне менее 3х процентов - падает производительность резко.
PaulRed 15.02.2011 12:46 #
У меня на дебиане у же 2 недели, все ок, оставил только /boot и swap. Проада пришлось прикрутить fsck - http://welinux.ru/post/5090/
PaulRed 15.02.2011 13:04 #
root@debian:/home/paul# df -h /dev/sda3
Файлова система Size Used Avail Use% змонтований на
/dev/sda3 60G 26G 33G 44% /home
root@debian:/home/paul# btrfs fi show /dev/sda3
failed to read /dev/sr0
Label: none uuid: 6e424972-96ab-4d5f-86b1-c091f6618aa2
Total devices 1 FS bytes used 25.30GB
devid 1 size 59.97GB used 43.29GB path /dev/sda3

Btrfs Btrfs v0.19
root@debian:/home/paul# df -h /dev/sda3
Файлова система Size Used Avail Use% змонтований на
/dev/sda3 60G 26G 33G 44% /home


root@debian:/home/paul# df -h /dev/sda4
Файлова система Size Used Avail Use% змонтований на
/dev/sda4 14G 2,0G 9,2G 18% /

btrfs fi show /dev/sda4
failed to read /dev/sr0
Label: none uuid: 829e36b9-7f76-4514-92ac-5a3975083a75
Total devices 1 FS bytes used 1.85GB
devid 1 size 13.40GB used 11.54GB path /dev/sda4

Btrfs Btrfs v0.19


wiz 15.02.2011 14:51 #
$ dd if=/dev/zero of=file bs=1024k count=2000
2000+0 records in
2000+0 records out
2097152000 bytes (2.1 GB) copied, 8.2397 s, 255 MB/s

рэйд? какой рэйд? (=

бтрфс, SSD. из опций только noatime.
NickNill 15.02.2011 16:14 #
имхо, рейд дольше проживет чем ssd)
wiz 15.02.2011 16:15 #
live fast, die young!
NickNill 15.02.2011 16:19 #
LiFDY =) мне данные жалко. Если пропадет 2тб информации. Конечно все основное на внешнем винте, но все-же. ССД пока не рискую брать)
wiz 15.02.2011 16:19 #
2тб вареза поди? (;
NickNill 15.02.2011 16:25 #
книжечки, сериальчики и т.п =) а еще зеркало арча, надо будет скачать дебиана и генты =)
vasilisc 15.02.2011 15:54 #
Я тоже агитирую за BTRFS, правда вначале при переводе заполненых HDD из ext4 в btrfs огрёб проблему с большим размером метаданных, но все исправил btrfs fi balance /mnt/data1tb
а с покупкой SSD выбор был предопределён - btrfs из-за параметра -o ssd
Установил Убунту на SSD и благодаря UPS потюнил btrfs и систему в целом, всё летает и всем рекомендую.
Кста при переходе на btrfs исчезла проблема с jbd процессом, который дергал постоянно диск в ext4
Dark_SS 15.02.2011 16:35 #
У вас там написано про kdeinit для ускорения Qt. Вопрос: если я пользуюсь KDE, мне же это не поможет - библиотеки и так в память загружаются при входе в систему?
vasilisc 16.02.2011 08:43 #
Да вы правы, этот совет нужен пользователям Гнома, которые активно используют Qt|KDE программы. Если у вас КДЕ, то этот совет не нужно применять и он вреден.
Dark_SS 16.02.2011 10:23 #
Спасибо
stasikos 16.02.2011 01:48 #
Со сжатием быстрее может быть потому что диск оказывается медленнее чем процессор, который разжимает (потому что на самом деле читается/пишется меньше данных, что со случайным доступом может сильно влиять на обычных жестких дисках). :)
NickNill 16.02.2011 10:37 #
ну да, винты пока самое медленное звено в системе. Так что сжатие это хорошо =)
sanaris 12.05.2011 21:36 #
Использовать btrfs запрещается при TuxOnIce, даже при неиспользовании это убьет партицию с btrfs.
btrfsck ничего не поправит и придется выгребать с помощью рукописных btrfs_rescue которые еще придется подправлять "если что" изменится в процессе.
В целом, если знать чего делать нельзя, можно поиграть. Только есть на служебные данные 30% диска в среднем (исходники), хотя быстрее ext4.
hate 12.05.2011 22:40 #
тесты это всё конечно замечательно, но:
1. дисковый формат еще нестабилизирован = возможность потерять данные при обновлении ядра
2. у меня был случай полгода назад: я поставил meego на мобилу (а там как раз btrfs) в сд карточку. потом хотел скопировать файлики со встроенного флеша и всунул мобилку в убунту-лаптоп друга. раздел с btrfs с карточки тоже смонтировался автоматом и лаптоп улетел в кернелпаник. убунта 10.04 вроде была.

так что я бы не рекомендовал это юзать на критических данных ($HOME, архивы фоток, корень в сырцовых дистрах)