Интерактивный режим Slurm - запустить предварительно заданную команду в начале

В моем кластере я могу получить оболочку для интерактивного режима, если я запустил:

srun -N 1 --ntasks-per-node = 1 --gres = gpu: 1 --pty zsh

Однако в этом кластере каждый выделенный узел имеет пустой каталог $ HOME (без .zshrc), который хранится на общем диске. Как я могу запустить в интерактивном режиме с предварительно заданной командой для автоматической загрузки моего .zshrc при входе в систему? то есть в идеале я бы хотел что-то вроде этого

srun -N 1 --ntasks-per-node = 1 --gres = gpu: 1 --pty zsh --runCommandOnLaunch = 'source /shared_drive/razvan/.zshrc'


person Razvan Valentin Marinescu    schedule 09.04.2020    source источник


Ответы (1)


Попробуйте с

$ZDOTDIR=/shared_drive/razvan/ srun -N 1 --ntasks-per-node=1 --gres=gpu:1 --pty zsh

После запуска Zsh будет искать файл запуска (zshrc) в $ZDOTDIR. (Подробнее см. здесь). Поскольку srun по умолчанию экспортирует все переменные среды в вызываемые им удаленные команды, Zsh должен загружать ваш RC-файл при запуске.

person damienfrancois    schedule 11.04.2020