Re: [Rio-pm] Configuração de usuário não root no cpan Perl Roll em Rocks Cluster

2014-01-30 Por tôpico Stanislaw Pusep
Olá Nicole!
Já passei por situação semelhante à sua, quando não podia atualizar o Perl
default do sistema e a opção foi instalar um Perl mais atualizado avulso no
/usr/local. Para sempre usar o Perl do /usr/local, 3 medidas foram tomadas:

1. export PATH=/usr/local/bin:$PATH

2. Os shebangs de todos os scripts executáveis do projeto foram modificados
de:

#!/usr/bin/perl

para:

#!/usr/bin/env perl

3. local::lib foi utilizado para CPAN desovar no $HOME. O local::lib
requer uma intervenção do .profile do sistema, para inicializar o
environment apropriadamente. Seguem os passos para instalar o local::lib
dessa forma.

3.1. Download do local::lib:

$ wget
http://cpan.metacpan.org/authors/id/H/HA/HAARG/local-lib-2.04.tar.gz
$ tar xzvf local-lib-2.04.tar.gz
$ cd local-lib-2.04/

3.2. Instalação do local::lib:

$ perl Makefile.PL --bootstrap=$HOME/perl5
$ make
$ make test
$ make install

3.3. Ativando local::lib na inicialização da shell (Bash):

$ cat  PROFILE  $HOME/.profile
eval \$(perl -I\$HOME/perl5/lib/perl5/ -Mlocal::lib)
PROFILE
$

A idéia aqui é que rodar perl -I$HOME/perl5/lib/perl5/ -Mlocal::lib
retorna para STDOUT as tais das variáveis de ambiente que fazem o Perl
buscar instalação dos módulos em um lugar específico ($HOME). Pode
simplesmente colar essas variáveis direto no .profile, ou (como demonstrado
acima) rodar eval do output do Perl.

3.4. Carregar a configuração:

. $HOME/.profile

3.5. Prosseguindo com a configuração/teste do CPAN e do cpanm (essa
configuração faz as dependências serem instaladas automaticamente):

$ cpan

cpan[1] o conf prerequisites_policy follow
cpan[2] o conf commit
cpan[3] install App::cpanminus
cpan[4] quit

Boa sorte!


2014-01-29 Nicole Scherer bionica2007-p...@yahoo.com

  Boa tarde, queridos Mongers,

 eu não queria importuná-los com problemas simples, mas após três dias
 batendo a cabeça e vasculhando fóruns na internet sem solução para algumas
 das perguntas, recorro a vocês. Vou tentar explicar a novela.

 Montamos um cluster HPC para pesquisa usando o Rocks 6.1 (
 http://www.rocksclusters.org/) -- um tipo de linux que instala outro
 linux em todos os nós do cluster e gerencia tudo isso. Novidade pra mim,
 mas funciona. Esse Rocks instala os chamados Rolls, entre eles o próprio SO
 (neste caso o RHEL6) e outros Rolls úteis, como SGE, Ganglia, Web-Server,
 Bio, Perl (4.14.2) entre outros. Estes Rolls são instalados em /opt/ e as
 vezes coexistem com os binários do SO. Desta forma, tenho duas versões de
 Perl:

 - a do sistema (RHEL6):
 $ /usr/bin/perl -v
 This is perl, v5.10.1 (*) built for x86_64-linux-thread-multi

 - e a do Rocks:
 $ /opt/perl/bin/perl -v
 This is perl 5, version 14, subversion 2 (v5.14.2) built for
 x86_64-linux-thread-multi

 Cada qual com as suas bibliotecas.

   @INC:
 /usr/local/lib64/perl5
 /usr/local/share/perl5
 /usr/lib64/perl5/vendor_perl
 /usr/share/perl5/vendor_perl
 /usr/lib64/perl5
 /usr/share/perl5
 .
   @INC:
 /opt/perl/lib/site_perl/5.14.2/x86_64-linux-thread-multi
 /opt/perl/lib/site_perl/5.14.2
 /opt/perl/lib/5.14.2/x86_64-linux-thread-multi
 /opt/perl/lib/5.14.2
 .


 Agora é que começam meus problemas...

 Primeiro: Alguém já teve experiência com duas instalações coexistentes de
 Perl? Posso ter problemas de funcionamento no SO se eu mover  o
 /usr/bin/perl e criar um link do /opt/perl/bin/perl para /usr/bin/perl
 (uma vez que as shebang dos scripts costuma ter este endereço). Colocar
 simplesmente /opt/perl/bin no início do $PATH pode não ser a solução.


 O CPAN só está instalado na versão do Rocks, o que me motiva mais a
 deixá-lo como default.
 Como a maioria dos usuários não terão privilégios de root e além disso,
 qualquer instalação no sistema operacional tem que ser espelhada para todos
 os nós, a melhor opção para instalar pacotes é na home dos usuários,
 concordam? Então eu quero deixar tudo o mais fácil possível para que os
 usuários instalem os pacotes desejados. Como não teremos acesso direto à
 internet usei o minicpan para criar um mirror em uma pasta compartilhada
 com minha máquina local. Configurei o urllist do cpan pra ela e ficou tudo
 ok.
 Agora esbarrei em um problema que não estou achando resposta fácil.

 Quando executo o cpan pela primeira vez como usuário comum, da forma mais
 automática possível, ele cria, como esperado o arquivo MyConfig.pm e toda a
 estrutura de diretórios no home do usuário. Ele executa quase tudo com
 perfeição, substituindo o endereço default pelo do usuário em QUASE todos
 os itens, menos em prefs_dir.

 [hpcst06@crab ~]$ grep cpan .cpan/CPAN/MyConfig.pm
   'build_dir' = q[/home/hpcst06/.cpan/build],
   'cpan_home' = q[/home/hpcst06/.cpan],
   'histfile' = q[/home/hpcst06/.cpan/histfile],
   'keep_source_where' = q[/home/hpcst06/.cpan/sources],
   'prefs_dir' = q[/export/cpan/cpan/prefs],


 (O default cpan_home é /export/cpan/cpan )
 [hpcst06@crab ~]$ grep cpan /opt/perl/lib/5.14.2/CPAN/Config.pm
   'build_dir' 

Re: [Rio-pm] Configuração de usuário não root no cpan Perl Roll em Rocks Cluster

2014-01-30 Por tôpico Aureliano Guedes
Caraca. Complexo.
O melhor, foi ver a pela primeira vez uma mulher na bioinformatica.
Hello colega bioinformata.

Stanislaw Pusep creakt...@gmail.com escreveu:

Olá Nicole!
Já passei por situação semelhante à sua, quando não podia atualizar o Perl
default do sistema e a opção foi instalar um Perl mais atualizado avulso no
/usr/local. Para sempre usar o Perl do /usr/local, 3 medidas foram tomadas:

1. export PATH=/usr/local/bin:$PATH

2. Os shebangs de todos os scripts executáveis do projeto foram modificados
de:

#!/usr/bin/perl

para:

#!/usr/bin/env perl

3. local::lib foi utilizado para CPAN desovar no $HOME. O local::lib
requer uma intervenção do .profile do sistema, para inicializar o
environment apropriadamente. Seguem os passos para instalar o local::lib
dessa forma.

3.1. Download do local::lib:

$ wget
http://cpan.metacpan.org/authors/id/H/HA/HAARG/local-lib-2.04.tar.gz
$ tar xzvf local-lib-2.04.tar.gz
$ cd local-lib-2.04/

3.2. Instalação do local::lib:

$ perl Makefile.PL --bootstrap=$HOME/perl5
$ make
$ make test
$ make install

3.3. Ativando local::lib na inicialização da shell (Bash):

$ cat  PROFILE  $HOME/.profile
eval \$(perl -I\$HOME/perl5/lib/perl5/ -Mlocal::lib)
PROFILE
$

A idéia aqui é que rodar perl -I$HOME/perl5/lib/perl5/ -Mlocal::lib
retorna para STDOUT as tais das variáveis de ambiente que fazem o Perl
buscar instalação dos módulos em um lugar específico ($HOME). Pode
simplesmente colar essas variáveis direto no .profile, ou (como demonstrado
acima) rodar eval do output do Perl.

3.4. Carregar a configuração:

. $HOME/.profile

3.5. Prosseguindo com a configuração/teste do CPAN e do cpanm (essa
configuração faz as dependências serem instaladas automaticamente):

$ cpan

cpan[1] o conf prerequisites_policy follow
cpan[2] o conf commit
cpan[3] install App::cpanminus
cpan[4] quit

Boa sorte!


2014-01-29 Nicole Scherer bionica2007-p...@yahoo.com

  Boa tarde, queridos Mongers,

 eu não queria importuná-los com problemas simples, mas após três dias
 batendo a cabeça e vasculhando fóruns na internet sem solução para algumas
 das perguntas, recorro a vocês. Vou tentar explicar a novela.

 Montamos um cluster HPC para pesquisa usando o Rocks 6.1 (
 http://www.rocksclusters.org/) -- um tipo de linux que instala outro
 linux em todos os nós do cluster e gerencia tudo isso. Novidade pra mim,
 mas funciona. Esse Rocks instala os chamados Rolls, entre eles o próprio SO
 (neste caso o RHEL6) e outros Rolls úteis, como SGE, Ganglia, Web-Server,
 Bio, Perl (4.14.2) entre outros. Estes Rolls são instalados em /opt/ e as
 vezes coexistem com os binários do SO. Desta forma, tenho duas versões de
 Perl:

 - a do sistema (RHEL6):
 $ /usr/bin/perl -v
 This is perl, v5.10.1 (*) built for x86_64-linux-thread-multi

 - e a do Rocks:
 $ /opt/perl/bin/perl -v
 This is perl 5, version 14, subversion 2 (v5.14.2) built for
 x86_64-linux-thread-multi

 Cada qual com as suas bibliotecas.

   @INC:
 /usr/local/lib64/perl5
 /usr/local/share/perl5
 /usr/lib64/perl5/vendor_perl
 /usr/share/perl5/vendor_perl
 /usr/lib64/perl5
 /usr/share/perl5
 .
   @INC:
 /opt/perl/lib/site_perl/5.14.2/x86_64-linux-thread-multi
 /opt/perl/lib/site_perl/5.14.2
 /opt/perl/lib/5.14.2/x86_64-linux-thread-multi
 /opt/perl/lib/5.14.2
 .


 Agora é que começam meus problemas...

 Primeiro: Alguém já teve experiência com duas instalações coexistentes de
 Perl? Posso ter problemas de funcionamento no SO se eu mover  o
 /usr/bin/perl e criar um link do /opt/perl/bin/perl para /usr/bin/perl
 (uma vez que as shebang dos scripts costuma ter este endereço). Colocar
 simplesmente /opt/perl/bin no início do $PATH pode não ser a solução.


 O CPAN só está instalado na versão do Rocks, o que me motiva mais a
 deixá-lo como default.
 Como a maioria dos usuários não terão privilégios de root e além disso,
 qualquer instalação no sistema operacional tem que ser espelhada para todos
 os nós, a melhor opção para instalar pacotes é na home dos usuários,
 concordam? Então eu quero deixar tudo o mais fácil possível para que os
 usuários instalem os pacotes desejados. Como não teremos acesso direto à
 internet usei o minicpan para criar um mirror em uma pasta compartilhada
 com minha máquina local. Configurei o urllist do cpan pra ela e ficou tudo
 ok.
 Agora esbarrei em um problema que não estou achando resposta fácil.

 Quando executo o cpan pela primeira vez como usuário comum, da forma mais
 automática possível, ele cria, como esperado o arquivo MyConfig.pm e toda a
 estrutura de diretórios no home do usuário. Ele executa quase tudo com
 perfeição, substituindo o endereço default pelo do usuário em QUASE todos
 os itens, menos em prefs_dir.

 [hpcst06@crab ~]$ grep cpan .cpan/CPAN/MyConfig.pm
   'build_dir' = q[/home/hpcst06/.cpan/build],
   'cpan_home' = q[/home/hpcst06/.cpan],
   'histfile' = q[/home/hpcst06/.cpan/histfile],
   'keep_source_where' = q[/home/hpcst06/.cpan/sources],
   

Re: [Rio-pm] Configuração de usuário não root no cpan Perl Roll em Rocks Cluster

2014-01-30 Por tôpico Nicole Scherer
Obrigada Stanislaw e Aureliano!

Aureliano, a bioinformática está tomada por mulheres :-) Já foste no X-Meeting?

Stanislaw,

como
 gestora do cluster, meu objetivo é deixar para o usuário o sistema 
pronto para que ele possa instalar seus módulos localmente sem ter que 
fazer acrobacias. Eu já instalei o local::lib no sistema como root, 
então não seria necessário que o usuário instalasse novamente, correto? 
Ou ele precisaria fazer sua própria instalação?

Quando o usuário faz sua primeira incursão no cpan e realiza a configuração, 
aparece a seguinte mensagem:

---
local::lib is installed. You must now add the following environment
 variables
to your shell configuration files (or registry, if you are on Windows) and
then restart your command line shell and CPAN before installing modules:


Would you like me to append that to /home/hpcst06/.bashrc now? [yes] 

---

Porém, como podes ver, o following environment variables está vazio e nenhuma 
modificação é feita no .bashrc

Esta etapa é que deveria definir as tais variáveis de ambiente. Não entendo por 
que não está funcionando.
Desta forma, a única solução seria mesmo acrescentar estas linhas ao .profile a 
força.

Uma
 opção que tenho é criar toda a árvore de diretórios do perl e do cpan e
 colocar no /etc/skel para ser criada junto com o usuário, mas talvez 
isso seja demais, não?

Qual o objetivo de instalar o App::cpanminus? 
A partir daí o usuário deve
 usar cpanm ao invés de cpan?

Outra dúvida, se eu não instalar o 
local::lib nos nós do cluster (só instalei no frontend), pode dar 
problema na hora de executar os programas em paralelo? Digo, o 
local::lib só é chamado na instalação de módulos e na configuração do 
ambiente local, não é usado na execução dos módulos, certo? O home do 
usuário é montado em cada nó durante a execução, então o perl vai 
executar com as variáveis de ambiente já definidas pelo usuário, então 
não vai precisar executar o local::lib, certo?


Obrigada pela ajuda!


Abraços,
Nicole




Em Quinta-feira, 30 de Janeiro de 2014 8:38, Aureliano Guedes 
guedes_1...@hotmail.com escreveu:
 
Caraca. Complexo.
O melhor, foi ver a pela primeira vez uma mulher na bioinformatica.
Hello colega bioinformata.

Stanislaw Pusep creakt...@gmail.com escreveu:


Olá Nicole!
Já passei por situação semelhante à sua, quando não podia atualizar o Perl 
default do sistema e a opção foi instalar um Perl mais atualizado avulso no 
/usr/local. Para sempre usar o Perl do /usr/local, 3 medidas foram tomadas:

1. export PATH=/usr/local/bin:$PATH

2. Os shebangs de todos os scripts executáveis do projeto foram modificados de:

#!/usr/bin/perl

para:

#!/usr/bin/env perl

3. local::lib foi utilizado para CPAN desovar no $HOME. O local::lib requer 
uma intervenção do .profile do sistema, para inicializar o environment 
apropriadamente. Seguem os passos para instalar o local::lib dessa forma.

3.1. Download do local::lib:

$ wget http://cpan.metacpan.org/authors/id/H/HA/HAARG/local-lib-2.04.tar.gz
$ tar xzvf local-lib-2.04.tar.gz
$ cd local-lib-2.04/

3.2. Instalação do local::lib:

$ perl Makefile.PL --bootstrap=$HOME/perl5
$ make
$ make test
$ make install

3.3. Ativando local::lib na inicialização da shell (Bash):

$ cat  PROFILE  $HOME/.profile
eval \$(perl -I\$HOME/perl5/lib/perl5/ -Mlocal::lib)
PROFILE
$

A idéia aqui é que rodar perl -I$HOME/perl5/lib/perl5/ -Mlocal::lib retorna 
para STDOUT as tais das variáveis de ambiente que fazem o Perl buscar 
instalação dos módulos em um lugar específico ($HOME). Pode simplesmente colar 
essas variáveis direto no .profile, ou (como demonstrado acima) rodar eval do 
output do Perl.

3.4. Carregar a configuração:

. $HOME/.profile

3.5. Prosseguindo com a configuração/teste do CPAN e do cpanm (essa 
configuração faz as dependências serem instaladas automaticamente):

$ cpan

cpan[1] o conf prerequisites_policy follow
cpan[2] o conf commit
cpan[3] install App::cpanminus
cpan[4] quit

Boa sorte!



2014-01-29 Nicole Scherer bionica2007-p...@yahoo.com

Boa tarde, queridos Mongers,


eu não queria importuná-los com problemas simples, mas após três dias batendo 
a cabeça e vasculhando fóruns na internet sem solução para algumas das 
perguntas, recorro a vocês. Vou tentar explicar a novela.


Montamos um cluster HPC para pesquisa usando o Rocks 6.1 
(http://www.rocksclusters.org/) -- um tipo de linux que instala outro linux em 
todos os nós do cluster e gerencia tudo isso. Novidade pra mim, mas funciona. 
Esse Rocks instala os chamados Rolls, entre eles o próprio SO (neste caso o 
RHEL6) e outros Rolls úteis, como SGE, Ganglia, Web-Server, Bio, Perl (4.14.2) 
entre outros. Estes Rolls são instalados em /opt/ e as vezes coexistem com os 
binários do SO. Desta forma, tenho duas versões de Perl:


Re: [Rio-pm] Configuração de usuário não root no cpan Perl Roll em Rocks Cluster

2014-01-30 Por tôpico Nicole Scherer
Obrigada, Stanislaw!

Então o usuário só precisará rodar o perl -Mlocal::lib uma única vez e 
colocar este output no .bashrc ou .profile, certo? Tendo feito isso, ele nunca 
mais precisará invocar o local::lib, ou terá que fazer isto toda vez que for 
instalar novos pacotes? Com as variáveis de ambiente definidas ainda preciso do 
local::lib?

Abraços,
Nicole






Em Quinta-feira, 30 de Janeiro de 2014 11:06, Stanislaw Pusep 
creakt...@gmail.com escreveu:
 
Olá Nicole! O processo que eu descrevi é o de bootstrapping; se o Perl do seu 
/opt/perl já tiver local::lib instalado como root, não precisa dessa etapa.
O que acontece se você rodar perl -Mlocal::lib?
Aqui, por exemplo, aparece:

PATH=/Users/stas/perl5/bin${PATH+:}$PATH;
export PATH;
PERL5LIB=/Users/stas/perl5/lib/perl5${PERL5LIB+:}$PERL5LIB;
export PERL5LIB;
PERL_LOCAL_LIB_ROOT=/Users/stas/perl5${PERL_LOCAL_LIB_ROOT+:}$PERL_LOCAL_LIB_ROOT;
export PERL_LOCAL_LIB_ROOT;
PERL_MB_OPT=--install_base \/Users/stas/perl5\;
export PERL_MB_OPT;
PERL_MM_OPT=INSTALL_BASE=/Users/stas/perl5;
export PERL_MM_OPT;

Se você colar o output produzido no seu sistema para o .bashrc/.profile, o Perl 
se sentirá em casa no $HOME :)
O cpanminus é opcional; única coisa absolutamente necessária é que perl 
-Mlocal::lib seja rodado para inicializar o $HOME/perl5, e que as variáveis de 
ambiente estejam definidas do jeito que o perl -Mlocal::lib diz.



2014-01-30 Nicole Scherer bionica2007-p...@yahoo.com

Obrigada Stanislaw e Aureliano!

Aureliano, a bioinformática está tomada por mulheres :-) Já foste no X-Meeting?

Stanislaw,

como
 gestora do cluster, meu objetivo é deixar para o usuário o sistema 
pronto para que ele possa instalar seus módulos localmente sem ter que 
fazer acrobacias. Eu já instalei o local::lib no sistema como root, 
então não seria necessário que o usuário instalasse novamente, correto? 
Ou ele precisaria fazer sua própria instalação?

Quando o usuário faz sua primeira incursão no cpan e realiza a configuração, 
aparece a seguinte mensagem:

---
local::lib is installed. You must now add the following environment
 variables
to your shell configuration files (or registry, if you are on Windows) and
then restart your command line shell and CPAN before installing modules:


Would you like me to append that to /home/hpcst06/.bashrc now? [yes] 

---

Porém, como podes ver, o following environment variables está vazio e 
nenhuma modificação é feita no .bashrc

Esta etapa é que deveria definir as tais variáveis de ambiente. Não entendo 
por que não está funcionando.
Desta forma, a única solução seria mesmo acrescentar estas linhas ao .profile 
a força.

Uma
 opção que tenho é criar toda a árvore de diretórios do perl e do cpan e
 colocar no /etc/skel para ser criada junto com o usuário, mas talvez 
isso seja demais, não?

Qual o objetivo de instalar o App::cpanminus? 
A partir daí o usuário deve
 usar cpanm ao invés de cpan?

Outra dúvida, se eu não instalar o 
local::lib nos nós do cluster (só instalei no frontend), pode dar 
problema na hora de executar os programas em paralelo? Digo, o 
local::lib só é chamado na instalação de módulos e na configuração do 
ambiente local, não é usado na execução dos módulos, certo? O home do 
usuário é montado em cada nó durante a execução, então o perl vai 
executar com as variáveis de ambiente já definidas pelo usuário, então 
não vai precisar executar o local::lib, certo?


Obrigada pela ajuda!


Abraços,
Nicole




Em Quinta-feira, 30 de Janeiro de 2014 8:38, Aureliano Guedes 
guedes_1...@hotmail.com escreveu:
 
Caraca. Complexo.
O melhor, foi ver a pela primeira vez uma mulher na bioinformatica.
Hello colega bioinformata.

Stanislaw Pusep creakt...@gmail.com escreveu:


Olá Nicole!
Já passei por situação semelhante à sua, quando não podia atualizar o Perl 
default do sistema e a opção foi instalar um Perl mais atualizado avulso no 
/usr/local. Para sempre usar o Perl do /usr/local, 3 medidas foram tomadas:


1. export PATH=/usr/local/bin:$PATH


2. Os shebangs de todos os scripts executáveis do projeto foram modificados de:


#!/usr/bin/perl


para:


#!/usr/bin/env perl


3. local::lib foi utilizado para CPAN desovar no $HOME. O local::lib requer 
uma intervenção do .profile do sistema, para inicializar o environment 
apropriadamente. Seguem os passos para instalar o local::lib dessa forma.


3.1. Download do local::lib:


$ wget http://cpan.metacpan.org/authors/id/H/HA/HAARG/local-lib-2.04.tar.gz
$ tar xzvf local-lib-2.04.tar.gz
$ cd local-lib-2.04/


3.2. Instalação do local::lib:


$ perl Makefile.PL --bootstrap=$HOME/perl5
$ make
$ make test
$ make install


3.3. Ativando local::lib na inicialização da shell (Bash):


$ cat  PROFILE  $HOME/.profile
eval \$(perl -I\$HOME/perl5/lib/perl5/ 

Re: [Rio-pm] Configuração de usuário não root no cpan Perl Roll em Rocks Cluster

2014-01-30 Por tôpico Stanislaw Pusep
Isso mesmo; na primeira vez em que perl -Mlocal::lib roda ele cria os
diretórios necessários. Se salvar as variáveis de ambiente, não precisa
rodar nunca mais.
Entretanto, as variáveis serão diferentes para cada usuário. Para melhorar
a automação, basta colocar no final do /etc/profile (sim, o do sistema):
eval $(perl -Mlocal::lib). Desse jeito os usuários automagicamente terão
local::lib configurado ao fazer o login :)


2014-01-30 Nicole Scherer bionica2007-p...@yahoo.com

 Obrigada, Stanislaw!

 Então o usuário só precisará rodar o perl -Mlocal::lib uma única vez e
 colocar este output no .bashrc ou .profile, certo? Tendo feito isso, ele
 nunca mais precisará invocar o local::lib, ou terá que fazer isto toda vez
 que for instalar novos pacotes? Com as variáveis de ambiente definidas
 ainda preciso do local::lib?

 Abraços,
 Nicole




   Em Quinta-feira, 30 de Janeiro de 2014 11:06, Stanislaw Pusep 
 creakt...@gmail.com escreveu:
  Olá Nicole! O processo que eu descrevi é o de bootstrapping; se o Perl
 do seu /opt/perl já tiver local::lib instalado como root, não precisa dessa
 etapa.
 O que acontece se você rodar perl -Mlocal::lib?
 Aqui, por exemplo, aparece:

 PATH=/Users/stas/perl5/bin${PATH+:}$PATH;
 export PATH;
 PERL5LIB=/Users/stas/perl5/lib/perl5${PERL5LIB+:}$PERL5LIB;
 export PERL5LIB;

 PERL_LOCAL_LIB_ROOT=/Users/stas/perl5${PERL_LOCAL_LIB_ROOT+:}$PERL_LOCAL_LIB_ROOT;
 export PERL_LOCAL_LIB_ROOT;
 PERL_MB_OPT=--install_base \/Users/stas/perl5\;
 export PERL_MB_OPT;
 PERL_MM_OPT=INSTALL_BASE=/Users/stas/perl5;
 export PERL_MM_OPT;

 Se você colar o output produzido no seu sistema para o .bashrc/.profile, o
 Perl se sentirá em casa no $HOME :)
 O cpanminus é opcional; única coisa absolutamente necessária é que perl
 -Mlocal::lib seja rodado para inicializar o $HOME/perl5, e que as
 variáveis de ambiente estejam definidas do jeito que o perl -Mlocal::lib
 diz.


 2014-01-30 Nicole Scherer bionica2007-p...@yahoo.com

 Obrigada Stanislaw e Aureliano!

 Aureliano, a bioinformática está tomada por mulheres :-) Já foste no
 X-Meeting?

 Stanislaw,

 como gestora do cluster, meu objetivo é deixar para o usuário o sistema
 pronto para que ele possa instalar seus módulos localmente sem ter que
 fazer acrobacias. Eu já instalei o local::lib no sistema como root, então
 não seria necessário que o usuário instalasse novamente, correto? Ou ele
 precisaria fazer sua própria instalação?

 Quando o usuário faz sua primeira incursão no cpan e realiza a
 configuração, aparece a seguinte mensagem:


 ---
 local::lib is installed. You must now add the following environment
 variables
 to your shell configuration files (or registry, if you are on Windows) and
 then restart your command line shell and CPAN before installing modules:


 Would you like me to append that to /home/hpcst06/.bashrc now? [yes]


 ---

 Porém, como podes ver, o following environment variables está vazio e
 nenhuma modificação é feita no .bashrc

 Esta etapa é que deveria definir as tais variáveis de ambiente. Não
 entendo por que não está funcionando.
 Desta forma, a única solução seria mesmo acrescentar estas linhas ao
 .profile a força.

 Uma opção que tenho é criar toda a árvore de diretórios do perl e do cpan
 e colocar no /etc/skel para ser criada junto com o usuário, mas talvez isso
 seja demais, não?

 Qual o objetivo de instalar o App::cpanminus?
 A partir daí o usuário deve usar cpanm ao invés de cpan?

 Outra dúvida, se eu não instalar o local::lib nos nós do cluster (só
 instalei no frontend), pode dar problema na hora de executar os programas
 em paralelo? Digo, o local::lib só é chamado na instalação de módulos e na
 configuração do ambiente local, não é usado na execução dos módulos, certo?
 O home do usuário é montado em cada nó durante a execução, então o perl vai
 executar com as variáveis de ambiente já definidas pelo usuário, então não
 vai precisar executar o local::lib, certo?


 Obrigada pela ajuda!


 Abraços,
 Nicole


   Em Quinta-feira, 30 de Janeiro de 2014 8:38, Aureliano Guedes 
 guedes_1...@hotmail.com escreveu:
   Caraca. Complexo.
 O melhor, foi ver a pela primeira vez uma mulher na bioinformatica.
 Hello colega bioinformata.

 Stanislaw Pusep creakt...@gmail.com escreveu:

   Olá Nicole!
 Já passei por situação semelhante à sua, quando não podia atualizar o Perl
 default do sistema e a opção foi instalar um Perl mais atualizado avulso no
 /usr/local. Para sempre usar o Perl do /usr/local, 3 medidas foram tomadas:

  1. export PATH=/usr/local/bin:$PATH

  2. Os shebangs de todos os scripts executáveis do projeto foram
 modificados de:

  #!/usr/bin/perl

  para:

  #!/usr/bin/env perl

  3. local::lib foi utilizado para CPAN desovar no $HOME. O local::lib
 requer uma intervenção do .profile do 

Re: [Rio-pm] Configuração de usuário não root no cpan Perl Roll em Rocks Cluster

2014-01-30 Por tôpico Renato Santos
Posso estar falando besteira, mas da pra você configurar o perlbrew também
pra ser compartilhado. Mas aí quando um usuário instalar um módulo, todos
os outros vão enxergar esse módulo também
On Jan 30, 2014 12:02 PM, Nicole Scherer bionica2007-p...@yahoo.com
wrote:

 Oi Stanislaw,

 era exatamente isso que eu queria evitar, ter que invocar o local::lib
 pelo profile, pois assim, teria que instalá-lo em todos os nós do cluster,
 e isso seria uma outra acrobacia, devido a forma que o rocks funciona.
 Vou pensar um uma estratégia para colocar no .bashrc do usuário durante a
 configuração, como deveria ter sido feito pelo FirstTime.pm, mas não foi.
 Ainda não entendi por que não está funcionando.

 De toda forma, muito obrigada

 Abraços,
 Nicole



   Em Quinta-feira, 30 de Janeiro de 2014 11:46, Stanislaw Pusep 
 creakt...@gmail.com escreveu:
  Isso mesmo; na primeira vez em que perl -Mlocal::lib roda ele cria os
 diretórios necessários. Se salvar as variáveis de ambiente, não precisa
 rodar nunca mais.
 Entretanto, as variáveis serão diferentes para cada usuário. Para melhorar
 a automação, basta colocar no final do /etc/profile (sim, o do sistema):
 eval $(perl -Mlocal::lib). Desse jeito os usuários automagicamente terão
 local::lib configurado ao fazer o login :)


 2014-01-30 Nicole Scherer bionica2007-p...@yahoo.com

 Obrigada, Stanislaw!

 Então o usuário só precisará rodar o perl -Mlocal::lib uma única vez e
 colocar este output no .bashrc ou .profile, certo? Tendo feito isso, ele
 nunca mais precisará invocar o local::lib, ou terá que fazer isto toda vez
 que for instalar novos pacotes? Com as variáveis de ambiente definidas
 ainda preciso do local::lib?

 Abraços,
 Nicole




   Em Quinta-feira, 30 de Janeiro de 2014 11:06, Stanislaw Pusep 
 creakt...@gmail.com escreveu:
  Olá Nicole! O processo que eu descrevi é o de bootstrapping; se o Perl
 do seu /opt/perl já tiver local::lib instalado como root, não precisa dessa
 etapa.
 O que acontece se você rodar perl -Mlocal::lib?
 Aqui, por exemplo, aparece:

 PATH=/Users/stas/perl5/bin${PATH+:}$PATH;
 export PATH;
 PERL5LIB=/Users/stas/perl5/lib/perl5${PERL5LIB+:}$PERL5LIB;
 export PERL5LIB;

 PERL_LOCAL_LIB_ROOT=/Users/stas/perl5${PERL_LOCAL_LIB_ROOT+:}$PERL_LOCAL_LIB_ROOT;
 export PERL_LOCAL_LIB_ROOT;
 PERL_MB_OPT=--install_base \/Users/stas/perl5\;
 export PERL_MB_OPT;
 PERL_MM_OPT=INSTALL_BASE=/Users/stas/perl5;
 export PERL_MM_OPT;

 Se você colar o output produzido no seu sistema para o .bashrc/.profile, o
 Perl se sentirá em casa no $HOME :)
 O cpanminus é opcional; única coisa absolutamente necessária é que perl
 -Mlocal::lib seja rodado para inicializar o $HOME/perl5, e que as
 variáveis de ambiente estejam definidas do jeito que o perl -Mlocal::lib
 diz.


 2014-01-30 Nicole Scherer bionica2007-p...@yahoo.com

 Obrigada Stanislaw e Aureliano!

 Aureliano, a bioinformática está tomada por mulheres :-) Já foste no
 X-Meeting?

 Stanislaw,

 como gestora do cluster, meu objetivo é deixar para o usuário o sistema
 pronto para que ele possa instalar seus módulos localmente sem ter que
 fazer acrobacias. Eu já instalei o local::lib no sistema como root, então
 não seria necessário que o usuário instalasse novamente, correto? Ou ele
 precisaria fazer sua própria instalação?

 Quando o usuário faz sua primeira incursão no cpan e realiza a
 configuração, aparece a seguinte mensagem:


 ---
 local::lib is installed. You must now add the following environment
 variables
 to your shell configuration files (or registry, if you are on Windows) and
 then restart your command line shell and CPAN before installing modules:


 Would you like me to append that to /home/hpcst06/.bashrc now? [yes]


 ---

 Porém, como podes ver, o following environment variables está vazio e
 nenhuma modificação é feita no .bashrc

 Esta etapa é que deveria definir as tais variáveis de ambiente. Não
 entendo por que não está funcionando.
 Desta forma, a única solução seria mesmo acrescentar estas linhas ao
 .profile a força.

 Uma opção que tenho é criar toda a árvore de diretórios do perl e do cpan
 e colocar no /etc/skel para ser criada junto com o usuário, mas talvez isso
 seja demais, não?

 Qual o objetivo de instalar o App::cpanminus?
 A partir daí o usuário deve usar cpanm ao invés de cpan?

 Outra dúvida, se eu não instalar o local::lib nos nós do cluster (só
 instalei no frontend), pode dar problema na hora de executar os programas
 em paralelo? Digo, o local::lib só é chamado na instalação de módulos e na
 configuração do ambiente local, não é usado na execução dos módulos, certo?
 O home do usuário é montado em cada nó durante a execução, então o perl vai
 executar com as variáveis de ambiente já definidas pelo usuário, então não
 vai precisar executar o 

Re: [Rio-pm] Configuração de usuário não root no cpan Perl Roll em Rocks Cluster

2014-01-30 Por tôpico Blabos de Blebe
Pessoal,

O perlbrew não ajudaria não?

Porque ele já cuida automagicamente de toda a complicação.

Seriam apenas os comandos:

$ curl -L http://install.perlbrew.pl | bash
$ echo source ~/perl5/perlbrew/etc/bashrc  .bashrc
$ perlbrew install perl-5.18.2
$ perlbrew switch perl-5.18.2
$ perlbrew install-cpanm
$ cpanm My::Incredible::Module


[]'s





2014-01-30 Stanislaw Pusep creakt...@gmail.com

 Isso mesmo; na primeira vez em que perl -Mlocal::lib roda ele cria os
 diretórios necessários. Se salvar as variáveis de ambiente, não precisa
 rodar nunca mais.
 Entretanto, as variáveis serão diferentes para cada usuário. Para melhorar
 a automação, basta colocar no final do /etc/profile (sim, o do sistema):
 eval $(perl -Mlocal::lib). Desse jeito os usuários automagicamente terão
 local::lib configurado ao fazer o login :)


 2014-01-30 Nicole Scherer bionica2007-p...@yahoo.com

 Obrigada, Stanislaw!

 Então o usuário só precisará rodar o perl -Mlocal::lib uma única vez e
 colocar este output no .bashrc ou .profile, certo? Tendo feito isso, ele
 nunca mais precisará invocar o local::lib, ou terá que fazer isto toda vez
 que for instalar novos pacotes? Com as variáveis de ambiente definidas
 ainda preciso do local::lib?

 Abraços,
 Nicole




   Em Quinta-feira, 30 de Janeiro de 2014 11:06, Stanislaw Pusep 
 creakt...@gmail.com escreveu:
  Olá Nicole! O processo que eu descrevi é o de bootstrapping; se o Perl
 do seu /opt/perl já tiver local::lib instalado como root, não precisa dessa
 etapa.
 O que acontece se você rodar perl -Mlocal::lib?
 Aqui, por exemplo, aparece:

 PATH=/Users/stas/perl5/bin${PATH+:}$PATH;
 export PATH;
 PERL5LIB=/Users/stas/perl5/lib/perl5${PERL5LIB+:}$PERL5LIB;
 export PERL5LIB;

 PERL_LOCAL_LIB_ROOT=/Users/stas/perl5${PERL_LOCAL_LIB_ROOT+:}$PERL_LOCAL_LIB_ROOT;
 export PERL_LOCAL_LIB_ROOT;
 PERL_MB_OPT=--install_base \/Users/stas/perl5\;
 export PERL_MB_OPT;
 PERL_MM_OPT=INSTALL_BASE=/Users/stas/perl5;
 export PERL_MM_OPT;

 Se você colar o output produzido no seu sistema para o .bashrc/.profile,
 o Perl se sentirá em casa no $HOME :)
 O cpanminus é opcional; única coisa absolutamente necessária é que perl
 -Mlocal::lib seja rodado para inicializar o $HOME/perl5, e que as
 variáveis de ambiente estejam definidas do jeito que o perl -Mlocal::lib
 diz.


 2014-01-30 Nicole Scherer bionica2007-p...@yahoo.com

 Obrigada Stanislaw e Aureliano!

 Aureliano, a bioinformática está tomada por mulheres :-) Já foste no
 X-Meeting?

 Stanislaw,

 como gestora do cluster, meu objetivo é deixar para o usuário o sistema
 pronto para que ele possa instalar seus módulos localmente sem ter que
 fazer acrobacias. Eu já instalei o local::lib no sistema como root, então
 não seria necessário que o usuário instalasse novamente, correto? Ou ele
 precisaria fazer sua própria instalação?

 Quando o usuário faz sua primeira incursão no cpan e realiza a
 configuração, aparece a seguinte mensagem:


 ---
 local::lib is installed. You must now add the following environment
 variables
 to your shell configuration files (or registry, if you are on Windows) and
 then restart your command line shell and CPAN before installing modules:


 Would you like me to append that to /home/hpcst06/.bashrc now? [yes]


 ---

 Porém, como podes ver, o following environment variables está vazio e
 nenhuma modificação é feita no .bashrc

 Esta etapa é que deveria definir as tais variáveis de ambiente. Não
 entendo por que não está funcionando.
 Desta forma, a única solução seria mesmo acrescentar estas linhas ao
 .profile a força.

 Uma opção que tenho é criar toda a árvore de diretórios do perl e do cpan
 e colocar no /etc/skel para ser criada junto com o usuário, mas talvez isso
 seja demais, não?

 Qual o objetivo de instalar o App::cpanminus?
 A partir daí o usuário deve usar cpanm ao invés de cpan?

 Outra dúvida, se eu não instalar o local::lib nos nós do cluster (só
 instalei no frontend), pode dar problema na hora de executar os programas
 em paralelo? Digo, o local::lib só é chamado na instalação de módulos e na
 configuração do ambiente local, não é usado na execução dos módulos, certo?
 O home do usuário é montado em cada nó durante a execução, então o perl vai
 executar com as variáveis de ambiente já definidas pelo usuário, então não
 vai precisar executar o local::lib, certo?


 Obrigada pela ajuda!


 Abraços,
 Nicole


   Em Quinta-feira, 30 de Janeiro de 2014 8:38, Aureliano Guedes 
 guedes_1...@hotmail.com escreveu:
   Caraca. Complexo.
 O melhor, foi ver a pela primeira vez uma mulher na bioinformatica.
 Hello colega bioinformata.

 Stanislaw Pusep creakt...@gmail.com escreveu:

   Olá Nicole!
 Já passei por situação semelhante à sua, quando não podia atualizar o
 Perl default do sistema e a opção foi 

Re: [Rio-pm] Configuração de usuário não root no cpan Perl Roll em Rocks Cluster

2014-01-30 Por tôpico Tiago Peczenyj
eu não gosto de alterar o perl do sistema.

mas posso estar sendo paranoico.


2014-01-30 Nicole Scherer bionica2007-p...@yahoo.com

 Oi Blabos,

 Pelo que entendi, o perlbrew (que deve ser fabuloso) cuida de novas
 instalações, tanto locais, quando no sistema, caso seja de interesse do
 admin.
 No meu caso específico, já tenho uma outra versão de perl, instalada pelo
 Rocks em /opt/perl e disponível para todos os nós do cluster. Esse Perl
 Roll já vem com alguns módulos especiais para cluster e para
 bioinformática, e também vem com o CPAN, que o do sistema não vem. O meu
 objetivo é preparar o cluster de tal forma, que os usuários possam utilizar
 esta versão bombada do Perl sem ter que brigar comigo :-)
 Minha primeira ideia era colocar o /opt/perl/bin no início do $PATH de
 todo mundo, forçando para ser o perl padrão, mas fiquei com receio de que
 algum programa do sistema RHEL6 dependesse da instalação do fabricante.
 Estou nesse dilema porque é uma máquina de uso compartilhado. Tenho receio
 de colocar no $PATH e o usuário ter problemas porque os scripts que usa tem
 shebang #!/usr/bin/perl e sejam chamados como executáveis. (Em
 bioinfomática usamos muitos scripts feitos por terceiros).
 Claro que se o usuário quiser usar o perlbrew, ele pode, mas não poderá
 usar o curl para fazer isto, pois a máquina está configurada para não
 acessar a internet. Para o CPAN criei um mirror local.

 Sei lá, devo estar fazendo tempestade em copo d'água. Tenho é que deixar
 tudo isso bem claro no guia do usuário e deixar que eles decidam.

 Obrigada!!!
 Nicole



   Em Quinta-feira, 30 de Janeiro de 2014 12:12, Blabos de Blebe 
 bla...@gmail.com escreveu:
  Pessoal,

 O perlbrew não ajudaria não?

 Porque ele já cuida automagicamente de toda a complicação.

 Seriam apenas os comandos:

 $ curl -L http://install.perlbrew.pl | bash
 $ echo source ~/perl5/perlbrew/etc/bashrc  .bashrc
 $ perlbrew install perl-5.18.2
 $ perlbrew switch perl-5.18.2
 $ perlbrew install-cpanm
 $ cpanm My::Incredible::Module


 []'s





 2014-01-30 Stanislaw Pusep creakt...@gmail.com

 Isso mesmo; na primeira vez em que perl -Mlocal::lib roda ele cria os
 diretórios necessários. Se salvar as variáveis de ambiente, não precisa
 rodar nunca mais.
 Entretanto, as variáveis serão diferentes para cada usuário. Para melhorar
 a automação, basta colocar no final do /etc/profile (sim, o do sistema):
 eval $(perl -Mlocal::lib). Desse jeito os usuários automagicamente terão
 local::lib configurado ao fazer o login :)


 2014-01-30 Nicole Scherer bionica2007-p...@yahoo.com

 Obrigada, Stanislaw!

 Então o usuário só precisará rodar o perl -Mlocal::lib uma única vez e
 colocar este output no .bashrc ou .profile, certo? Tendo feito isso, ele
 nunca mais precisará invocar o local::lib, ou terá que fazer isto toda vez
 que for instalar novos pacotes? Com as variáveis de ambiente definidas
 ainda preciso do local::lib?

 Abraços,
 Nicole




   Em Quinta-feira, 30 de Janeiro de 2014 11:06, Stanislaw Pusep 
 creakt...@gmail.com escreveu:
  Olá Nicole! O processo que eu descrevi é o de bootstrapping; se o Perl
 do seu /opt/perl já tiver local::lib instalado como root, não precisa dessa
 etapa.
 O que acontece se você rodar perl -Mlocal::lib?
 Aqui, por exemplo, aparece:

 PATH=/Users/stas/perl5/bin${PATH+:}$PATH;
 export PATH;
 PERL5LIB=/Users/stas/perl5/lib/perl5${PERL5LIB+:}$PERL5LIB;
 export PERL5LIB;

 PERL_LOCAL_LIB_ROOT=/Users/stas/perl5${PERL_LOCAL_LIB_ROOT+:}$PERL_LOCAL_LIB_ROOT;
 export PERL_LOCAL_LIB_ROOT;
 PERL_MB_OPT=--install_base \/Users/stas/perl5\;
 export PERL_MB_OPT;
 PERL_MM_OPT=INSTALL_BASE=/Users/stas/perl5;
 export PERL_MM_OPT;

 Se você colar o output produzido no seu sistema para o .bashrc/.profile, o
 Perl se sentirá em casa no $HOME :)
 O cpanminus é opcional; única coisa absolutamente necessária é que perl
 -Mlocal::lib seja rodado para inicializar o $HOME/perl5, e que as
 variáveis de ambiente estejam definidas do jeito que o perl -Mlocal::lib
 diz.


 2014-01-30 Nicole Scherer bionica2007-p...@yahoo.com

 Obrigada Stanislaw e Aureliano!

 Aureliano, a bioinformática está tomada por mulheres :-) Já foste no
 X-Meeting?

 Stanislaw,

 como gestora do cluster, meu objetivo é deixar para o usuário o sistema
 pronto para que ele possa instalar seus módulos localmente sem ter que
 fazer acrobacias. Eu já instalei o local::lib no sistema como root, então
 não seria necessário que o usuário instalasse novamente, correto? Ou ele
 precisaria fazer sua própria instalação?

 Quando o usuário faz sua primeira incursão no cpan e realiza a
 configuração, aparece a seguinte mensagem:


 ---
 local::lib is installed. You must now add the following environment
 variables
 to your shell configuration files (or registry, if you are on Windows) and
 then restart your command line shell and CPAN before installing modules:


 Would you like me