]>
Commit | Line | Data |
---|---|---|
e2f092d3 KZ |
1 | #!/bin/bash |
2 | ||
3 | # | |
4 | # Copyright (C) 2010 Karel Zak <kzak@redhat.com> | |
5 | # | |
601d12fb | 6 | # This file is part of util-linux. |
e2f092d3 KZ |
7 | # |
8 | # This file is free software; you can redistribute it and/or modify | |
9 | # it under the terms of the GNU General Public License as published by | |
10 | # the Free Software Foundation; either version 2 of the License, or | |
11 | # (at your option) any later version. | |
12 | # | |
13 | # This file is distributed in the hope that it will be useful, | |
14 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | # GNU General Public License for more details. | |
17 | # | |
18 | ||
e130ce53 | 19 | TS_TOPDIR="${0%/*}/../.." |
e2f092d3 KZ |
20 | TS_DESC="MD raid1 (whole-disks)" |
21 | ||
22 | . $TS_TOPDIR/functions.sh | |
23 | ts_init "$*" | |
2f791546 SK |
24 | |
25 | ts_check_test_command "$TS_CMD_FDISK" | |
26 | ts_check_test_command "$TS_CMD_BLKID" | |
27 | ||
e2f092d3 | 28 | ts_skip_nonroot |
a5b45f2f | 29 | ts_check_losetup |
12826d4c | 30 | ts_check_prog "mdadm" |
e2f092d3 | 31 | |
e2f092d3 KZ |
32 | ts_log "Initialize devices" |
33 | IMGNAME="${TS_OUTDIR}/${TS_TESTNAME}" | |
34 | ||
cbae7931 RM |
35 | ts_device_init 50 ${IMGNAME}1.img |
36 | DEVICE1=$TS_LODEV | |
e2f092d3 | 37 | |
cbae7931 RM |
38 | ts_device_init 50 ${IMGNAME}2.img |
39 | DEVICE2=$TS_LODEV | |
e2f092d3 KZ |
40 | |
41 | MD_DEVNAME=md8 | |
42 | MD_DEVICE=/dev/${MD_DEVNAME} | |
43 | ||
f1254fae KZ |
44 | ts_lock "md" |
45 | ||
12826d4c | 46 | mdadm -q -S ${MD_DEVICE} &> /dev/null |
f1254fae | 47 | udevadm settle |
e2f092d3 KZ |
48 | |
49 | ts_log "Create RAID device" | |
12826d4c | 50 | mdadm -q --create ${MD_DEVICE} --metadata=0.90 --chunk=64 --level=1 \ |
cbf858aa | 51 | --raid-devices=2 ${DEVICE1} ${DEVICE2} >> $TS_OUTPUT 2>> $TS_ERRLOG |
f1254fae | 52 | udevadm settle |
e2f092d3 KZ |
53 | |
54 | ts_log "Create partitions on RAID device" | |
cbf858aa | 55 | $TS_CMD_FDISK ${MD_DEVICE} >> $TS_OUTPUT 2>> $TS_ERRLOG <<EOF |
e2f092d3 KZ |
56 | n |
57 | p | |
58 | 1 | |
59 | ||
60 | +10M | |
61 | n | |
62 | p | |
63 | 2 | |
64 | ||
65 | +10M | |
66 | p | |
67 | w | |
68 | q | |
69 | EOF | |
70 | ||
188d9656 | 71 | udevadm settle |
e2f092d3 KZ |
72 | |
73 | ts_log "Probe first RAID member" | |
cbf858aa | 74 | $TS_CMD_BLKID -p -o udev $DEVICE1 2>> $TS_ERRLOG | sort >> $TS_OUTPUT |
e2f092d3 KZ |
75 | |
76 | ts_log "Probe second RAID member" | |
cbf858aa | 77 | $TS_CMD_BLKID -p -o udev $DEVICE1 2>> $TS_ERRLOG | sort >> $TS_OUTPUT |
e2f092d3 KZ |
78 | |
79 | ts_log "Stop RAID device" | |
cbf858aa | 80 | mdadm -q -S ${MD_DEVICE} >> $TS_OUTPUT 2>> $TS_ERRLOG |
e2f092d3 | 81 | |
188d9656 | 82 | udevadm settle |
f1254fae | 83 | ts_unlock "md" |
e2f092d3 KZ |
84 | |
85 | ts_log "Deinitialize devices" | |
e2f092d3 | 86 | |
d0bcd9b3 | 87 | ts_fdisk_clean |
561dedcf RM |
88 | # seems that raid1 minimum I/O size has been changed in kernels >4.4.x and >4.8 |
89 | sed -i 's@^\(I/O size (minimum/optimal): \)[1-9][0-9]*@\1<removed>@' $TS_OUTPUT | |
d0bcd9b3 | 90 | # remove generated UUIDs |
e2f092d3 KZ |
91 | sed -i -e 's/ID_FS_UUID.*//g' $TS_OUTPUT |
92 | ||
93 | ts_finalize |