41 lines
1.1 KiB
Bash
Executable file
41 lines
1.1 KiB
Bash
Executable file
#!/bin/bash
|
||
|
||
# udev-update-symlinks.sh
|
||
# -----------------------
|
||
# Modifié par : Pierre-Elliott Bécue <peb@crans.org> (8 août 2012)
|
||
# Copyright : (c) 2012, Olivier Iffrig <iffrig@crans.org>
|
||
# Copyright : (c) 2008, Jeremie Dimino <jeremie@dimino.org>
|
||
# Licence : BSD3
|
||
|
||
|
||
# Ce script met à jour les liens symboliques dans /dev
|
||
|
||
if [[ $1 = "" ]]; then
|
||
BAIE="nols"
|
||
else
|
||
BAIE="$1"
|
||
fi
|
||
|
||
# On repère les disques montés depuis la baie dans le dossier
|
||
# /dev/disk/by-path/ip-*
|
||
cd /dev/disk/by-path/
|
||
|
||
for dev in ip-*; do
|
||
|
||
# /dev/disk/by-path/ip-blabla est un lien vers /dev/sdkr
|
||
# on utilise readlink pour avoir ce lien.
|
||
dev=$(readlink $dev | awk -F "/" '{print $3}')
|
||
symlink=iscsi_$(python /usr/scripts/gestion/iscsi/udev-get-iscsi-name.py $dev $BAIE)
|
||
|
||
# On linke dans /dev
|
||
cd /dev
|
||
if [ ! -e $symlink ]; then
|
||
echo "création du lien /dev/$symlink -> /dev/$dev"
|
||
ln -s $dev $symlink
|
||
elif [ -h $symlink -a $(readlink $symlink) != $dev ]; then
|
||
echo "mise à jour du lien /dev/$symlink -> /dev/$dev"
|
||
rm -f $symlink
|
||
ln -s $dev $symlink
|
||
fi
|
||
cd /dev/disk/by-path/
|
||
done
|