2017-01-30 6 views
0

Мой qsub находится в SGE. Поэтому при запуске скрипта sh через cronjob я получаю сообщение об ошибке: qsub: command не найден. В настоящее время устанавливается путь: PATH =/USR/бен:/бенКак установить PATH SGE в cronjob

ответ

0

Вы можете либо установить PATH в начале сценария, например, с

#!/bin/sh 
PATH=$(/usr/bin/getconf PATH):/some/other/dir:/yet/another/dir 
...rest of script... 

или изменить запись кронтаб, чтобы обеспечить дополненной первоначальный PATH с

10 20 * * * PATH=/usr/bin:/bin:/some/other/dir:/yet/another/dir /path/to/script.sh 
+0

I задайте PATH согласно вашему предложению, но это дает мне ошибку: установите переменную среды SGE_ROOT. Когда я устанавливаю эту переменную, она дает мне e rror, связанный с этим путем, хотя я дал правильный путь. – Dharmendra

+0

@Dharmendra Возможно, эту переменную нужно экспортировать? Используйте 'SGE_ROOT = ...; экспортируйте PATH SGE_ROOT' в свой скрипт в начале. – Jens

1

Вы можете установить путь или использовать полный путь qsub как упоминалось @Jens.

Однако эта ситуация обычно также означает, что ваша оболочка входа в систему является источником файла, который устанавливает для вас множество переменных окружения (включая SGE_ROOT). Когда запущен ваш cronjob, этот файл не будет получен. Таким образом, помимо исправления вашего пути (или предоставления полного пути для qsub), вам также необходимо найти этот файл, а затем в верхней части вашего скрипта вам необходимо указать этот файл (или пройти через и вручную установить каждую соответствующую среду переменная).

В моей системе, этот файл находится в /u/local/etc/profile.d/sge.sh (так что я просто положить . /u/local/etc/profile.d/sge.sh в верхней части моего сценария, но расположение файла зависит от установки к установке. Вам просто нужно выследить, какой файл настройки SGE_ROOT когда вы войти (а также ряд других соответствующих переменных окружения, таких как SGE_ARCH)

(Если у вас есть особенно трудно найти какой файл, вы можете найти этот ответ полезным:. https://unix.stackexchange.com/a/154971/157777).