]> git.pld-linux.org Git - packages/util-linux.git/blob - blockdev.sh
dir attribute for dirs
[packages/util-linux.git] / blockdev.sh
1 #!/bin/sh
2
3 [ -f /etc/sysconfig/blockdev ] || exit 0
4
5 blockdevs=$(awk -F= '!/^#/ && !/^$/ {if ($2) print $1}' /etc/sysconfig/blockdev)
6 [ -n "$blockdevs" ] || exit 0
7
8 # Source blockdev configuration.
9 . /etc/sysconfig/blockdev
10
11 for var in $blockdevs; do
12         realdrive=
13         drive=${var#BLOCKDEV_}
14         if [ -d "/sys/block/${drive}" -a -e "/dev/${drive}" ]; then
15                 realdrive="/dev/${drive}"
16         elif [ -e "/dev/mapper/${drive}" ]; then
17                 realdrive="/dev/mapper/${drive}"
18         elif drive=$(echo $drive | tr _ -) && [ -d "/sys/block/${drive}" -a -e "/dev/${drive}" ]; then
19                 realdrive="/dev/${drive}"
20         elif [ -e "/dev/mapper/${drive}" ]; then
21                 realdrive="/dev/mapper/${drive}"
22         fi
23
24         if [ -n "$realdrive" ]; then
25                 eval PARAMS=\$$var
26                 if [ -n "${PARAMS}" ]; then
27                         /sbin/blockdev ${PARAMS} $realdrive
28                 fi
29         fi
30 done
31
32 exit 0
This page took 0.077555 seconds and 3 git commands to generate.