Объединение несколько hdd в ubuntu
05.10.2010Доброго времени суток дорогие читатели! Сегодня я хочу поговорить о объединении нескольких жестких дисков(файловых систем) в одну в системе Linux. Сейчас многие скажут, а что собственно обсуждать, ведь есть raid и lvm. И будут правы , действительно на сервере можно поднять raid или lvm, но как показала практика, большинство домашних серверов собирается не на отказоустойчивость , а на объем, и раид соответственно стоит нулевой , а с lvm многие даже не сталкивались, так же нужно помнить, что в случаи падения raid 0 теряются данные, а с lvm уйдет много времени для восстановления. Поэтому я решил искать решение исходя из нескольких задач и особенностей:
Быстрое добавлениеудаление жестких дисков
При падении одного диска сохраняются данные на остальных
Скорость работы
Простота настройки
И такое решение нашлось. Представляю вам mhddfs. Что же это такое? Mhddfs это пакет линукс, работающий через модуль FUSE, который позволяет объединять несколько файловых систем в одну. Для тех кто не понял объясню на примере: У вас есть два hdd диска примонтированных в /mnt/porno1 и /mnt/porno2 , вы хотите, что бы оба диска были доступны по ftp(samba etc) как одна папка porno, для этого ставите Mhddfs и с его помощью объединяете две папки в одну.
Но и тут не все так просто, поговаривают что FUSE грузит бедный сервер и ощущается падение скорости, поэтому я решил проверить так ли это. Итак манипуляции я проводил на следущем сервере:
atom 330dc
3 gb sodim ddr2
3 hdd wd green 2tb
Мои скромные замеры показали, что процессор загружается на 1% , а скорость скачкизакачки через ftpsamba упала всего 1 мбсек , что не существенно при локальной сети в гигабит.
Теперь думаю вы уже приняли решение ставить или нет, так что перейдем к самой установки, для этого открываем консоль и устнавливает пакет:
apt-get install mhddfs
После установки надо создать точку монтирования:
mkdir /mnt/all
Теперь добавим наши диски(файловые системы), в моем случаи их было три штуки:
mhddfs /mnt/ftp1,/mnt/ftp2,/mnt/ftp3 /mnt/all -o allow_other
Ключ -o allow_other позволяет видеть новую файловую систему всем пользователям, а не только тому кто ее создал.
Вот и все, теперь можно открыть доступ в ftpsamba к точки монтирования /mnt/all и увидеть все три диска, при этом не нужно форматировать диски , все файлы на месте, так же если вдруг во время работы сломается какой либо диск, данный пропадут только на нем.
Если хотите, что бы все грузилось автоматически, нужно отредактировать fstab :
nano /etc/fstab
И в самый низ добавляем строчку:
mhddfs#/mnt/ftp1,/mnt/ftp2,/mnt/ftp3 /mnt/all fuse defaults,allow_other 0 0
Пути и название соответственно подставляйте свои.
Лично я считаю, что данный способ идеален для домашнего использования , а так же в локальных фтп , где отказоустойчивость для файлов не так важна.
Все отлично работает в ubuntu 14.04, только почему то у меня при копировании в созданную папку, в вашем примере это в porno, скорость записи по usb 3.0 не превышает 35 мб/с. Если копировать в другую директорию, что на одном, что на другом hdd скорость около 70 мб/с.
хм а загрузка ЦП какая?