Instalando Aplicações

No GridUnesp, você não tem privilégios de administrador (root). Isso significa que não pode instalar programas nos diretórios padrão do sistema (/usr/, /lib/). No entanto, existem várias maneiras de instalar e utilizar aplicações científicas em seu próprio espaço.

Opções de Instalação

  1. Usar módulos já instalados (recomendado)

  2. Instalar localmente em seu /home/

  3. Usar Conda para gerenciar ambientes

  4. Usar containers (Apptainer)

  5. Solicitar instalação global à equipe

Instalação via Módulos (Já Instalados)

O GridUnesp possui dezenas de aplicações pré-instaladas e disponíveis como módulos.

Listando Módulos Disponíveis

module avail

Para buscar um módulo específico:

module avail nome_parcial

Carregando um Módulo

module load nome_do_modulo/versao

Exemplo:

module load gcc/10.2.0
module load openmpi/4.1.5

Verificando Módulos Carregados

module list

Descarregando um Módulo

module unload nome_do_modulo

Dica

Para mais detalhes sobre módulos, consulte a seção Solicitando Instalação Global.

Instalação Local no /home/

Muitas aplicações permitem especificar um diretório de instalação alternativo.

Usando –prefix (configure/make)

Exemplo de instalação local
# Download e descompactação
wget https://exemplo.com/aplicacao.tar.gz
tar -xzf aplicacao.tar.gz
cd aplicacao

# Configurar para instalar em /home/$USER/local
./configure --prefix=/home/$USER/local
make
make install

# Adicionar ao PATH
export PATH=/home/$USER/local/bin:$PATH
export LD_LIBRARY_PATH=/home/$USER/local/lib:$LD_LIBRARY_PATH

Para tornar permanente a utilização da instalação, adicione as linhas de PATH e LD_LIBRARY_PATH ao seu ~/.bashrc.

Instalação via Conda

Conda é um gerenciador de pacotes que permite criar ambientes isolados.

Criando um Ambiente

# Carregar o módulo Conda
module load miniconda/24.4.0-libmamba

# Criar ambiente
conda create -n meu_ambiente python=3.9

# Ativar ambiente
source activate meu_ambiente

Instalando Pacotes

conda install numpy pandas matplotlib
conda install -c bioconda samtools  # Canal específico

Listando Ambientes e Pacotes

conda info --envs          # Listar ambientes
conda list                 # Listar pacotes no ambiente atual
conda deactivate           # Sair do ambiente

Usando em Scripts de Submissão

script_conda.sh
#!/bin/bash
#SBATCH -J meu_job
#SBATCH -n 1
#SBATCH -t 01:00:00

export INPUT="entrada.dat meu_script.py"
export OUTPUT="saida.dat"

module load miniconda/24.4.0-libmamba
source activate meu_ambiente

job-nanny python meu_script.py

Instalação via Apptainer (Containers)

Apptainer permite executar aplicações em containers, útil quando:

  • A aplicação depende de bibliotecas específicas de outra distribuição Linux

  • Você precisa de um ambiente reprodutível

  • A instalação convencional é muito complexa

Criando uma Imagem

script_build_container.sh
#!/bin/bash
#SBATCH -J build_container
#SBATCH -t 02:00:00
#SBATCH -n 1

export INPUT="ubuntu.def"
export OUTPUT="ubuntu.sif"

job-nanny apptainer build ubuntu.sif ubuntu.def

Arquivo de definição (ubuntu.def):

Bootstrap: docker
From: ubuntu:20.04

%post
    apt-get update
    apt-get install -y python3 python3-pip
    pip3 install numpy pandas

%runscript
    python3 "$@"

Executando um Container

script_run_container.sh
#!/bin/bash
#SBATCH -J run_container
#SBATCH -t 01:00:00
#SBATCH -n 1

export INPUT="ubuntu.sif script.py dados/"
export OUTPUT="resultados/"

job-nanny apptainer exec ubuntu.sif python3 script.py

Dica

Consulte a seção Containers para exemplos mais avançados, incluindo MPI e GPU.

Solicitando Instalação Global

Se a aplicação:

  • É muito complexa para instalação local

  • Será útil para vários usuários

  • Requer configuração especial do sistema

Você pode solicitar à equipe do GridUnesp:

E-mail: support.ncc@unesp.br

Informações necessárias:

  • Nome da aplicação

  • Versão desejada

  • Link para documentação oficial

  • Instruções de instalação (se disponíveis)

Nota

A equipe avaliará a solicitação e poderá:

  • Instalar globalmente como módulo

  • Sugerir instalação local

  • Fornecer orientações específicas

Resumo dos Comandos

Comandos para gerenciamento de módulos

Comando

Descrição

module avail

Listar módulos disponíveis

module load nome

Carregar módulo

module list

Ver módulos carregados

module unload nome

Descarregar módulo

module purge

Descarregar todos

Ver também