summaryrefslogtreecommitdiff
path: root/extras/scsi_id/gen_scsi_id_udev_rules.sh
diff options
context:
space:
mode:
Diffstat (limited to 'extras/scsi_id/gen_scsi_id_udev_rules.sh')
-rw-r--r--extras/scsi_id/gen_scsi_id_udev_rules.sh35
1 files changed, 15 insertions, 20 deletions
diff --git a/extras/scsi_id/gen_scsi_id_udev_rules.sh b/extras/scsi_id/gen_scsi_id_udev_rules.sh
index 07e21ebd50..874e94e8bb 100644
--- a/extras/scsi_id/gen_scsi_id_udev_rules.sh
+++ b/extras/scsi_id/gen_scsi_id_udev_rules.sh
@@ -27,22 +27,12 @@
prefix=disk-
scsi_id=/sbin/scsi_id
-dump_ids()
-{
- cd ${sysfs_dir}/block
- for b in sd*
- do
- echo -n "$b "
- $scsi_id -s /block/$b
- if [ $? != 0 ]
- then
- echo $0 failed for device $b >&2
- exit 1
- fi
- done
-}
-
sysfs_dir=$(mount | awk '$5 == "sysfs" {print $3}')
+if [ "$sysfs_dir" = "" ]
+then
+ sysfs_dir="/sys"
+ echo "Using sysfs mount point \"$sysfs_dir\"" >&2
+fi
c=$(ls /${sysfs_dir}/block/sd* 2>/dev/null | wc -l)
if [ $c = 0 ]
@@ -56,12 +46,17 @@ echo "# Start of autogenerated scsi_id rules. Edit the NAME portions of these"
echo "# rules to your liking."
echo "#"
first_line=yes
-dump_ids | while read in
+
+#
+cd ${sysfs_dir}/block
+for name in sd*
do
- set $in
- name=$1
- shift
- id="$*"
+ id=$($scsi_id -s /block/$name)
+ if [ $? != 0 ]
+ then
+ echo $0 failed for device $name exiting >&2
+ exit 1
+ fi
if [ $first_line = "yes" ]
then
first_line=no