]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blobdiff - src/scripts/scanhd
Merge branch 'ppp-update' into beyond-next
[people/teissler/ipfire-2.x.git] / src / scripts / scanhd
index fbee30a55a4c34d8a7a401271f991b1450aecf7e..b208bbb1d1ab5f145774fbd638faeebf7d92e607 100644 (file)
@@ -1,11 +1,21 @@
 #!/bin/bash
-
 case "$1" in
        ide)
-               /sbin/kudzu -qps -c HD | egrep "desc|device" | awk -F': ' '{print $2}' | sed -e '/"$/a\\' -e "s/$/\;/g" | tr "\n" "XX" | sed -e "s/XX/\n/g" -e "s/\;X/\;/g" > /var/ipfire/extrahd/scan
+               rm -f /var/ipfire/extrahd/scan
+               for DEV in `find /sys/block/* -maxdepth 0 ! -name sr* ! -name ram* ! -name loop* -exec basename {} \; | sort | uniq`
+               do
+                       VENDOR=`cat /sys/block/$DEV/device/vendor 2>/dev/null`
+                       MODEL=`cat /sys/block/$DEV/device/model 2>/dev/null`
+                       REV=`cat /sys/block/$DEV/device/rev 2>/dev/null`
+                       echo "$DEV;$VENDOR $MODEL $REV" >> /var/ipfire/extrahd/scan
+               done
                ;;
        partitions)
-               cat /proc/partitions | awk '{print $4 ";"  $3 ";"}' | grep -v name | grep -v "^;;$" > /var/ipfire/extrahd/partitions
+               cat /proc/partitions | awk '{print $4 " " $3 }' | grep -v name | grep -v "^[[:space:]]*$" | \
+                       while read device size; do
+                               [ -z "${device}" ] && continue
+                               echo "${device};${size};$(blkid -c /dev/null -s UUID -o value /dev/${device});"
+                       done > /var/ipfire/extrahd/partitions
                ;;
        *)
                echo "Usage: $0 (ide|partitions)"