mirror of https://github.com/hak5/openwrt.git
x86: fix platform_export_bootpart() for Xen virtual disks
Virtual disk devices in a Xen virtual machine (DomU) can be /dev/xvda, /dev/xvdb and so on with partitions like /dev/xdva1. Devices named like this where not considered before. This resulted in a non working sysupgrade, because the boot partition could not be found. Signed-off-by: Alexander Dahl <alex@netz39.de> Suggested-by: Matthias Schiffer <mschiffer@universe-factory.net> Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 49190
parent
b030bb606f
commit
8a7b28071f
|
@ -17,7 +17,7 @@ platform_export_bootpart() {
|
||||||
PARTUUID=[a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9]-02)
|
PARTUUID=[a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9]-02)
|
||||||
uuid="${disk#PARTUUID=}"
|
uuid="${disk#PARTUUID=}"
|
||||||
uuid="${uuid%-02}"
|
uuid="${uuid%-02}"
|
||||||
for disk in /dev/[hsv]d[a-z]; do
|
for disk in /dev/[hsv]d[a-z] /dev/xvd[a-z]; do
|
||||||
set -- $(dd if=$disk bs=1 skip=440 count=4 2>/dev/null | hexdump -v -e '4/1 "%02x "')
|
set -- $(dd if=$disk bs=1 skip=440 count=4 2>/dev/null | hexdump -v -e '4/1 "%02x "')
|
||||||
if [ "$4$3$2$1" = "$uuid" ]; then
|
if [ "$4$3$2$1" = "$uuid" ]; then
|
||||||
export BOOTPART="${disk}1"
|
export BOOTPART="${disk}1"
|
||||||
|
|
Loading…
Reference in New Issue