]> git.pld-linux.org Git - packages/util-linux.git/blame - blockdev.sh
dir attribute for dirs
[packages/util-linux.git] / blockdev.sh
CommitLineData
d18bf877
JR
1#!/bin/sh
2
3[ -f /etc/sysconfig/blockdev ] || exit 0
4
5blockdevs=$(awk -F= '!/^#/ && !/^$/ {if ($2) print $1}' /etc/sysconfig/blockdev)
6[ -n "$blockdevs" ] || exit 0
7
8# Source blockdev configuration.
9. /etc/sysconfig/blockdev
10
11for 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
30done
31
32exit 0
This page took 0.092174 seconds and 4 git commands to generate.