mirror of
git://slackware.nl/current.git
synced 2025-01-22 07:27:59 +01:00
64fbcd92b6
a/cracklib-2.9.8-x86_64-1.txz: Upgraded. a/gawk-5.2.0-x86_64-1.txz: Upgraded. a/grep-3.8-x86_64-1.txz: Upgraded. a/kernel-firmware-20220902_2f2f018-noarch-1.txz: Upgraded. a/kernel-generic-5.19.7-x86_64-1.txz: Upgraded. a/kernel-huge-5.19.7-x86_64-1.txz: Upgraded. a/kernel-modules-5.19.7-x86_64-1.txz: Upgraded. a/pcmciautils-018-x86_64-5.txz: Rebuilt. rc.pcmcia: change fgrep to grep -F. a/pkgtools-15.1-noarch-1.txz: Upgraded. removepkg: change fgrep to grep -F. a/sysvinit-functions-8.53-x86_64-6.txz: Rebuilt. /etc/rc.d/init.d/functions: change egrep to grep -E. a/sysvinit-scripts-15.1-noarch-2.txz: Rebuilt. rc.cpufreq: command-line choice should take priority over /etc/default/cpufreq. Thanks to af7567. rc.6: change egrep to grep -E. ap/sqlite-3.39.3-x86_64-1.txz: Upgraded. ap/vim-9.0.0396-x86_64-1.txz: Upgraded. Fixed use after free. Thanks to marav for the heads-up. For more information, see: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-3099 (* Security fix *) d/autoconf-2.71-noarch-2.txz: Rebuilt. doinst.sh: change fgrep to grep -F. d/autoconf-archive-2022.09.03-noarch-1.txz: Upgraded. d/automake-1.16.5-noarch-2.txz: Rebuilt. doinst.sh: change fgrep to grep -F. d/kernel-headers-5.19.7-x86-1.txz: Upgraded. d/libtool-2.4.7-x86_64-4.txz: Rebuilt. doinst.sh: change fgrep to grep -F. d/meson-0.63.2-x86_64-1.txz: Upgraded. d/vala-0.56.3-x86_64-1.txz: Upgraded. k/kernel-source-5.19.7-noarch-1.txz: Upgraded. kde/bluedevil-5.25.5-x86_64-1.txz: Upgraded. kde/breeze-5.25.5-x86_64-1.txz: Upgraded. kde/breeze-grub-5.25.5-x86_64-1.txz: Upgraded. kde/breeze-gtk-5.25.5-x86_64-1.txz: Upgraded. kde/drkonqi-5.25.5-x86_64-1.txz: Upgraded. kde/kactivitymanagerd-5.25.5-x86_64-1.txz: Upgraded. kde/kde-cli-tools-5.25.5-x86_64-1.txz: Upgraded. kde/kde-gtk-config-5.25.5-x86_64-1.txz: Upgraded. kde/kdecoration-5.25.5-x86_64-1.txz: Upgraded. kde/kdeplasma-addons-5.25.5-x86_64-1.txz: Upgraded. kde/kgamma5-5.25.5-x86_64-1.txz: Upgraded. kde/khotkeys-5.25.5-x86_64-1.txz: Upgraded. kde/kinfocenter-5.25.5-x86_64-1.txz: Upgraded. kde/kmenuedit-5.25.5-x86_64-1.txz: Upgraded. kde/kscreen-5.25.5-x86_64-1.txz: Upgraded. kde/kscreenlocker-5.25.5-x86_64-1.txz: Upgraded. kde/ksshaskpass-5.25.5-x86_64-1.txz: Upgraded. kde/ksystemstats-5.25.5-x86_64-1.txz: Upgraded. kde/kwallet-pam-5.25.5-x86_64-1.txz: Upgraded. kde/kwayland-integration-5.25.5-x86_64-1.txz: Upgraded. kde/kwin-5.25.5-x86_64-1.txz: Upgraded. kde/kwrited-5.25.5-x86_64-1.txz: Upgraded. kde/layer-shell-qt-5.25.5-x86_64-1.txz: Upgraded. kde/libkscreen-5.25.5-x86_64-1.txz: Upgraded. kde/libksysguard-5.25.5-x86_64-1.txz: Upgraded. kde/milou-5.25.5-x86_64-1.txz: Upgraded. kde/oxygen-5.25.5-x86_64-1.txz: Upgraded. kde/oxygen-sounds-5.25.5-x86_64-1.txz: Upgraded. kde/plasma-browser-integration-5.25.5-x86_64-1.txz: Upgraded. kde/plasma-desktop-5.25.5-x86_64-1.txz: Upgraded. kde/plasma-disks-5.25.5-x86_64-1.txz: Upgraded. kde/plasma-firewall-5.25.5-x86_64-1.txz: Upgraded. kde/plasma-integration-5.25.5-x86_64-1.txz: Upgraded. kde/plasma-nm-5.25.5-x86_64-1.txz: Upgraded. kde/plasma-pa-5.25.5-x86_64-1.txz: Upgraded. kde/plasma-sdk-5.25.5-x86_64-1.txz: Upgraded. kde/plasma-systemmonitor-5.25.5-x86_64-1.txz: Upgraded. kde/plasma-vault-5.25.5-x86_64-1.txz: Upgraded. kde/plasma-wayland-protocols-1.8.0-x86_64-1.txz: Upgraded. kde/plasma-workspace-5.25.5-x86_64-1.txz: Upgraded. kde/plasma-workspace-wallpapers-5.25.5-x86_64-1.txz: Upgraded. kde/polkit-kde-agent-1-5.25.5-x86_64-1.txz: Upgraded. kde/powerdevil-5.25.5-x86_64-1.txz: Upgraded. kde/qqc2-breeze-style-5.25.5-x86_64-1.txz: Upgraded. kde/sddm-kcm-5.25.5-x86_64-1.txz: Upgraded. kde/systemsettings-5.25.5-x86_64-1.txz: Upgraded. kde/xdg-desktop-portal-kde-5.25.5-x86_64-1.txz: Upgraded. l/fluidsynth-2.2.9-x86_64-1.txz: Upgraded. l/libsoup3-3.0.8-x86_64-1.txz: Upgraded. l/libssh-0.10.3-x86_64-1.txz: Upgraded. l/neon-0.32.3-x86_64-1.txz: Upgraded. l/slang-2.3.3-x86_64-1.txz: Upgraded. n/nmap-7.93-x86_64-1.txz: Upgraded. x/ibus-m17n-1.4.11-x86_64-1.txz: Upgraded. x/libXft-2.3.5-x86_64-1.txz: Upgraded. xap/mozilla-firefox-104.0.2-x86_64-1.txz: Upgraded. This is a bugfix release. For more information, see: https://www.mozilla.org/en-US/firefox/104.0.2/releasenotes/ xap/vim-gvim-9.0.0396-x86_64-1.txz: Upgraded. xfce/xfce4-pulseaudio-plugin-0.4.4-x86_64-1.txz: Upgraded. isolinux/initrd.img: Rebuilt. kernels/*: Upgraded. usb-and-pxe-installers/usbboot.img: Rebuilt.
446 lines
13 KiB
Bash
Executable file
446 lines
13 KiB
Bash
Executable file
#!/bin/bash
|
|
# This is 'probe', a wrapper for using fdisk to gather drive info for
|
|
# the Slackware setup scripts. I hate to bounce this much garbage through
|
|
# a tmpdir, but it looks like large variables can make ash crash...
|
|
|
|
# Many thanks to Vincent Rivellino for contributing the patches to support
|
|
# Mylex and Compaq RAID controllers.
|
|
|
|
# Regularize output that will be parsed:
|
|
unset LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY \
|
|
LC_MESSAGES LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT \
|
|
LC_IDENTIFICATION LC_ALL
|
|
LANG=C
|
|
export LANG
|
|
|
|
TMP=/var/log/setup/tmp
|
|
|
|
# Use cached results if they exist and /proc/partitions has not changed:
|
|
if [ -r $TMP/SeTpartition.md5 -a -r $TMP/SeTfdisk ]; then
|
|
if [ "$(cat $TMP/SeTpartition.md5)" = "$(md5sum /proc/partitions)" ]; then
|
|
cat $TMP/SeTfdisk
|
|
exit 0
|
|
fi
|
|
fi
|
|
|
|
# First run, or /proc/partitions has changed.
|
|
# Make a checksum for later comparison:
|
|
md5sum /proc/partitions > $TMP/SeTpartition.md5
|
|
|
|
# Wipe any previously existing results:
|
|
rm -f $TMP/SeTfdisk
|
|
|
|
# listide major minor hd1 hd2 (2 base devs for major)
|
|
list_ide() {
|
|
if [ "$2" = "0" ]; then
|
|
fdisk -l /dev/$3 >> $TMP/SeTfdisk
|
|
elif [ "$2" = "64" ]; then
|
|
fdisk -l /dev/$4 >> $TMP/SeTfdisk
|
|
fi
|
|
}
|
|
|
|
list_scsi() {
|
|
# find drive # 0 - 15
|
|
DRV=`expr $1 / 16`
|
|
NUM=`expr $1 % 16`
|
|
if [ ! "$NUM" = "0" ]; then
|
|
return
|
|
fi
|
|
if [ "$DRV" = "0" ]; then
|
|
fdisk -l /dev/sda >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "1" ]; then
|
|
fdisk -l /dev/sdb >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "2" ]; then
|
|
fdisk -l /dev/sdc >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "3" ]; then
|
|
fdisk -l /dev/sdd >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "4" ]; then
|
|
fdisk -l /dev/sde >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "5" ]; then
|
|
fdisk -l /dev/sdf >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "6" ]; then
|
|
fdisk -l /dev/sdg >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "7" ]; then
|
|
fdisk -l /dev/sdh >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "8" ]; then
|
|
fdisk -l /dev/sdi >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "9" ]; then
|
|
fdisk -l /dev/sdj >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "10" ]; then
|
|
fdisk -l /dev/sdk >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "11" ]; then
|
|
fdisk -l /dev/sdl >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "12" ]; then
|
|
fdisk -l /dev/sdm >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "13" ]; then
|
|
fdisk -l /dev/sdn >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "14" ]; then
|
|
fdisk -l /dev/sdo >> $TMP/SeTfdisk
|
|
elif [ "$DRV" = "15" ]; then
|
|
fdisk -l /dev/sdp >> $TMP/SeTfdisk
|
|
fi
|
|
}
|
|
|
|
# List Mylex RAID device
|
|
list_rd() {
|
|
# find drive
|
|
DRV=`expr $2 / 8`
|
|
NUM=`expr $2 % 8`
|
|
if [ ! "$NUM" = "0" ]; then
|
|
return
|
|
fi
|
|
fdisk -l /dev/rd/c$1d$DRV >> $TMP/SeTfdisk
|
|
#output_gpt_partitions /dev/rd/c$1d$DRV >> $TMP/SeTfdisk
|
|
}
|
|
|
|
# List Cpq SMART/2 RAID device
|
|
list_ida() {
|
|
# find drive
|
|
DRV=`expr $2 / 16`
|
|
NUM=`expr $2 % 16`
|
|
if [ ! "$NUM" = "0" ]; then
|
|
return
|
|
fi
|
|
fdisk -l /dev/ida/c$1d$DRV >> $TMP/SeTfdisk
|
|
#output_gpt_partitions /dev/ida/c$1d$DRV >> $TMP/SeTfdisk
|
|
}
|
|
|
|
list_cciss() {
|
|
# find drive
|
|
DRV=`expr $2 / 16`
|
|
NUM=`expr $2 % 16`
|
|
if [ ! "$NUM" = "0" ]; then
|
|
return
|
|
fi
|
|
fdisk -l /dev/cciss/c$1d$DRV >> $TMP/SeTfdisk
|
|
#output_gpt_partitions /dev/cciss/c$1d$DRV >> $TMP/SeTfdisk
|
|
}
|
|
|
|
list_ataraid() {
|
|
# find drive
|
|
DRV=`expr $2 / 16`
|
|
NUM=`expr $2 % 16`
|
|
if [ "$NUM" = "0" ]; then
|
|
fdisk -l /dev/ataraid/d$DRV >> $TMP/SeTfdisk
|
|
#output_gpt_partitions /dev/ataraid/d$DRV >> $TMP/SeTfdisk
|
|
else
|
|
return
|
|
fi
|
|
}
|
|
|
|
list_amiraid() {
|
|
# find drive
|
|
DRV=`expr $2 / 16`
|
|
NUM=`expr $2 % 16`
|
|
if [ "$NUM" = "0" ]; then
|
|
fdisk -l /dev/amiraid/ar$DRV >> $TMP/SeTfdisk
|
|
#output_gpt_partitions /dev/amiraid/ar$DRV >> $TMP/SeTfdisk
|
|
else
|
|
return
|
|
fi
|
|
}
|
|
|
|
#list_mmc() {
|
|
# # find drive
|
|
# DRV=`expr $2 / 8`
|
|
# NUM=`expr $2 % 8`
|
|
# if [ "$NUM" = "0" ]; then
|
|
# fdisk -l /dev/mmcblk$DRV >> $TMP/SeTfdisk
|
|
# #output_gpt_partitions /dev/mmcblk$DRV >> $TMP/SeTfdisk
|
|
# else
|
|
# return
|
|
# fi
|
|
#}
|
|
list_mmc() {
|
|
local device
|
|
# Filter out any partitions on the block device, as we'll use
|
|
# fdisk to capture those:
|
|
lsblk -o name,type -ripnd /dev/mmcblk* | grep -E 'disk$' | awk '{print $1}' | while read device ; do
|
|
fdisk -l $device >> $TMP/SeTfdisk
|
|
done
|
|
}
|
|
|
|
list_nvme() {
|
|
fdisk -l | grep $1 >> $TMP/SeTfdisk 2> /dev/null
|
|
}
|
|
|
|
is_swap() {
|
|
HEADER=$(dd if="$1" bs=1 skip=4086 count=10 2>/dev/null | strings)
|
|
if [ "$HEADER" = "SWAPSPACE2" -o "$HEADER" = "SWAP_SPACE" ]; then
|
|
return 0
|
|
else
|
|
return 1
|
|
fi
|
|
}
|
|
|
|
list_md() {
|
|
if ( is_swap "/dev/$2" ); then TYPE="Linux swap"; else TYPE="Linux"; fi
|
|
echo "/dev/$2 1 2 $1 kk $TYPE" >> $TMP/SeTfdisk
|
|
}
|
|
|
|
list_lvm() {
|
|
lvscan 2>/dev/null | grep "ACTIVE" | while read line ; do
|
|
SMASHED_LINE=$line
|
|
if [ "$SMASHED_LINE" = "" ]; then
|
|
break;
|
|
fi
|
|
DEV=`echo $SMASHED_LINE | cut -f2 -d"'"`
|
|
SIZE=`lvdisplay $DEV -C --units k --noheadings --separator : | cut -f4 -d':' | sed -e 's/^\([0-9]*\)[^0-9].*/\1/'`
|
|
TYPE="Linux"
|
|
if ( is_swap "$DEV" ); then TYPE="Linux swap"; fi
|
|
echo "$DEV 0 0 $SIZE lv $TYPE" >> $TMP/SeTfdisk
|
|
done
|
|
}
|
|
|
|
# List any volumes created by cryptsetup
|
|
list_crypt() {
|
|
for i in $(/bin/ls /dev/mapper/); do
|
|
if cryptsetup status $i 2>/dev/null | grep -wq "cipher:" ; then
|
|
DEV=$(cryptsetup status $i | head -n 1 | cut -f 1 -d ' ')
|
|
SIZE=$(fdisk -s $(cryptsetup status $i | grep "device:" | cut -f 2 -d : | tr -d ' '))
|
|
echo "$DEV 0 0 $SIZE lc Linux" >> $TMP/SeTfdisk
|
|
fi
|
|
done
|
|
}
|
|
|
|
# List virtual partitions
|
|
list_virt() {
|
|
fdisk -l /dev/$1 >> $TMP/SeTfdisk
|
|
#output_gpt_partitions /dev/$1 >> $TMP/SeTfdisk
|
|
}
|
|
|
|
output_gpt_partitions() {
|
|
# First, make sure the device is GPT:
|
|
if fdisk -l $1 2> /dev/null | grep -wq -e "GPT" -e "Disklabel type: gpt" ; then
|
|
unset output
|
|
# In the case of some RAID device like Mylex we will need to delimit the
|
|
# partition number. We will set a partition delimiter variable P set
|
|
# either to an empty string (default) or the needed delimiter.
|
|
TESTRAID="$(echo $1 | cut -f 2 -d /)"
|
|
case "$TESTRAID" in
|
|
'amiraid' )
|
|
P="p"
|
|
;;
|
|
'ataraid' )
|
|
P="p"
|
|
;;
|
|
'cciss' )
|
|
P="p"
|
|
;;
|
|
'ida' )
|
|
P="p"
|
|
;;
|
|
'rd' )
|
|
P="p"
|
|
;;
|
|
*)
|
|
P=""
|
|
;;
|
|
esac
|
|
gdisk -l $1 | tr -d '*' | while read parse ; do
|
|
if [ ! -z $output ]; then
|
|
line=$parse
|
|
if [ ! "$(echo $line | cut -b1)" = "" ]; then
|
|
gptpartition=${1}${P}$(echo $line | cut -f 1 -d ' ')
|
|
gpttype="$(echo $line | cut -f 6 -d ' ')"
|
|
if [ "$gpttype" = "8200" ]; then
|
|
fdisktype="Linux swap"
|
|
elif [ "$gpttype" = "0700" ]; then
|
|
if dd if=$gptpartition bs=1K count=1 2> /dev/null | grep -wq NTFS ; then
|
|
fdisktype="HPFS/NTFS"
|
|
elif dd if=$gptpartition bs=1K count=1 2> /dev/null | grep -wq EXFAT ; then
|
|
fdisktype="exFAT"
|
|
else
|
|
fdisktype="W95 FAT32"
|
|
fi
|
|
elif [ "$gpttype" = "AF00" ]; then
|
|
fdisktype="HFS+"
|
|
elif [ "$gpttype" = "EF00" ]; then
|
|
fdisktype="EFI System Partition"
|
|
elif [ "$gpttype" = "8300" ]; then
|
|
fdisktype=Linux
|
|
else
|
|
fdisktype="Unknown hex code $gpttype"
|
|
fi
|
|
sectorsize="$(gdisk -l $1 | tr -d '*' | grep "Logical sector size" | cut -f 2 -d : | cut -f 2 -d ' ')"
|
|
gptstart="$(expr $(echo $line | cut -f 2 -d ' ') \* $sectorsize / 1024)"
|
|
gptend="$(expr $(echo $line | cut -f 3 -d ' ') \* $sectorsize / 1024)"
|
|
gptsize="$(expr $gptend - $gptstart)"
|
|
echo $gptpartition $gptstart $gptend $gptsize $gpttype $fdisktype
|
|
fi
|
|
fi
|
|
if echo $parse | grep -q "^Number" ; then
|
|
output=true
|
|
fi
|
|
done
|
|
fi
|
|
}
|
|
|
|
list_scsi_gpt() {
|
|
# find drive # 0 - 15
|
|
DRV=`expr $1 / 16`
|
|
NUM=`expr $1 % 16`
|
|
if [ ! "$NUM" = "0" ]; then
|
|
return
|
|
fi
|
|
if [ "$DRV" = "0" ]; then
|
|
output_gpt_partitions /dev/sda
|
|
elif [ "$DRV" = "1" ]; then
|
|
output_gpt_partitions /dev/sdb
|
|
elif [ "$DRV" = "2" ]; then
|
|
output_gpt_partitions /dev/sdc
|
|
elif [ "$DRV" = "3" ]; then
|
|
output_gpt_partitions /dev/sdd
|
|
elif [ "$DRV" = "4" ]; then
|
|
output_gpt_partitions /dev/sde
|
|
elif [ "$DRV" = "5" ]; then
|
|
output_gpt_partitions /dev/sdf
|
|
elif [ "$DRV" = "6" ]; then
|
|
output_gpt_partitions /dev/sdg
|
|
elif [ "$DRV" = "7" ]; then
|
|
output_gpt_partitions /dev/sdh
|
|
elif [ "$DRV" = "8" ]; then
|
|
output_gpt_partitions /dev/sdi
|
|
elif [ "$DRV" = "9" ]; then
|
|
output_gpt_partitions /dev/sdj
|
|
elif [ "$DRV" = "10" ]; then
|
|
output_gpt_partitions /dev/sdk
|
|
elif [ "$DRV" = "11" ]; then
|
|
output_gpt_partitions /dev/sdl
|
|
elif [ "$DRV" = "12" ]; then
|
|
output_gpt_partitions /dev/sdm
|
|
elif [ "$DRV" = "13" ]; then
|
|
output_gpt_partitions /dev/sdn
|
|
elif [ "$DRV" = "14" ]; then
|
|
output_gpt_partitions /dev/sdo
|
|
elif [ "$DRV" = "15" ]; then
|
|
output_gpt_partitions /dev/sdp
|
|
fi
|
|
}
|
|
|
|
# List the LVM volumes:
|
|
list_lvm
|
|
|
|
# List CRYPT volumes:
|
|
list_crypt
|
|
|
|
## This is obsolete, since fdisk handles GPT now.
|
|
## List GPT partitions:
|
|
#cat /proc/partitions | while read line ; do
|
|
# SMASHED_LINE=$line
|
|
# MAJOR=`echo $SMASHED_LINE | cut -f 1 -d ' '`
|
|
# MINOR=`echo $SMASHED_LINE | cut -f 2 -d ' '`
|
|
# if [ "$MAJOR" = "8" ]; then
|
|
# list_scsi_gpt $MINOR
|
|
# fi
|
|
#done
|
|
|
|
# Other partitions:
|
|
if cat /proc/partitions | grep -E '/|[0-9]' 1>/dev/null 2>/dev/null ; then # new
|
|
cat /proc/partitions | grep -E '/|[0-9]' | while read line ; do
|
|
SMASHED_LINE=$line
|
|
MAJOR=`echo $SMASHED_LINE | cut -f 1 -d ' '`
|
|
MINOR=`echo $SMASHED_LINE | cut -f 2 -d ' '`
|
|
DEVNAME=`echo $SMASHED_LINE | cut -f 4 -d ' '`
|
|
if [ "$MAJOR" = "3" ]; then
|
|
list_ide $MAJOR $MINOR hda hdb
|
|
elif [ "$MAJOR" = "8" ]; then
|
|
list_scsi $MINOR
|
|
elif [ "$MAJOR" = "9" ]; then
|
|
list_md `echo $SMASHED_LINE | cut -f 3 -d ' ' | tr -d '/'` \
|
|
`echo $SMASHED_LINE | cut -f 4 -d ' '`
|
|
elif [ "$MAJOR" = "22" ]; then
|
|
list_ide $MAJOR $MINOR hdc hdd
|
|
elif [ "$MAJOR" = "33" ]; then
|
|
list_ide $MAJOR $MINOR hde hdf
|
|
elif [ "$MAJOR" = "34" ]; then
|
|
list_ide $MAJOR $MINOR hdg hdh
|
|
elif [ "$MAJOR" = "48" ]; then
|
|
list_rd 0 $MINOR
|
|
elif [ "$MAJOR" = "49" ]; then
|
|
list_rd 1 $MINOR
|
|
elif [ "$MAJOR" = "50" ]; then
|
|
list_rd 2 $MINOR
|
|
elif [ "$MAJOR" = "51" ]; then
|
|
list_rd 3 $MINOR
|
|
elif [ "$MAJOR" = "52" ]; then
|
|
list_rd 4 $MINOR
|
|
elif [ "$MAJOR" = "53" ]; then
|
|
list_rd 5 $MINOR
|
|
elif [ "$MAJOR" = "54" ]; then
|
|
list_rd 6 $MINOR
|
|
elif [ "$MAJOR" = "55" ]; then
|
|
list_rd 7 $MINOR
|
|
elif [ "$MAJOR" = "56" ]; then
|
|
list_ide $MAJOR $MINOR hdi hdj
|
|
elif [ "$MAJOR" = "57" ]; then
|
|
list_ide $MAJOR $MINOR hdk hdl
|
|
elif [ "$MAJOR" = "72" ]; then
|
|
list_ida 0 $MINOR
|
|
elif [ "$MAJOR" = "73" ]; then
|
|
list_ida 1 $MINOR
|
|
elif [ "$MAJOR" = "74" ]; then
|
|
list_ida 2 $MINOR
|
|
elif [ "$MAJOR" = "75" ]; then
|
|
list_ida 3 $MINOR
|
|
elif [ "$MAJOR" = "76" ]; then
|
|
list_ida 4 $MINOR
|
|
elif [ "$MAJOR" = "77" ]; then
|
|
list_ida 5 $MINOR
|
|
elif [ "$MAJOR" = "78" ]; then
|
|
list_ida 6 $MINOR
|
|
elif [ "$MAJOR" = "79" ]; then
|
|
list_ida 7 $MINOR
|
|
elif [ "$MAJOR" = "80" ]; then
|
|
list_ide $MAJOR $MINOR hdm hdn
|
|
elif [ "$MAJOR" = "89" ]; then
|
|
list_ide $MAJOR $MINOR hdo hdp
|
|
elif [ "$MAJOR" = "90" ]; then
|
|
list_ide $MAJOR $MINOR hdq hdr
|
|
elif [ "$MAJOR" = "91" ]; then
|
|
list_ide $MAJOR $MINOR hds hdt
|
|
elif [ "$MAJOR" = "101" ]; then
|
|
list_amiraid $MAJOR $MINOR
|
|
elif [ "$MAJOR" = "104" \
|
|
-o "$MAJOR" = "105" \
|
|
-o "$MAJOR" = "106" \
|
|
-o "$MAJOR" = "107" \
|
|
-o "$MAJOR" = "108" \
|
|
-o "$MAJOR" = "109" \
|
|
-o "$MAJOR" = "110" \
|
|
-o "$MAJOR" = "111" ]; then
|
|
list_cciss $(( $MAJOR - 104 )) $MINOR
|
|
elif [ "$MAJOR" = "114" ]; then
|
|
list_ataraid $MAJOR $MINOR
|
|
elif [ "$MAJOR" = "179" ]; then
|
|
list_mmc $MAJOR $MINOR
|
|
elif [ "$MAJOR" = "259" ]; then
|
|
if echo $line | grep -q p; then
|
|
list_nvme $DEVNAME
|
|
fi
|
|
elif [ $(expr $DEVNAME : 'x\?vd[^0-9]*$') -ne 0 ]; then
|
|
# The virtio devices have no set major dev number, so we have to search
|
|
# by name. Matches full drive names for KVM/lguest (vda) and Xen (xvda).
|
|
list_virt $DEVNAME
|
|
fi
|
|
done
|
|
else # old format and no RAID:
|
|
if cat /proc/partitions | grep md 1> /dev/null 2> /dev/null ; then
|
|
cat /proc/partitions | grep md | while read line ; do
|
|
SMASHED_LINE=$line
|
|
MAJOR=`echo $SMASHED_LINE | cut -f 1 -d ' '`
|
|
if [ "$MAJOR" = "9" ]; then
|
|
list_md `echo $SMASHED_LINE | cut -f 3 -d ' ' | tr -d '/'` \
|
|
`echo $SMASHED_LINE | cut -f 4 -d ' '`
|
|
fi
|
|
done
|
|
fi
|
|
fdisk -l 2> /dev/null >> $TMP/SeTfdisk
|
|
fi
|
|
|
|
# Change the names to be the same as what the old fdisk used:
|
|
sed -i -e "s/Linux filesystem/Linux/g" $TMP/SeTfdisk
|
|
sed -i -e "s/EFI System/EFI System Partition/g" $TMP/SeTfdisk
|
|
sed -i -e "s,EFI (FAT-12/16/32),EFI System Partition,g" $TMP/SeTfdisk
|
|
|
|
cat $TMP/SeTfdisk
|