& ldquo; загрузка модуля & rdquo; команда не работает

Я пытаюсь скомпилировать «Глобальную модель климата» с помощью следующих команд.

module unload pgi gcc
module load gcc/4.6.3 pgi/11.8

Когда я выполняю их, терминал отвечает command not found.

Что я делаю не так? Как правильно это сделать?

12
задан 23 July 2017 в 14:21

5 ответов

Только суммировать предыдущие комментарии и ответы и добавить немного непосредственного опыта установки:

Вы ищете module команда обеспечивается пакетом Модулей Среды. Это - инструмент для изменения среды оболочки (ПУТЬ, но также и искажает и т.д.), и характерный для многих многопользовательских кластеров как Высокоэффективные Вычислительные кластеры.

Инструкции, которые Вы получили, были, вероятно, от некоторого кластера HPC, так как Вы хотите выполнить модель глобального климата. Читайте больше о Модулях Среды на HPC здесь.

Теперь для чего-то на самом деле связанного с Ubuntu: Это - на самом деле не так большая часть боли для установки Модулей Среды в соответствии с Ubuntu. Я просто выполнил в нем менее чем 10 минут для Ubuntu 14.10 и оболочки Bash.

Как упомянуто в других сообщениях, можно установить Модули Среды от repos (пакет environment-modules).

Затем Вы работаете add.modules. Это поместит несколько строк в Вашу оболочку initalization файл в этом случае ~/.bashrc:

case "$0" in
          -sh|sh|*/sh)  modules_shell=sh ;;
       -ksh|ksh|*/ksh)  modules_shell=ksh ;;
       -zsh|zsh|*/zsh)  modules_shell=zsh ;;
    -bash|bash|*/bash)  modules_shell=bash ;;
esac
module() { eval `/usr/Modules/$MODULE_VERSION/bin/modulecmd $modules_shell $*`; }
#module() { eval `/usr/bin/modulecmd $modules_shell $*`; }

Необходимо не прокомментировать последнюю строку и прокомментировать или удалить предпоследнее. Эта строка определяет module команда Вы искали. Это эффективно работает modulecmd bash плюс аргументы Вы даете его.

У меня есть чувство, что эта функция на самом деле не очень безопасна, потому что она оценивает что-либо, что Вы предоставляете ее в его аргументах. Некоторые пользователи могут, возможно, прокомментировать, как улучшить это.

Теперь просто необходимо создать некоторый каталог, содержащий так называемое modulefiles и добавьте его к $MODULEPATH, например, с module use /path/to/your/modulefiles. Существуют примеры для modulefiles там в межсетях.

Я нахожу это очень удобным инструментом не только для многопользовательских кластеров. Я использую его для переключения между различными дистрибутивами Python.

25
ответ дан 23 July 2017 в 14:21

Для тех, кто «скользит» (смотрит на тебя, Сет): это НЕ ВОПРОС О МОДУЛЯХ ЯДРА. Вопрос в том, как манипулировать переменными среды оболочки с помощью инструмента ENIRONMENT-MODULES. Если вы вообще знакомы с модулями ядра, вы поймете, что не существует стандартного инструмента ядра (сценария или иного) с именем «модуль». Все инструменты манипулирования модулями сокращают модуль как мод (lsmod, insmod, modprobe и т. Д.). И нет модуля с именем gcc.

Environment-modules ( http://modules.sourceforge.net/ ) - это еще один инструмент среды для переключения сред выполнения в оболочке. Это помогает людям, которым нужен Python 2.4 и Python 2.7 на одной машине. Или это помогает людям управлять компиляторами и библиотеками Intel v. GNU.

К сожалению, environment-modules не является пакетом для Ubuntu 12.04 LTS.

Опции включают установку из источника (перейдите по ссылке выше), обновление до 14.04 LTS или просмотр файлов deb. Из трех я бы установил из источника. Файл deb зависит от libtcl8.6, которая находится в том же затруднительном положении и недоступна для 12.04LTS.

0
ответ дан 23 July 2017 в 14:21

Возможно, вы пытаетесь использовать программный пакет, который не установлен на вашем компьютере. Конечно, я не совсем уверен, но я думаю, что вы пытаетесь использовать окружающие модули . Если это правильно, вы можете установить модули среды из стандартных репозиториев Ubuntu.

Но имейте в виду, что environment-modules - довольно старая программа. На домашней странице указано последнее обновление вспомогательного инструмента от 2011 года, уведомление об авторских правах не идет дальше 1999 года. Поэтому нет гарантии, что этот программный пакет работает безупречно с текущими версиями Ubuntu. Возможно, но вы не можете быть уверены.

0
ответ дан 23 July 2017 в 14:21

просто добавьте это в первую строку вашего скрипта. Тогда команда модуля будет прочитана как tsch.

#!/bin/tcsh
0
ответ дан 23 July 2017 в 14:21

Это не тот случай, когда module load не не работает , module load не является стандартной командой в Ubuntu.

Если вы пытаетесь загрузить существующий модуль, sudo modprobe <modulename> - это команда, которую вы ищете. И вы можете использовать rmmod или modprobe -r для выгрузки модуля.

0
ответ дан 23 July 2017 в 14:21

Другие вопросы по тегам:

Похожие вопросы: