ACESSO REMOTO A SERVIDORES E INTRODUÇÃO AO LINUX

Propaganda
ACESSO REMOTO A SERVIDORES E INTRODUÇÃO AO LINUX
Jose Miguel Ortega
Rafael Lucas Muniz Guedes
Sistema operacional
Em Bioinformática é comum o uso de computadores que utilizam sistemas operacionais
baseados em Linux [1]. Os sistemas operacionais relacionados abaixo são todos
baseados nessa plataforma e possuem acesso gratuito:
 CentOS (distribuição gratuita do RedHat Enterprise) [2]
 Fedora [3]
 Ubuntu [4]
A distribuição CentOS é indicada para servidores.
Como se conectar a partir de Windows
É possível acessar servidores através de uma máquina que possui como sistema
operacional o Windows.
 Para troca de arquivos: Secure Shell [5]
 Conexão direta SSH: Putty [6].
Em computadores Apple não o acesso pode ser feito a partir do terminal assim:
ssh [email protected]
Comandos Linux
Para trabalhar com Linux, alguns comandos de uso rotineiro precisam ser aprendidos. A
seguir, uma lista com alguns comandos básicos e uma breve descrição:
 cp teste.seq manuel
Copia o arquivo teste.seq, que se encontra dentro do diretório corrente, para o diretório
Manuel, também dentro do diretório corrente.
 cp teste.seq ../manuel
Nesse caso, o diretório manuel está em um nível acima do diretório corrente.
 cp /home/user/readme.txt . (note o “ponto” separado por espaço)
Copia o arquivo que está no caminho especificado para o diretório corrente. Note que o
ponto final ao término do comando é utilizado para indicar diretório corrente.
 mv teste.seq manuel/seqs
Move o arquivo teste.seq para o diretório seqs, o qual está dentro de manuel
 mv teste.seq teste.fasta
Como o diretório de destino para o arquivo teste.seq é o mesmo de origem, o arquivo é
renomeado e seu conteúdo mantido inalterado. Usa-se para trocar o nome de um
arquivo, na verdade.
 mkdir seqs
Cria o diretório denominado seqs.
 rmdir seqs
Remove o diretório seqs quando ele se encontra vazio.
 rm teste.seq
Remove o arquivo teste.seq.
 cd ..
Muda-se do diretório corrente para o diretório acima.
 cd manuel
Entra no diretório denominado manuel.
 ls
Lista conteúdo do diretório corrente.
 ls -l
Lista o diretório corrente com mais informações.
 man ls
Mostra o manual para o comando ls.
 q
Interrompe a listagem do output do manual e do comando <more> do Linux.
 more readme.txt
No Linux imprime na tela o conteúdo do arquivo, nesse caso, readme.txt
 head readme.txt
Imprime as primeiras linhas do arquivo.
 tail readme.txt
Imprime as últimas linhas do arquivo.
Tabulador: são usados para nomes compridos. O tabulador completa o nome que esta
sendo digitado desde que o mesmo exista no diretório corrente. Recomenda-se
fortemente usar o tabulador ao digitar caminhos compridos como
 more /home/manuel/seqs/readme.txt
pois se a máquina completa o nome, é porque o caminho está sendo digitado
corretamente. Use sempre!
Asterisco: utilizado para representar qualquer caractere, por exemplo:
 more *txt
Imprime na tela o conteúdo de readme.txt, assim como
 more *dme*.
Acessando uma conta em um servidor
Abra o programa Putty.
Complete o campo Host Name com o IP do servidor e mude Connection Type ou
Protocol para a opção SSH.
Complete o campo Saved Sessions com o nome desejado.
Clique o botão Save.
Figura 1: Tela inicial do programa Putty.
De agora em diante com um duplo clique no nome escolhido o terminal abrirá
automaticamente.
Editor de texto (vi)
Acesse o conteúdo disponível em: http://biodados.icb.ufmg.br/tutorial2011/Linux/, ou
utilize arquivos próprios para executar os comandos a seguir em um terminal Linux.
 mkdir treinamento
 cd treinamento [copie todo o conteúdo do link acima para esta pasta]
 ls
Veja o conteúdo do arquivo
 more aldolase.cds
Para editar um arquivo utilize o editor de texto denominado vi
 vi aldolase.cds
Para entrar no modo de inserção digite a letra “i”. Observe que no canto inferior
esquerdo da tela aparece a palavra INSERT. Nesse momento você é capaz de digitar
livremente. Movimente o cursor com as setas do teclado.
Troque o nome e descrição da seqüência FASTA para apenas >teste
Pra salvar a modificação tecle ESC, em seguida dois pontos (:) e por fim x! seguido de
ENTER.
Veja como ficou o arquivo após a edição
 more aldolase.seq
Pratique com outras seqüências presentes no mais conhecido banco de dados biológico
do mundo, o National Center for Biotechnology Information, ou simplesmente NCBI
[7].
Por exemplo, procure por myoglobin no NCBI, utilizando o banco de dados protéico,
denominado Protein, como mostrado na Figura 2 abaixo:
Figura 2: Website do National Center for Biotechnology Information.
Escolha uma seqüência proveniente do resultado da busca e então selecione a opção
Send to File e abra o arquivo.
Digite em seu terminal:
 vi mioglobina.pep
Selecione com o mouse o conteúdo da seqüência e copie.
Clique no terminal com o botão direito do mouse e a seqüência será colada.
Salve o novo arquivo gerado como antes (ESC : x!)
OBS: Consulte o manual para mais informações sobre seus comandos (man vi).
Consultando o NCBI
Uma consulta simples como a exemplificada na Figura 2 geralmente retorna uma
quantidade numerosa de dados o que pode ser um complicador para obtenção dos dados
desejados.
Para filtrar uma consulta, existem diferentes recursos que podem ser adicionados que
ajudam a limitar e direcionar o resultado. Por exemplo, as consultas abaixo combinam
palavras chaves contidas entre colchetes e operadores lógicos (AND, OR e NOT) para
direcionar a busca.
 Einstein[Author] AND relativity theory[Title]
 PGM1[Gene Name] AND Homo sapiens[Organism] OR Mus musculus NOT
fragment
Aprendendo um novo comando, grep
Observe o arquivo db.fasta
 more db.fasta (aperte “q” para sair)
Para descobrir quantas seqüências protéicas existem nesse arquivo poderíamos
simplesmente contar, o que seria uma tarefa fácil em arquivo pequeno como esse. Após
a contagem descobrimos que existem 16 seqüências. Mas se pensarmos em um arquivo
contendo todas as proteínas humanas, essa tarefa já seria inviável. Para simplificar,
podemos utilizar o comando grep, que identifica rapidamente linhas que possuem os
caracteres especificados dentro de um arquivo. Como cada seqüência protéica
apresentada em formato FASTA é precedida do sinal de “maior que” (>), podemos
simplesmente contar quantos deles existem.
 grep “>” db.fasta –c
A opção –c é utilizada para especificar que desejamos apenas a contagem final. Caso
essa opção fosse retirada, o usuário observaria uma listagem das linhas que contem o
conteúdo especificado dentro das aspas. Teste sem o –c.
Pronto agora você já sabe contar rapidamente seqüências em um arquivo.
Banco de dados de seqüências e busca de similaridade BLAST no NCBI
Retorne à página do NCBI e procure pela ferramenta BLAST [7, 8 e 9] (Basic Local
Alignment Search Tool). Essa ferramenta é muito utilizada em Bioinformática para
pesquisa de similaridade entre seqüências biológicas, sejam elas de nucleotídeos ou de
aminoácidos.
Clique em nucleotide BLAST
Altere a Database para Others (nucleotide collection nr/nt)
Altere o algoritmo em Program Selection para Somewhat similar sequences (blastn)
O MEGABLAST é uma versão que deve ser usada para, por exemplo, identificar uma
seqüência humana no próprio genoma humano e é muito mais rápido que o BLASTn
tradicional. Mas para iniciar a busca ele requer encontrar uma sequencia idêntica maior
que o BLASTn exige.
A versão “descontínua” do MEGABLAST (discontiguos MEGABLAST) utiliza uma
janela de início de alinhamento degenerada na terceira posição para favorecer o início
do alinhamento quando códons variando na terceira base ocorrem (alinhamentos de
sequencias de organismos muito distantes).
Digite cinco (5) linhas de bases nucleotídicas (ACTG) aleatórias no formato fasta como
exemplificado abaixo.
>seunome
acgatcgatcgatcgatcgatcgtagctacgtacg...
Logo após clique em Run BLAST. Vamos ver qual valor de E-value você consegue
obter? O que isso significa?
Funcionamento do BLAST e valor de E-value
O algoritmo do BLAST fragmenta sua seqüência (denominada query) em pedaços (ou
seed) de tamanho W. Encontra na Database os pareamentos PERFEITOS da seed. A
seed não pode ser muito pequena para não iniciar pesquisas demais e de pouca
importância.
O algoritmo “caminha” para as extremidades tentando estender o alinhamento o
máximo possível; nesse processo podem ser inseridos gaps, que são pequenas falhas nos
alinhamentos.
A pontuação para cada passo do alinhamento é dada segundo uma matriz de pontuação.
Bases idênticas resultam em pontuação positiva enquanto abrir gaps, estender gaps e
bases diferentes (mismatches) são penalizadas com pontuação negativa.
O algoritmo termina quando estender mais “não compensar”, logo, determina a máxima
subseqüência alvo (subject) que retorna o maior escore dentro da Database.
Assim, o programa visa detectar a seqüência mais similar baseado em subseqüência
máxima (alinhamento local), o que é um grande facilitador para bioinformatas por se
tratar de um processo computacionalmente mais rápido.
A questão da homologia relaciona-se com o cálculo de E-value: quantos alinhamentos
iguais ou melhores que este que você observa poderiam ser obtidos sem nenhuma
relação de homologia entre as seqüências ai alinhadas? Se for um número improvável,
você pode resolver desconsiderar a hipótese nula (não homologia) não pode? Portanto,
quanto MENOR, mais próximo de zero for o valor de E-value obtido no experimento
com bases aleatórias acima, melhor. Diferentes experimentos consideram diferentes
valores, variando geralmente entre 1 x 10-5 e 1 x 10-15.
Formatando a Database para uso do BLAST em sua máquina
O BLAST necessita de databases formatadas. Para isso existe o comando formatdb.
formatdb –i db.fasta –o T –p F
i: input
o: Indexa os dados que aparecem no FASTA.
p: Responde à seguinte pergunta: É proteína? Caso não: Falso, caso sim True.
O significado de alguns parâmetros BLAST
p: Programa: tblastn, etc.
i: Entrada: query.
d: Database: tem que estar formatada.
e: E-value: o número de alinhamentos iguais ou melhores que podem ser obtido sem
homologia.
F: Liga ou desliga o filtro de baixa complexidade.
b: O número de alinhamentos que serão reportados para cada query.
a: Número de processadores que serão utilizados.
m: É o formato do arquivo de saída.
o: É o nome que você quer para o arquivo de saída.
Referências
[1] Linux: http://br-linux.org/
[2] CentOS: http://www.centos.org/
[3] Fedora: http://fedoraproject.org/pt/
[4] Ubuntu: http://www.ubuntu-br.org/
[5] SSH Secure Shell: http://cromatina.icb.ufmg.br/ssh/
[6] Putty: http://www.putty.org/
[7] NCBI: http://www.ncbi.nlm.nih.gov/
[8]
Tutorial
em
inglês
para
uso
da
ferramenta
BLAST:
http://www.ncbi.nlm.nih.gov/books/NBK21097/
[9] Stephen F. Altschul, Warren Gish, Webb Miller, Eugene W. Myers and David J.
Lipmanl: Basic Local Alignment Search Tool. J. Mol. Bio (1990) 215, 403-410.
Contatos
 Jose Miguel Ortega: [email protected]
 Rafael Lucas Muniz Guedes: [email protected]
Download