Хорошо, таким образом, у меня есть три файлов изображений в /home/
, и каждый из них находится на различных физических дисках:
image1.img
image2.img
image3.img
Каждое изображение является тем же размером, и я хочу поместить сами изображения в RAID0.
Как я должен пойти о СОВЕРШЕНИИ НАБЕГА на них?
Править: Используя mdadm я получаю эту ошибку:
Править: Вывод cat /proc/mdstat
Править: Вывод sudo gparted /dev/md0
Для установки программного обеспечения Linux RAID, необходимо установить mdadm
пакет.
sudo apt-get install mdadm
, Если Вы хотите сделать программное обеспечение RAID 0 из этих трех файлов изображений, необходимо создать циклические устройства для каждого файлы изображений:
sudo losetup /dev/loop1 image1.img
sudo losetup /dev/loop2 image2.img
sudo losetup /dev/loop3 image3.img
После того, как можно создать RAID 0 массивов от них:
sudo mdadm --create /dev/md0 --level=0 --raid-devices=3 /dev/loop1 /dev/loop2 /dev/loop3
Если Ваша система соответствует основным требованиям, Вы могли бы использовать zfs
(8 ГБ RAM, 64-разрядной системы):
Добавьте repo и обновите список пакета:
sudo add-apt-repository ppa:zfs-native/stable
sudo apt-get update
Пакет установки:
sudo apt-get install ubuntu-zfs
Создайте чередуемый vdev (без дублирования, но Вы попросили RAID0):
sudo zpool create vol0 ~/image[1-3].img
Это создает дорожку и монтирует его в/vol0.
sudo zfs create vol0/filesystem
Это создает zfs файловую систему на дорожке и монтирует его в/vol0/filesystem. Использовать
sudo zfs set mountpoint=/mnt/filesystem vol0/filesystem
если Вы хотите изменить точку монтирования.
Можно также добавить автоматическое сжатие:
sudo zfs create vol0/filesystem/compressed
sudo zfs set compression=on vol0/filesystem/compressed
Теперь все, что Вы помещаете в/mnt/filesystem/compressed, будет автоматически сжато.
Я буквально просто коснулся image#.img для каждого. Есть ли что-то еще, что я должен сделать?
Это - действительно проблема. Файлы составляют 0 байтов, и Вы не можете искать в них. Вы имеете к make-файлам, которые на самом деле имеют размер. Это может быть редкий файл, если Вы хотите:
[/tmp]$ dd if=/dev/zero of=1.img bs=1M count=25 conv=sparse
25+0 records in
25+0 records out
26214400 bytes (26 MB, 25 MiB) copied, 0.00334608 s, 7.8 GB/s
[/tmp]$ dd if=/dev/zero of=2.img bs=1M count=25 conv=sparse
25+0 records in
25+0 records out
26214400 bytes (26 MB, 25 MiB) copied, 0.00347987 s, 7.5 GB/s
[/tmp]$ dd if=/dev/zero of=3.img bs=1M count=25 conv=sparse
25+0 records in
25+0 records out
26214400 bytes (26 MB, 25 MiB) copied, 0.00330069 s, 7.9 GB/s
[/tmp]$ du 1.img
0 1.img
Теперь я могу сделать loopdevices и собрать массив:
[/tmp]$ sudo losetup loop0 1.img
[/tmp]$ sudo losetup loop1 2.img
[/tmp]$ sudo losetup loop2 3.img
[/tmp]$ sudo mdadm --create /dev/md0 --level=0 --raid-devices=3 /dev/loop0 /dev/loop1 /dev/loop2
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[/tmp]$ sudo mkfs.ext4 /dev/md0
mke2fs 1.42.11 (09-Jul-2014)
Discarding device blocks: done
Creating filesystem with 73728 1k blocks and 18432 inodes
Filesystem UUID: 8123197c-a9aa-434d-9233-103fe20727ed
Superblock backups stored on blocks:
8193, 24577, 40961, 57345
Allocating group tables: done
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done
[/tmp]$ mkdir mnt/
[/tmp]$ sudo mount /dev/md0 mnt/
[/tmp]$ df -h mnt/
Filesystem Size Used Avail Use% Mounted on
/dev/md0 66M 1.3M 60M 3% /tmp/mnt
[/tmp]$ cat /proc/mdstat
Personalities : [raid0]
md0 : active raid0 loop2[2] loop1[1] loop0[0]
73728 blocks super 1.2 512k chunks
unused devices: <none>
[/tmp]$ du -h 1.img 2.img 3.img
1.3M 1.img
1.6M 2.img
1.6M 3.img
Редкие файлы будут расти к максимальному размеру, поскольку данные записаны в них. Они не уменьшатся, если файлы в файловой системе будут удалены.