]>
Commit | Line | Data |
---|---|---|
e29e4d57 ZJS |
1 | #!/usr/bin/env bash |
2 | set -ex | |
3 | ||
4 | repart=$1 | |
5 | test -x $repart | |
6 | ||
7 | D=$(mktemp --directory) | |
8 | trap "rm -rf '$D'" EXIT INT QUIT PIPE | |
9 | mkdir -p $D/definitions | |
10 | ||
e29e4d57 ZJS |
11 | SEED=e2a40bf9-73f1-4278-9160-49c031e7aef8 |
12 | ||
05ae606b | 13 | $repart $D/zzz --empty=create --size=1G --seed=$SEED |
e29e4d57 | 14 | |
46072ae3 | 15 | sfdisk -d $D/zzz | grep -v -e 'sector-size' -e '^$' >$D/empty |
e29e4d57 ZJS |
16 | |
17 | cmp $D/empty - <<EOF | |
18 | label: gpt | |
19 | label-id: EF7F7EE2-47B3-4251-B1A1-09EA8BF12D5D | |
20 | device: $D/zzz | |
21 | unit: sectors | |
22 | first-lba: 2048 | |
23 | last-lba: 2097118 | |
24 | EOF | |
25 | ||
26 | cat >$D/definitions/root.conf <<EOF | |
27 | [Partition] | |
26b0fda9 | 28 | Type=root-x86-64 |
e29e4d57 ZJS |
29 | EOF |
30 | ||
31 | ln -s root.conf $D/definitions/root2.conf | |
32 | ||
33 | cat >$D/definitions/home.conf <<EOF | |
34 | [Partition] | |
35 | Type=home | |
46072ae3 ZJS |
36 | Label=home-first |
37 | Label=home-always-too-long-xxxxxxxxxxxxxx-%v | |
e29e4d57 ZJS |
38 | EOF |
39 | ||
46072ae3 | 40 | cat >$D/definitions/swap.conf <<EOF |
e29e4d57 ZJS |
41 | [Partition] |
42 | Type=swap | |
43 | SizeMaxBytes=64M | |
44 | PaddingMinBytes=92M | |
45 | EOF | |
46 | ||
47 | $repart $D/zzz --dry-run=no --seed=$SEED --definitions=$D/definitions | |
48 | ||
49 | sfdisk -d $D/zzz | grep -v -e 'sector-size' -e '^$' >$D/populated | |
50 | ||
51 | cmp $D/populated - <<EOF | |
52 | label: gpt | |
53 | label-id: EF7F7EE2-47B3-4251-B1A1-09EA8BF12D5D | |
54 | device: $D/zzz | |
55 | unit: sectors | |
56 | first-lba: 2048 | |
57 | last-lba: 2097118 | |
46072ae3 | 58 | $D/zzz1 : start= 2048, size= 591856, type=933AC7E1-2EB4-4F13-B844-0E14E2AEF915, uuid=A6005774-F558-4330-A8E5-D6D2C01C01D6, name="home-first" |
e29e4d57 ZJS |
59 | $D/zzz2 : start= 593904, size= 591856, type=4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709, uuid=CE9C76EB-A8F1-40FF-813C-11DCA6C0A55B, name="root-x86-64" |
60 | $D/zzz3 : start= 1185760, size= 591864, type=4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709, uuid=AC60A837-550C-43BD-B5C4-9CB73B884E79, name="root-x86-64-2" | |
61 | $D/zzz4 : start= 1777624, size= 131072, type=0657FD6D-A4AB-43C4-84E5-0933C84B4F4F, uuid=2AA78CDB-59C7-4173-AF11-C7453737A5D1, name="swap" | |
62 | EOF | |
63 | ||
64 | cat >$D/definitions/swap.conf <<EOF | |
65 | [Partition] | |
66 | Type=swap | |
67 | SizeMaxBytes=64M | |
68 | EOF | |
69 | ||
70 | cat >$D/definitions/extra.conf <<EOF | |
71 | [Partition] | |
72 | Type=linux-generic | |
7b5cb4ce TH |
73 | Label=custom_label |
74 | UUID=a0a1a2a3a4a5a6a7a8a9aaabacadaeaf | |
e29e4d57 ZJS |
75 | EOF |
76 | ||
46072ae3 ZJS |
77 | echo "Label=ignored_label" >>$D/definitions/home.conf |
78 | echo "UUID=b0b1b2b3b4b5b6b7b8b9babbbcbdbebf" >>$D/definitions/home.conf | |
7b5cb4ce | 79 | |
e29e4d57 ZJS |
80 | $repart $D/zzz --dry-run=no --seed=$SEED --definitions=$D/definitions |
81 | ||
82 | sfdisk -d $D/zzz | grep -v -e 'sector-size' -e '^$' >$D/populated2 | |
83 | ||
84 | cmp $D/populated2 - <<EOF | |
85 | label: gpt | |
86 | label-id: EF7F7EE2-47B3-4251-B1A1-09EA8BF12D5D | |
87 | device: $D/zzz | |
88 | unit: sectors | |
89 | first-lba: 2048 | |
90 | last-lba: 2097118 | |
46072ae3 | 91 | $D/zzz1 : start= 2048, size= 591856, type=933AC7E1-2EB4-4F13-B844-0E14E2AEF915, uuid=A6005774-F558-4330-A8E5-D6D2C01C01D6, name="home-first" |
e29e4d57 ZJS |
92 | $D/zzz2 : start= 593904, size= 591856, type=4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709, uuid=CE9C76EB-A8F1-40FF-813C-11DCA6C0A55B, name="root-x86-64" |
93 | $D/zzz3 : start= 1185760, size= 591864, type=4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709, uuid=AC60A837-550C-43BD-B5C4-9CB73B884E79, name="root-x86-64-2" | |
94 | $D/zzz4 : start= 1777624, size= 131072, type=0657FD6D-A4AB-43C4-84E5-0933C84B4F4F, uuid=2AA78CDB-59C7-4173-AF11-C7453737A5D1, name="swap" | |
7b5cb4ce | 95 | $D/zzz5 : start= 1908696, size= 188416, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4, uuid=A0A1A2A3-A4A5-A6A7-A8A9-AAABACADAEAF, name="custom_label" |
e29e4d57 ZJS |
96 | EOF |
97 | ||
05ae606b | 98 | $repart $D/zzz --size=2G --dry-run=no --seed=$SEED --definitions=$D/definitions |
e29e4d57 ZJS |
99 | |
100 | sfdisk -d $D/zzz | grep -v -e 'sector-size' -e '^$' >$D/populated3 | |
101 | ||
102 | cmp $D/populated3 - <<EOF | |
103 | label: gpt | |
104 | label-id: EF7F7EE2-47B3-4251-B1A1-09EA8BF12D5D | |
105 | device: $D/zzz | |
106 | unit: sectors | |
107 | first-lba: 2048 | |
108 | last-lba: 4194270 | |
46072ae3 | 109 | $D/zzz1 : start= 2048, size= 591856, type=933AC7E1-2EB4-4F13-B844-0E14E2AEF915, uuid=A6005774-F558-4330-A8E5-D6D2C01C01D6, name="home-first" |
e29e4d57 ZJS |
110 | $D/zzz2 : start= 593904, size= 591856, type=4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709, uuid=CE9C76EB-A8F1-40FF-813C-11DCA6C0A55B, name="root-x86-64" |
111 | $D/zzz3 : start= 1185760, size= 591864, type=4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709, uuid=AC60A837-550C-43BD-B5C4-9CB73B884E79, name="root-x86-64-2" | |
112 | $D/zzz4 : start= 1777624, size= 131072, type=0657FD6D-A4AB-43C4-84E5-0933C84B4F4F, uuid=2AA78CDB-59C7-4173-AF11-C7453737A5D1, name="swap" | |
7b5cb4ce | 113 | $D/zzz5 : start= 1908696, size= 2285568, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4, uuid=A0A1A2A3-A4A5-A6A7-A8A9-AAABACADAEAF, name="custom_label" |
e29e4d57 | 114 | EOF |
757bc2e4 LP |
115 | |
116 | dd if=/dev/urandom of=$D/block-copy bs=4096 count=10240 | |
117 | ||
118 | cat >$D/definitions/extra2.conf <<EOF | |
119 | [Partition] | |
120 | Type=linux-generic | |
121 | Label=block-copy | |
122 | UUID=2a1d97e1d0a346cca26eadc643926617 | |
123 | CopyBlocks=$D/block-copy | |
124 | EOF | |
125 | ||
126 | $repart $D/zzz --size=3G --dry-run=no --seed=$SEED --definitions=$D/definitions | |
127 | ||
128 | sfdisk -d $D/zzz | grep -v -e 'sector-size' -e '^$' >$D/populated4 | |
129 | ||
130 | cmp $D/populated4 - <<EOF | |
131 | label: gpt | |
132 | label-id: EF7F7EE2-47B3-4251-B1A1-09EA8BF12D5D | |
133 | device: $D/zzz | |
134 | unit: sectors | |
135 | first-lba: 2048 | |
136 | last-lba: 6291422 | |
46072ae3 | 137 | $D/zzz1 : start= 2048, size= 591856, type=933AC7E1-2EB4-4F13-B844-0E14E2AEF915, uuid=A6005774-F558-4330-A8E5-D6D2C01C01D6, name="home-first" |
757bc2e4 LP |
138 | $D/zzz2 : start= 593904, size= 591856, type=4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709, uuid=CE9C76EB-A8F1-40FF-813C-11DCA6C0A55B, name="root-x86-64" |
139 | $D/zzz3 : start= 1185760, size= 591864, type=4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709, uuid=AC60A837-550C-43BD-B5C4-9CB73B884E79, name="root-x86-64-2" | |
140 | $D/zzz4 : start= 1777624, size= 131072, type=0657FD6D-A4AB-43C4-84E5-0933C84B4F4F, uuid=2AA78CDB-59C7-4173-AF11-C7453737A5D1, name="swap" | |
141 | $D/zzz5 : start= 1908696, size= 2285568, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4, uuid=A0A1A2A3-A4A5-A6A7-A8A9-AAABACADAEAF, name="custom_label" | |
142 | $D/zzz6 : start= 4194264, size= 2097152, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4, uuid=2A1D97E1-D0A3-46CC-A26E-ADC643926617, name="block-copy" | |
143 | EOF | |
144 | ||
145 | cmp --bytes=41943040 --ignore-initial=0:$((512*4194264)) $D/block-copy $D/zzz |