mirror of
https://github.com/bin456789/reinstall.git
synced 2025-01-19 04:49:13 +08:00
32 lines
688 B
Bash
32 lines
688 B
Bash
#!/bin/sh
|
|
# debian ubuntu redhat 安装模式共用此脚本
|
|
# alpine 未用到此脚本
|
|
|
|
get_all_disks() {
|
|
# shellcheck disable=SC2010
|
|
ls /sys/block/ | grep -Ev '^(loop|sr|nbd)'
|
|
}
|
|
|
|
get_xda() {
|
|
# 如果没找到 main_disk 或 xda
|
|
# 返回假的值,防止意外地格式化全部盘
|
|
main_disk="$(grep -o 'extra\.main_disk=[^ ]*' /proc/cmdline | cut -d= -f2)"
|
|
|
|
if [ -z "$main_disk" ]; then
|
|
echo 'MAIN_DISK_NOT_FOUND'
|
|
return 1
|
|
fi
|
|
|
|
for disk in $(get_all_disks); do
|
|
if fdisk -l "/dev/$disk" | grep -iq "$main_disk"; then
|
|
echo "$disk"
|
|
return
|
|
fi
|
|
done
|
|
|
|
echo 'XDA_NOT_FOUND'
|
|
return 1
|
|
}
|
|
|
|
get_xda
|