Есть скрипт для крона рабочий. Когда флешка вставленна, он ее монтирует.
Если его запустить и пока не появится флешка, должен ее примонтировать, но эта часть скипта не работает, где ошибка не подскажете?
Спасибо
#!/bin/sh
# Проверка задания точки монтирования. Если не задана, берется точка
# монтирования по умолчанию
if [ $# -lt 1 ]; then
mpoint="/mnt"
else
mpoint=$1
fi
# Подождать 1 секунду, пока usbd выполнит необходимые действия
sleep 2
# Подключение нового устройства всегда происходит на шину с максимальным номером
# Поэтому мы разбираем список, выдаваемый camcontrol devlist (по признаку ")")
# выбираем один символ из строки scbusX (шестой от начала строки), прибавляем
# пробел, составляем список и сортируем его по убыванию. Первый элемент списка
# будет шина, на которую подключилось устройство
umdevs=`camcontrol devlist | \
awk 'BEGIN {RS=")"} {print substr($0,index($0,"scbus") + 5, 1) + " "}' | \
sort -b -n -r`
# Берем первый элемент списка и увеличиваем его на единицу
umdev=`echo $umdevs | awk '{print $1}'`
ummax=$(($umdev+1))
# Если CAM еще не подключил устройство, пересканировать эту шину
camcontrol rescan $ummax 2> /dev/null
# Если рескан шины завершился неуспешно, значит CAM уже подключил устройство
# и оно находится на шине с выбранным максимальным номером
if [ $? -ne 0 ]; then
ummax=$umdev
fi
# Получаем еще раз список устройств и отбираем нужную шину
umdrive=`camcontrol devlist | grep -e "scbus$ummax"`
# Определяем имя устройства. Ищем в выводе строку "(da" и выбираем подстроку
# cо второго символа (пропускаем скобку) в три символа:
# <Generic Flash Disk 7.77> at scbus3 target 0 lun 0 (da0,pass3)
umdevs=`echo $umdrive | awk '{print substr($0,index($0,"(da") + 1,3)}'`
# Составляем полное имя устройства
devfull="/dev/"$umdevs"s1"
# Проверяем наличие такого файла в /dev. DEVFS создает файлы устройств с
# некоторой задержкой, так что ждем до тех пор, пока он не появится
sleep 1
while [ ! -e $devfull ];
do
sleep 1
done
# Монтируем, наконец, Flash. Включаем поддержку длинных имен и указываем
# как перекодировать имена файлов на русском языке
mount_msdosfs -l -L ru_RU.KOI8-R -D CP866 $devfull $mpoint