Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v2.6.14-rc4 118 lines 4.1 kB view raw
1Tools that manage md devices can be found at 2 http://www.<country>.kernel.org/pub/linux/utils/raid/.... 3 4 5Boot time assembly of RAID arrays 6--------------------------------- 7 8You can boot with your md device with the following kernel command 9lines: 10 11for old raid arrays without persistent superblocks: 12 md=<md device no.>,<raid level>,<chunk size factor>,<fault level>,dev0,dev1,...,devn 13 14for raid arrays with persistent superblocks 15 md=<md device no.>,dev0,dev1,...,devn 16or, to assemble a partitionable array: 17 md=d<md device no.>,dev0,dev1,...,devn 18 19md device no. = the number of the md device ... 20 0 means md0, 21 1 md1, 22 2 md2, 23 3 md3, 24 4 md4 25 26raid level = -1 linear mode 27 0 striped mode 28 other modes are only supported with persistent super blocks 29 30chunk size factor = (raid-0 and raid-1 only) 31 Set the chunk size as 4k << n. 32 33fault level = totally ignored 34 35dev0-devn: e.g. /dev/hda1,/dev/hdc1,/dev/sda1,/dev/sdb1 36 37A possible loadlin line (Harald Hoyer <HarryH@Royal.Net>) looks like this: 38 39e:\loadlin\loadlin e:\zimage root=/dev/md0 md=0,0,4,0,/dev/hdb2,/dev/hdc3 ro 40 41 42Boot time autodetection of RAID arrays 43-------------------------------------- 44 45When md is compiled into the kernel (not as module), partitions of 46type 0xfd are scanned and automatically assembled into RAID arrays. 47This autodetection may be suppressed with the kernel parameter 48"raid=noautodetect". As of kernel 2.6.9, only drives with a type 0 49superblock can be autodetected and run at boot time. 50 51The kernel parameter "raid=partitionable" (or "raid=part") means 52that all auto-detected arrays are assembled as partitionable. 53 54 55Superblock formats 56------------------ 57 58The md driver can support a variety of different superblock formats. 59Currently, it supports superblock formats "0.90.0" and the "md-1" format 60introduced in the 2.5 development series. 61 62The kernel will autodetect which format superblock is being used. 63 64Superblock format '0' is treated differently to others for legacy 65reasons - it is the original superblock format. 66 67 68General Rules - apply for all superblock formats 69------------------------------------------------ 70 71An array is 'created' by writing appropriate superblocks to all 72devices. 73 74It is 'assembled' by associating each of these devices with an 75particular md virtual device. Once it is completely assembled, it can 76be accessed. 77 78An array should be created by a user-space tool. This will write 79superblocks to all devices. It will usually mark the array as 80'unclean', or with some devices missing so that the kernel md driver 81can create appropriate redundancy (copying in raid1, parity 82calculation in raid4/5). 83 84When an array is assembled, it is first initialized with the 85SET_ARRAY_INFO ioctl. This contains, in particular, a major and minor 86version number. The major version number selects which superblock 87format is to be used. The minor number might be used to tune handling 88of the format, such as suggesting where on each device to look for the 89superblock. 90 91Then each device is added using the ADD_NEW_DISK ioctl. This 92provides, in particular, a major and minor number identifying the 93device to add. 94 95The array is started with the RUN_ARRAY ioctl. 96 97Once started, new devices can be added. They should have an 98appropriate superblock written to them, and then passed be in with 99ADD_NEW_DISK. 100 101Devices that have failed or are not yet active can be detached from an 102array using HOT_REMOVE_DISK. 103 104 105Specific Rules that apply to format-0 super block arrays, and 106 arrays with no superblock (non-persistent). 107------------------------------------------------------------- 108 109An array can be 'created' by describing the array (level, chunksize 110etc) in a SET_ARRAY_INFO ioctl. This must has major_version==0 and 111raid_disks != 0. 112 113Then uninitialized devices can be added with ADD_NEW_DISK. The 114structure passed to ADD_NEW_DISK must specify the state of the device 115and it's role in the array. 116 117Once started with RUN_ARRAY, uninitialized spares can be added with 118HOT_ADD_DISK.