#!/bin/bash
+###############################################################################
+# #
+# IPFire.org - A linux based firewall #
+# Copyright (C) 2007-2022 IPFire Team <info@ipfire.org> #
+# #
+# This program is free software: you can redistribute it and/or modify #
+# it under the terms of the GNU General Public License as published by #
+# the Free Software Foundation, either version 3 of the License, or #
+# (at your option) any later version. #
+# #
+# This program is distributed in the hope that it will be useful, #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
+# GNU General Public License for more details. #
+# #
+# You should have received a copy of the GNU General Public License #
+# along with this program. If not, see <http://www.gnu.org/licenses/>. #
+# #
+###############################################################################
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 "^[:space:]*$" | \
+ 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 -s UUID -o value /dev/${device});"
+ echo "${device};${size};$(blkid -c /dev/null -s UUID -o value /dev/${device});"
done > /var/ipfire/extrahd/partitions
;;
*)