Pakiet Modules umożliwia łatwą i dynamiczną modyfikację zmiennych powłoki dostosowując ją do specyficznych wymagań danego pakietu oprogramowania. Dla każdego z pakietów oprogramowania dostępnego w Infrastrukturze PLGrid zdefiniowano odpowiadający mu moduł (lub moduły, jeśli istnieje więcej niż jedna wersja danego pakietu). Nazwy modułów dla aplikacji naukowych budowane są według schematu plgrid/apps/nazwa-programu/wersja
. W przypadku bibliotek schemat ma postać plgrid/libs/nazwa-biblioteki/wersja
, a dla programów narzędziowych (np. język oprogramowania Python) plgrid/tools/nazwa-narzedzia/wersja
. Zarówno dla pakietów oprogramowania jak i bibliotek przygotowano wersję też domyślną i przy jej ładowaniu ostatni człon modułu (tj. wersję)
można pominąć. Zmian dokonuje się za pomocą komendy module
i parametru określającego akcję.
module add <moduł>
lub module load <moduł>
– załadowanie modułu danego programumodule rm <moduł>
lub module unload <moduł>
– usunięcie modułu danego programumodule list
– wyświetlenie listy aktualnie załadowanych modułówmodule avail
– wyświetla listę wszystkich dostępnych modułówmodule avail <nazwa>
– wyświetla listę wszystkich dostępnych wersji oprogramowania o nazwie rozpoczynającej się od <nazwa>
module purge
– usunięcie wszystkich załadowanych modułówmodule show <moduł>
lub module display <moduł>
– wyświetl informacje nt. danego modułumodule switch <moduł-1> <moduł-2>
– wymiana modułów w powłoceZaładowanie najnowszej wersji kompilatora Intel
module add intel
module add intel
===Wykorzystanie własnych modułów (Zaawansowane) ===
Pakiet modules umożliwia również tworzenie własnych modułów. W tym celu należy załadować moduł {{use.own. Przy pierwszym załadowaniu modułu use.own zostanie założona w katalogu domowym użytkownika kartoteka {{privatemodules. W niej należy umieszczać własne moduły. Program {{modules automatycznie sprawdzi nowe zainstalowane moduły i doda je do listy dostępnych. W modułach można wykorzystywać funkcje języka TCL. Informacje jak tworzyć własne moduły znajdują się na stronie projektu.
===Uwagi ===
* Zaleca się ładować moduły jedynie w skryptach obliczeniowych, a nie w skryptach uruchamianych przy logowaniu na maszynę dostępową lub węzeł obliczeniowy. Dzięki temu łatwiej kontrolować środowisko uruchomieniowe oprogramowania, które ma zostać użyte oraz uniknąć konfliktów pomiędzy załadowanymi modułami.
* Komenda {{modules avail <nazwa> znajduje jedynie moduły zaczynające się od ciągu znaków {{<nazwa> dlatego, jeżeli poszukuje się modułów zawierających gdziekolwiek ciąg {{<nazwa>, należy wykonać polecenie
<pre>
module avail 2>&1 | grep <nazwa>