« Назад

 

 

Всі наведені нижче дії ви робите на свій страх і ризик. Ми не несемо відповідальності за втрату чи пошкодження даних.

Оригінал статті: How To Set Up Software RAID1 On A Running System (Incl. GRUB2 Configuration) (Debian Squeeze)

Вихідні дані

Маємо два жорсткі диски /dev/sda та /dev/sdb, однакового розміру. Диск/dev/sdb – новий, підключений до системи. Диск /dev/sda має наступні розділи:

  • /dev/sda1 – розділ /boot, ext4
  • /dev/sda2 – swap
  • /dev/sda3 – розділ /, ext4

 

 Завдання – отримати RAID1-масив такого вигляду:

  • /dev/md0 (що складається з /dev/sda1 та /dev/sdb1) – розділ /boot, ext4
  • /dev/md1 (що складається з /dev/sda2 та /dev/sdb2) – розділ підкачування
  • /dev/md2 (що складається з /dev/sda3 та /dev/sdb3) – розділ /, ext4

 

Установка утиліти mdadm

Для налаштування та управління програмним RAID-ом у Linux використовується утиліта mdadm. Встановимо її:

#apt-get install initramfs-tools mdadm

 

MD arrays потрібні для керування файлом системи: all 

 

Завантажимо необхідні модулі ядра:

#modprobe linear
#modprobe multipath
#modprobe raid0
#modprobe raid1#modprobe raid5
#modprobe raid6
#modprobe raid10

 

Для того щоб переконатися, що всі необхідні модулі та компоненти встановлені, виконаємо наступну команду:

#cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]unused devices:
#

 

Якщо Ви бачите щось подібне, то все добре.

  Підготовка /dev/sdb

 Обидва диски в масиві повинні мати абсолютно однакове розбиття. Залежно від типу таблиці розділів, що використовується (MBR або GPT) необхідно використовувати відповідні утиліти для копіювання таблиці розділів.

Жорсткий диск з таблицею розділів MBR

Для жорсткого диска з MBR використовуємо утиліту sfdisk:

#sfdisk -d /dev/sda | sfdisk --force /dev/sdb

 

де /dev/sda – диск джерело, /dev/sdb – диск призначення.

Перевіримо, що все правильно:

#fdisk -l

Disk&deb/sda: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065   8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000b0ecb br />   Device Boot      Start      &nbsp     Blocks   Id  System
/dev/sda1   *  &nbsp       1          63 &n bsp;    498688   83  Linux
Partition 1 does not&nbsp&nbsp  span>
/dev/sda2              63       125      499712   82  Linux swap  ;2 does not end on cylinder boundary.
/dev/sda3        ;&nbspn 125         653      >Partition 3 does not end on cylinder boundary.

Disk /dev/sdb: 5368  5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units  ;16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes  >
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier:&nbsp0

   Device Boot      Start    &nbsp  ; End      Blocks&nbsp ;  Id  System
/dev/sdb1   *         ; 1          63      498688 
Partition 1 does not end on cylinder boundary.
/dev/sdb2   &nb                  82  Linux swap / Solaris
Partition 2 does not end on cylinder&nbsp/dev/sdb3            125   &nbsp&nbsp&nbsp      4242432   83 &nb sp;Linux
Partition 3 does not end on cylinder boundary.
#

 

 На наступному кроці змінимо тип трьох розділів жорсткого диска /dev/sdb на Linux raid autodetect:

#fdisk /dev/sdb

WARNING: DOS-compatible mode is deprecated. It's strongly  br />         switch off the mode (command 'c') and  >         sectors (command 'u').

Command (m for help) > m
Command action
   a   toggle a bootable flag
   b   edit    c   toggle the dos compatibility flag
   d   delete  l   list known par tition types
   m   print this menu
   n   add  >   o   create a new empty DOS partition table
   p&nb  br />   q   quit without saving changes
   s    br />   t   change a partition's system id
   u     >   v   verify the partition table
   w   write&nbsp&nbsp  >   x   extra functionality (experts only)

Com mand (m for help):

 t
Partition number (1-4): 1
Hex code (type L to list codes): L

 0&nbsp Empty           24  NEC nnbn&nbsp ; Minix / old Lin bf  Solaris
 1  FAT12           39       82  Linux swap / So c1  DRDOS/sec (FAT- 3  XENIX usr       40  Venix 8nb 2 hidden C:  c6  DRDOS/sec (FAT-
 4  FAT16  5&nbsp&nb&nbsp 42  SFS            &nbsp&nbsp&nbsp -F S data
 6  FAT16           4n&nbsp&nbsp        NTFS volume set db  CP/M / CTOS /  NTFS      4e  QNX4.x 2nd part 88  Linux plaintext  ;AIX             4f  QNX4.x 3rd      df  BootIt
 9  AIX bootable    50&nbsp&nbsp&nbsp  93  Amoeba          e1  DOS access
&nbsp  anag 51  OnTrack DM6 Aux 94  Amoeba  ;FAT32      52  CP/M       &nbsp&nbsp  /OS          e4  SpeedStor
 c  Wnbb&nbsp&nbsp ;DM6 Aux a0  IBM Thinkpad hi eb  BeOS fs
 e  W95 FAT16 (LBA) 54  OnTrackDM6  &nbsp    a5  FreeBSD         ee  GPT
10  OPUS         &nbsp  Golden Bow      a7  NeXTSTEP       &nbsp&nbsp&nbsp ; Hidden FAT12    5c  Priam Edisk     a8  Darwin UFS      f1 &nbsp ;SpeedStor
12  Compaq diagnost 61  SpeedStor       a9&nbsp&nbb    f4  SpeedStor
14  Hidden FAT16 16  Hidden FAT16    64  Novell Netware  af &nbsp ;HFS / HFS+      fb  VMware VMFS
17  Hidden HP FS/NTF 65  Novell Netware  b7  BSDI fs      &nbsp& AST SmartSleep 70  DiskSecure Mult b8  BSDI&nbb&nbsp 1b  HiddenW95 FAT3 75 PC/IX         LANstep
1c  Hidden W95 FAT3   Old Minix   nnbb ;ff  BBT
1e  Hidden W95 FAT1
Hex code (type L to list codes):
style="color: #ff0000;">fd


Change

May 10, 2013

Якщо у вас виникли питання

ЗВ'ЯЖІТЬСЯ З НАМИ!

Залишіть свої дані і ми зв'яжемося з вами найближчим часом