next up previous contents
Next: Скорейший запуск задач для Up: Специальные дополнения о запуске Previous: Использование устройства ch_p4   Contents

Действия при автомонтировании.

Автомотирование - это динамическое присоединение файловых систем при необходимости. Его выполняют программы-автомоунтеры (automounters). Поскольку это очень удобно, многие автомоунтеры не могут распознать имена файловых систем, которые генерирует сам автомоунтер5. Например, если пользователь обращается к файлу `/home/me', автомоунтер может обнаружить, что он должен монтировать эту файловую систему и делает это в точке `/tmp_mnt/home/me'. К сожалению, если автомоунтеру в другой системе предоставлена `/tmp_mnt/home/me' вместо `/home/me', он может не обнаружить файловой системы. Это не было бы проблемой, если команда типа pwd вернула бы `/home/me' вместо '/tmp_mnt/home/me'; к сожалению, слишком легко получить путь, который автомоунтер не может распознать, хотя и должен это делать.

Чтобы справиться с этой проблемой, configure позволяет Вам определить программу-фильтр, если Вы выполните ее с опцией -automountfix=PROGRAM, где PROGRAM - это фильтр, читающий путь к файлу из стандартного ввода, делающий необходимые изменения и записывающий результат в стандартный вывод. mpirun использует эту программу, чтобы найти необходимые ему файлы. По определению значением PROGRAM является

sed -e s@/tmp_mnt/@/@g
Она использует команду sed, чтобы вырезать строку /tmp_mnt из имени файла. Простые скрипты sed, подобные этому могут быть достаточно длинны, до тех пор, пока они не включают в себя кавычки (простые или двойные) или используют % (это может пересекаться с командами shell в configure, выполняющими замену). Если Вам необходима более сложная обработка, используйте отдельный скрипт shell или программу.

В качестве другого примера некоторые системы генерируют пути в виде

/a/thishost/root/home/username/....
которые будут правильными только на машине thishost, но тажке имеют пути в форме
/u/home/username/....
которые верны везде. Для этого случая опция configure
-automountfix=`sed -e s@/a/./home@/u/home@g'
даст уверенность, что mpirun получит верное имя файла.

Alex Otwagin 2002-12-16