for var in $blockdevs; do
drive=${var#HDPARM_}
- if [ -L "/proc/ide/${drive}" -o -d "/sys/block/${drive}" ]; then
+
+ # check if it is some ID
+ if [ -L /dev/disk/by-id/ata-$drive ]; then
+ dev=$(readlink -f /dev/disk/by-id/ata-$drive)
+ elif [ -L /dev/disk/by-id/scsi-$dev ]; then
+ dev=$(readlink -f /dev/disk/by-id/scsi-$drive)
+ else
+ dev=$drive
+ fi
+
+ # strip /dev
+ dev=${dev#/dev/}
+
+ if [ -L "/proc/ide/$dev" -o -d "/sys/block/$dev" ]; then
eval PARAMS=\$$var
- if [ -n "${PARAMS}" ]; then
+ if [ -n "$PARAMS" ]; then
show "Setting parameters for drive %s (%s)" "$drive" "$PARAMS"
busy
- /sbin/hdparm ${PARAMS} /dev/${drive}
+ /sbin/hdparm $PARAMS /dev/$dev
ok
fi
fi
Summary(uk.UTF-8): Утиліта для показу/установки параметрів жорстких дисків
Name: hdparm
Version: 9.37
-Release: 2
+Release: 3
License: BSD
Group: Applications/System
Source0: http://downloads.sourceforge.net/hdparm/%{name}-%{version}.tar.gz
# This file lets you set your hard drive parameters for better performance
# See hdparm(8) for details.
# Please use -q flag before any other or you will get garbage on screen
+# You can use here /dev node ("/dev/"-part stripped), also /dev/disks/by-id is accepted
#HDPARM_hda=
#HDPARM_hdb="-qm 16 -qa 16 -qu 1"
#HDPARM_hdb=
#HDPARM_hdc=
#HDPARM_hdd=
+#
+# for /dev/disk/by-id/ata-HDS722525VLSA80_VN6JTECFF1SP0A:
+#HDPARM_HDS722525VLSA80_VN6JTECFF1SP0A="-qy"