mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00
parent
4d64db761e
commit
dd7c89aa77
@ -65,16 +65,9 @@ _v() {
|
|||||||
[ -n "$VERBOSE" ] && [ "$VERBOSE" -ge 1 ] && echo "$*" >&2
|
[ -n "$VERBOSE" ] && [ "$VERBOSE" -ge 1 ] && echo "$*" >&2
|
||||||
}
|
}
|
||||||
|
|
||||||
_vn() {
|
|
||||||
[ -n "$VERBOSE" ] && [ "$VERBOSE" -ge 1 ] && echo -n "$*" >&2
|
|
||||||
}
|
|
||||||
|
|
||||||
v() {
|
v() {
|
||||||
_v "$(date) upgrade: $@"
|
_v "$(date) upgrade: $@"
|
||||||
}
|
logger -p info -t upgrade "$@"
|
||||||
|
|
||||||
vn() {
|
|
||||||
_vn "$(date) upgrade: $@"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
json_string() {
|
json_string() {
|
||||||
@ -95,8 +88,7 @@ get_image() { # <source> [ <command> ]
|
|||||||
if [ -z "$cmd" ]; then
|
if [ -z "$cmd" ]; then
|
||||||
local magic="$(dd if="$from" bs=2 count=1 2>/dev/null | hexdump -n 2 -e '1/1 "%02x"')"
|
local magic="$(dd if="$from" bs=2 count=1 2>/dev/null | hexdump -n 2 -e '1/1 "%02x"')"
|
||||||
case "$magic" in
|
case "$magic" in
|
||||||
1f8b) cmd="zcat";;
|
1f8b) cmd="busybox zcat";;
|
||||||
425a) cmd="bzcat";;
|
|
||||||
*) cmd="cat";;
|
*) cmd="cat";;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
@ -135,6 +127,33 @@ get_magic_fat32() {
|
|||||||
(get_image "$@" | dd bs=1 count=5 skip=82) 2>/dev/null
|
(get_image "$@" | dd bs=1 count=5 skip=82) 2>/dev/null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
identify_magic_long() {
|
||||||
|
local magic=$1
|
||||||
|
case "$magic" in
|
||||||
|
"55424923")
|
||||||
|
echo "ubi"
|
||||||
|
;;
|
||||||
|
"31181006")
|
||||||
|
echo "ubifs"
|
||||||
|
;;
|
||||||
|
"68737173")
|
||||||
|
echo "squashfs"
|
||||||
|
;;
|
||||||
|
"d00dfeed")
|
||||||
|
echo "fit"
|
||||||
|
;;
|
||||||
|
"4349"*)
|
||||||
|
echo "combined"
|
||||||
|
;;
|
||||||
|
"1f8b"*)
|
||||||
|
echo "gzip"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "unknown $magic"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
part_magic_efi() {
|
part_magic_efi() {
|
||||||
local magic=$(get_magic_gpt "$@")
|
local magic=$(get_magic_gpt "$@")
|
||||||
[ "$magic" = "EFI PART" ]
|
[ "$magic" = "EFI PART" ]
|
||||||
@ -163,9 +182,11 @@ export_bootdevice() {
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
|
PARTUUID=????????-????-????-????-??????????0?/PARTNROFF=1 | \
|
||||||
PARTUUID=????????-????-????-????-??????????02)
|
PARTUUID=????????-????-????-????-??????????02)
|
||||||
uuid="${rootpart#PARTUUID=}"
|
uuid="${rootpart#PARTUUID=}"
|
||||||
uuid="${uuid%02}00"
|
uuid="${uuid%/PARTNROFF=1}"
|
||||||
|
uuid="${uuid%0?}00"
|
||||||
for disk in $(find /dev -type b); do
|
for disk in $(find /dev -type b); do
|
||||||
set -- $(dd if=$disk bs=1 skip=568 count=16 2>/dev/null | hexdump -v -e '8/1 "%02x "" "2/1 "%02x""-"6/1 "%02x"')
|
set -- $(dd if=$disk bs=1 skip=568 count=16 2>/dev/null | hexdump -v -e '8/1 "%02x "" "2/1 "%02x""-"6/1 "%02x"')
|
||||||
if [ "$4$3$2$1-$6$5-$8$7-$9" = "$uuid" ]; then
|
if [ "$4$3$2$1-$6$5-$8$7-$9" = "$uuid" ]; then
|
||||||
@ -211,7 +232,7 @@ export_partdevice() {
|
|||||||
while read line; do
|
while read line; do
|
||||||
export -n "$line"
|
export -n "$line"
|
||||||
done < "$uevent"
|
done < "$uevent"
|
||||||
if [ $BOOTDEV_MAJOR = $MAJOR -a $(($BOOTDEV_MINOR + $offset)) = $MINOR -a -b "/dev/$DEVNAME" ]; then
|
if [ "$BOOTDEV_MAJOR" = "$MAJOR" -a $(($BOOTDEV_MINOR + $offset)) = "$MINOR" -a -b "/dev/$DEVNAME" ]; then
|
||||||
export "$var=$DEVNAME"
|
export "$var=$DEVNAME"
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
@ -228,15 +249,6 @@ hex_le32_to_cpu() {
|
|||||||
echo "$@"
|
echo "$@"
|
||||||
}
|
}
|
||||||
|
|
||||||
get_partition_by_name() {
|
|
||||||
for partname in /sys/class/block/$1/*/name; do
|
|
||||||
[ "$(cat ${partname})" = "$2" ] && {
|
|
||||||
basename ${partname%%/name}
|
|
||||||
break
|
|
||||||
}
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
get_partitions() { # <device> <filename>
|
get_partitions() { # <device> <filename>
|
||||||
local disk="$1"
|
local disk="$1"
|
||||||
local filename="$2"
|
local filename="$2"
|
||||||
|
Loading…
Reference in New Issue
Block a user