IT News: Digital Camera, OS, Laptop, Smartphone, Smart TV, Sound...

The Author's Project by Valeri N.Kravchuk
Сайт проверен Dr.Web
Меню сайта
  • Главная страница
  • Информация о сайте
  • Дневник
  • Каталог файлов
  • Обратная связь
  • Каталог сайтов
  • FAQ
  • Доска объявлений
  • Форум
  • Фотоальбом
  • Категории раздела
    Измерительная техника, инструменты [278]
    Drones, boats, cars... [99]
    Накопители данных [186]
    Гаджеты для спорта и здоровья... [166]
    Автомобильные гаджеты... [159]
    Сети, сетевые технологии, оборудование... [211]
    Гаджеты, аксессуары... [604]
    News IT, Это интересно, ликбез... [1048]
    Linux и не только [4195]
    Windows 10... [271]
    Планшеты [738]
    Нетбуки, Ноутбуки, Ультрабуки [618]
    Смартфоны, фаблеты.. [4986]
    GPS-навигаторы, трекеры... [49]
    Видеорегистраторы [195]
    mini computers и не только... [365]
    Своими руками [322]
    CB, LPD, PMR- связь... [110]
    Smart TV, UltraHD, приставки, проекторы... [404]
    Радар-детекторы [22]
    DECT, IP-телефоны [18]
    Мультиварки, блендеры и не только... [122]
    Smart Watch [225]
    Блоки питания, Power Banks, зарядки... [340]
    Sound: наушники, плееры, усилители... [568]
    Безопасность IT [478]
    Электронные книги [75]
    Роботы-пылесосы [26]
    electric cars [28]
    Фотокамеры, объективы, искусство фотографии.. [433]
    Время

    Интересные ссылки

    COMPIZOMANIA

    Наш опрос
    Оцените мой сайт
    Всего ответов: 1243
    Статистика
    Анализ веб сайтов

    Яндекс.Метрика

    Рейтинг@Mail.ru Яндекс цитирования

    Russian America Top. Рейтинг ресурсов Русской Америки.

    eXTReMe Tracker

    Правильный CSS!


    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    Locations of visitors to this page
    Форма входа
    Главная » 2014 » Март » 1 » Gentoo: настройка и подключение через /dev/loop файловой системы с компрессией на примере Reiser4
    09:04
    Gentoo: настройка и подключение через /dev/loop файловой системы с компрессией на примере Reiser4

    Gentoo: настройка и подключение через /dev/loop файловой системы с компрессией на примере Reiser4

    Есть у меня несколько VPS'ок с Gentoo, бегущих под VMWare, для которых я, пожадничав, выделил всего по 7G дискового пространства. Как-то раз, после выхода очередной версии gcc, на одной из них закончилось место. Покопавшись, я обнаружил, что главными потребителями были директории /usr/src и /usr/portage. Тут же родилась мысль переместить их на файловую систему с компрессией (ага, на NTFS) и выбор пал на Reiser4, так как эти данные идеально подходят для неё — очень много файлов и они все маленькие.

    Про эту файловую систему в сети имеется множество противоречивой информации (2013), но, пожалуй, стоит почитать статью (2010) ведущего разработчика. Цитата из статьи:

    за последние четыре года я не помню, чтобы кто-то терял данные на reiser4 разделе при исправно работающем железе. Ко мне обращалось несколько человек с жалобой на работу fsck. В конечном итоге все они получали и свои данные и работающий fsck.

    Мал мала меньше Не надо её бояться…

    Хочу особо подчеркнуть, так как их часто путают между собой, Reiser4 это не то же самое, что ReiserFS. Это две разных файловых системы! ReiserFS давно уже живет в основном транке ядра, а вот для Reiser4, хотя и появилась она на свет в далеком 2004 году, придется применять патч, который, надо заметить, регулярно обновляется для новых версий ядра.

    Качаем и применяем патч в соответствии с вашей версией ядра (у меня в системе linux-3.10.25-gentoo) с этой страницы

    Скажем, это можно сделать вот так:

     

    cd /usr/src/linux
    wget -O reiser4-for-3.10.patch.gz 'http://downloads.sourceforge.net/project/reiser4/reiser4-for-linux-3.x/
    reiser4-for-3.10.patch.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Freiser4%2Ffiles%2Freiser4-for-linux-3.x%2F&ts=
    1393599138&use_mirror=heanet'
    gunzip reiser4-for-3.10.patch.gz && patch -p1 < reiser4-for-3.10.patch
    


    Конфигурируем наше ядро. Обратите внимание — поддержка ReiserFS не требуется. Скрин моей конкретной системы, на вашей могут быть другие настройки, но нас сейчас интересует только:
    File Systems -> Reiser4
    image

    и не забываем про:
    Device Drivers > Block devices -> Loopback device support
    image

    Вот пример реальной последовательности команд и действий, которые я выполнял на своем сервере, вдруг, кому-то пригодится:

     

     

    ; Запускаем конфигуратор ядра
    make menuconfig
    ; Настраиваем функции ядра:
    ; Сохраняем новый конфиг, выходим и компилируем ядро
    make && make modules_install
    
    ; Копируем новое ядро в /boot, кто как привык. Я делаю так:
    mount /boot && cp arch/x86_64/boot/bzImage /boot/kernel-3.10.25 && cp .config /boot/.config-3.10.25
    


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

     

     

    vi /boot/grub/grub.conf
    


    Рабочая запись для нового ядра выглядит так (просто для примера, у вас может быть всё совсем по-другому):

     

     

    title Gentoo Linux 3.10.25 md0
    root (hd0,0)
    kernel /boot/kernel-3.10.25 root=/dev/md0 net.ifnames=0
    


    Не стоит пока что делать её конфигурацией по умолчанию, для начала перезапустим сервер и убедимся, что все хорошо.

    Делаем контрольный замер свободного места на дисках:

     

     

    df -h
    
    ; Ответ (нас интересует только первая строчка)
    Filesystem Size Used Avail Use% Mounted on
    /dev/md0 7.4G 4.1G 2.9G 59% /
    
    ; И отдельно наши прожорливые директории
    du --summarize -h /usr/portage
    ; 2.2G /usr/portage
    du --summarize -h /usr/src
    ; 766M /usr/src
    
    


    Запасаемся попкорном с валидолом и…

     

     

    umount /boot && reboot
    


    Не забываем ручками выбрать новую конфигурацию ядра для загрузки:
    image
    Надеюсь, ваш сервер всё ещё с вами…

    Первое и второе мы уже съели, переходим к десерту — созданию loop устройства и монтированием на него образа диска с Reiser4:

     

     

    ; Собираем утилиты для работы с Reiser4
    emerge reiser4progs
    
    ; Создаем файл контейнер для нашего образа диска
    cd /mnt && truncate -s 2G reiser4.img
    
    ; Обратите внимание на размер файла
    du -h reiser4.img
    ; 0 reiser4.img
    du --apparent-size -h reiser4.img
    ;2.0G reiser4.img
    
    ; Связываем файл с блочным устройством /dev/loop0
    losetup /dev/loop0 /mnt/reiser4.img
    
    ; Создаем файловую систему с компрессией gzip (есть еще lzo, но я не проверял, говорят, 
    что жмет хуже, но работает быстрее). Если кто знает, поделитесь пожалуйста ссылкой на 
    документацию по параметрам для Reiser4
    mkfs.reiser4 -f -o create=ccreg40,compress=gzip1 /dev/loop0
    


    image

    Наконец, монтируем наш новый «диск»:

     

     

    ; Для начала, добавим его описание в /etc/fstab
    echo '/mnt/reiser4.img /mnt/reiser4 reiser4 loop,noatime 0 0' >> /etc/fstab
    
    ; Создаем точку монтирования
    mkdir reiser4
    
    ; Барабанная дробь... монтаж...
    mount /mnt/reiser4
    
    ; И... убедимся, что все хорошо
    mount | grep mnt
    ; Ответ - /mnt/reiser4.img on /mnt/reiser4 type reiser4 (rw,noatime)
    


    Перемещаем требуемые директории на новое место жительства (тут можно выпить чашечку кофе и поделать другие дела)

     

     

    mv /usr/portage /mnt/reiser4 && ln -s /mnt/reiser4/portage /usr/portage
    mv /usr/src /mnt/reiser4 && ln -s /mnt/reiser4/src /usr/src
    


    Всё, можно сделать контрольный и подсчитывать профит:

     

     

    df -h
    
    ; Ответ - в зеленой зоне прибыли получили 1.2G 
    Filesystem Size Used Avail Use% Mounted on
    /dev/md0 7.4G 2.9G 4.2G 41% /
    devtmpfs 1004M 0 1004M 0% /dev
    tmpfs 201M 392K 201M 1% /run
    shm 1004M 0 1004M 0% /dev/shm
    cgroup_root 10M 0 10M 0% /sys/fs/cgroup
    /dev/loop1 2.0G 1.8G 191M 91% /mnt/reiser4
    
    ; Наш файл-контейнер reiser4.img занимает 1.8G 
    
    ; Теперь можно сделать нашу новую конфигурацию ядра основной и перезагрузить систему с последующей проверкой:
    mount | grep mnt
    ; Ответ - /mnt/reiser4.img on /mnt/reiser4 type reiser4 (rw,noatime)
    ; и проверить portage, запустив
    emerge -p world
    
    


    Итого: наши исходники занимали 3.9G, после упаковки это значение уменьшилось до 1.8G, или 46% (сжались больше, чем в два раза!) от исходного размера. Мелочь, конечно, но приятно.

    Такая конфигурация используется у меня около года без каких-либо проблем, 2G еще ни разу не закончились, ядро не паниковало, а CPU не расправился во время emerge -DNu world. Однако, все-таки есть один минус, если в таком контейнере закончится место, то для увеличения его размеров придется создавать новый файл большего размера и переливать в него все содержимое из старого файла. К сожалению, утилита resize_reiser4 все ещё никем не написана. Возможно, если кто-то знает другой способ увеличения размера этой файловой системы, то поделитесь пожалуйста в комментариях. И в каких файловых системах, кроме NTFS и BRTFS, есть поддержка прозрачного сжатия данных?

    Цитата из статьи, ссылка на которую дана в начале поста:

     

     

    The Reiser4 performance results were mixed but overall its performance was decent compared to EXT4/XFS/Btrfs given the limited manpower devoted to this out-of-tree file-system and its unfortunate history. Beyond porting the file-system to newer versions of the Linux kernel and fixing bugs, there's been no major development progress on Reiser4 in months. At this time, however, it appears there are still no formal plans for merging Reiser4 into the mainline Linux kernel anytime soon.


    http://habrahabr.ru/post/214255/

     

    Категория: Linux и не только | Просмотров: 435 | Добавил: laptop | Рейтинг: 4.0/1
    Всего комментариев: 0
    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]
    Волк слабее льва и тигра, но в цирке волк не выступает!
    Волк слабее льва и тигра, но в цирке волк не выступает!
    Волк - единственный из зверей, который может пойти в бой на более сильного противника.
    Если же он проиграл бой, то до последнего вздоха смотрит в глаза противника. После этого умирает...

    Праздники сегодня

    Погода
    Погода в Нью-Йорке Погода в Бреcте
    Поиск
    Календарь
    Архив записей
    Друзья сайта
  • Официальный блог
  • JEEP - the best! Mercedes - the best! Автомобильный портал города Бреста: технические характеристики с фото, авторынок, автоспорт...
    Наша кнопка
    IT новости с моего лаптопа...

    Внимание!
    Администратор сайта laptop.ucoz.ru не несет ответственности за содержание рекламных объявлений. Все используемые на сайте зарегистрированные товарные знаки принадлежат своим законным владельцам! Используемая со сторонних источников информация публикуется с обязательными ссылками на эти источники.
    Copyright Valeri N.Kravchuk © 2007-2019