Está en la página 1de 77

INTRODUCCIÓN A LINUX

PARA BIOINFORMÁTICA
Blgo. Daniel Fernandez
Lo que comúnmente se hace de manera grafica es
muchas veces mejor hacerlo por la terminal
El problema mas grande para los iniciados es
la terminal
INTRODUCCIÓN A UNIX
NACIMIENTO DE UNIX
NACIMIENTO DEL SOFTWARE LIBRE
Introducción a UNIX
• Finales de la decada de 1960 –
nacio MULTICS (Multiplexed
Information and Computing
Service)
• Rendimiento pobre
• Consumo excesivo de recursos
• 1969 nacio UNIX
• Interprete de comandos
• Versatilidad, multiusuario,
multitareas

Ken Thompson Dennis Ritchie


1969 nacio UNIX
• Versatilidad, multiusuario,
multitareas
• La mayoría de los SO son basados en
UNIX, el que mas ha influenciado
• Libre distribucion (Linux, Minix, etc)
• Comerciales (Solaris, AIX, HP-UX,
Android, etc)
• BSD (Berkeley)=> Solaris, MacOS
SOFTWARE LIBRE
• Richard Stallman
• Software privativo vs software libre
• 1985 proyecto GNU
• Free Software Fundation
• CopyLeft => GPL
• 1991 Linus Torvals aporta el núcleo
(kernel Linux) bajo licencia GPL
SOFTWARE LIBRE
• Marco de referencia Moral,
Politico y Legal
• Multiusuario
• Centrado en Redes
• Libre ≠ Gratis
• Amplio crecimiento para los
programadores
INSTALACIÓN DE LINUX
Instalación de VirtualBox
Instalación de Ubuntu
Ordenador
• Procesador
• Memoria
• Memoria de intercambio (Swap)

gunos programas (ej. Blast)


nsumen más el procesador

entras que otros (ej. los


sambladores como el velvet)
nsumen más la RAM
Compartir carpetas

Windows Linux
Carpeta Carpeta
- Archivos - Archivos
- Documentos - Documentos
- etc - etc
Pasos
• Crear las carpetas que se compartirán la información
• Crear una carpeta en Window
• Crear una carpeta en Linux (no salir de la carpeta principal)
• Instalar en Linux los requisitos
• sudo apt-get install virtualbox-guest-dkms
• Seleccionar la carpeta en Window que se compartira
• En la ventana del VirtualBox ir a Dispositivos => Carpetas compartidas => Preferencias de carpetas
compartidas y seleccionar la carpeta en Window
• Seleccionar Automontar y Hacer permanente
• Instalar Gues Additions
• En la ventana del VirtualBox ir a Dispositivos => Insertar imagen de CD de las Guest Additions
• Montar la carpeta de Window en Linux
• sudo mount -t vboxsf carpeta_en_window carpeta_en_Linux

• Cada vez que inicie Linux, hay que teclear el último comando
• sudo mount -t vboxsf carpeta_en_window carpeta_en_Linux
Aplicaciónes
Sistema Operativo

Shell Kernel Hardware

CPU
bash, fish, ksh, Memoria
tcsh, csh, zsh Dispositivos

comandos
Sistema de archivos

/bin archivos ejecutables escenciales

de los mas importantes, programas


/usr
uso general

t /usr/bin programas de uso general

vacio inicialmente, se pueden pone


/usr/local/bin
programas
/home/usuario
/home /home/antonio
/home/isabel
COMANDOS BASICOS
Comandos basicos

Shell

bash, fish, ksh,


tcsh, csh, zsh

comandos
Comandos parametros ruta
• pwd mostrar ruta actual • cp copiar
• ls mostrar contenido de la • cp texto_original texto_copia
carpeta • cp -r carpeta_original carpeta_copia
• ls • mv mover o renombrar
• ls -l • mv archivo nuevo_nombre
• ls -l /usr/bin/ • mv archivo Carpeta/archivo
• cd entrar a una carpeta • rm remover/eliminar archivo
• cd /usr/bin/ • rm secuencias.fasta
• cd Documentos • rm -r carpeta
• mkdir crear carpeta • rm -rf carpeta solo hazlo, sin mensajes
• mkdir carpeta_de_programas • history muestra todos los comandos
• touch crear archivo escritos
• touch mi_archivo
• nano editar archivo
• nano mi_archivo
INSTALACIÓN DE PROGRAMAS
Programas
• Un paquete es un conjunto de ficheros relacionados con una
aplicación. Encontramos los binarios y los que son el código fuente.
• Gestor de paquetes (Instalación automática)
• Instalación Manual
• Paquetes Binarios
• Paquetes Código Fuente
Código Fuente & Código Maquina
(Lenguaje de Programación) (binario)

COMPILACIÓN
Precompilado
• Compilar partes del código fuente para que no sea necesario compilar
junto con todo el resto del código fuentes
• Reduce tiempo de compilación
• Mucho mas fácil para el usuario común
Gestor de paquetes
• Repositorios:
• Conjunto de programas binarios y precompilados (en su
mayoría). Cada distro tiene el suyo propio
• El Gestor instala el programa de los repositorios en tu
computadora con todas sus dependencias
• Ventajas: fácil, seguro, actualizable

Gestor de paquetes
REPOSITORIOS
Propios de cada distro
Repos de terceros
estor de
quetes Grafico
untu Software Center
nome Sofware)

ara el usuario común


No se pueden encontrar todos los
rogramas (sobre todo los programas
ue solo se usan por la terminal)
No se pueden instalar librerías que
ecesitan los programas
Gestor de Paquetes por Comandos: APT
• sudo apt-get install programa
• sudo apt-cache search programa
• sudo apt-get remove programa
• sudo apt-get remove --purge nombre_paquete
• sudo apt-get update

Se pueden instalar todos los programas y librerias que hay en


los repositories de cada distribución
Paquetes Binarios
• Contienen código maquina y no código fuente, por lo que cada tipo
de arquitectura necesita su propio paquete.
• RPM
• DEB
• .bin: darle permisos y ejecutar
• .jar: tener instalada el Java
• Scripts = Programa
• .sh
• .perl
• .py
DEB para Ubuntu Perl
• sudo dpkg -i programa.deb • perl -v
• sudo dpkg -r programa • perl programa.pl

En Linux viene por defecto instalado el Perl


Permisos
•r lectura 4 •u el usuario
•w escritura 2 •g el grupo
•x ejecución 1 •o otros usuarios

• chmod u+rwx archivo permiso de rwx para mi


• chmod g+rwx archivo permiso de rwx para mi grupo
• chmod o+rwx archivo permiso de rwx otros
• chmod o-x archivo sin permido de x para otros
• chmod +x archivo permiso de x para todos
• chmod -x archivo sin permiso de x para todos
Permisos
•r lectura 4 •u el usuario
•w escritura 2 •g el grupo
•x ejecución 1 •o otros usuarios

• chmod UGO archivo


• chmod 777 archivo permiso de rwx para u, g y o
• chmod 755 archivo ejecutable para todos
• chmod –Rf 755 Carpeta
• -R todos los archivos debajo
• -f solo hazlo, sin mensajes de confirmación o errores
Paquetes Código Fuente
• Contienen el código fuente del programa, estos vienen con los
archivos necesarios para compilar e instalar el programa.
CODIGO FUENTE BINARIO

COMPILACIÓN
Paquetes Código Fuente
• Suelen presentarse en formato .tar.gz, tar.bz2, gz o zip (comprimidos)
• Lo normal es que cada aplicación tenga la información en el fichero README o
INSTALL de como instalarlo.
• Para descomprimir (dependiendo de la extensión)



• Una vez descomprimido, lo compilamos y lo instalamos así (estos comandos
aparecen por lo general, mejor seguir los pasos en el README)

./configure
make
make install
Compilación o empaquetamiento
• De código fuente a binario (de un lenguaje de programación a
lenguaje de la maquina)
• Compilar el programa y generar el archivo Makefile
• ./configure
• Leer el archivo Makefile y generar los binarios
• make
• Copiar los binarios recién generados al sistema
• make install
Comandos & Tuberías
• Buscar archivos y programas
• Comandos variados
• Algoritmos y scripts
Buscar archivos y programas

ARCHIVOS PROGRAMAS
• find ./ -name nombre_exacto • sudo apt-cach search programa
• find ./ -iname "*archivo* • which programa

Los programas están en una carpeta donde se les puede ejecutar no importando el lugar donde
este el usuario.
Para saber que lugares son, ejecutar:
Por defecto son estos lugares, están separados por dos puntos
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
ALGORITMOS
• conjunto de reglas lógicas y ordenadas
• Representados mediante letras, símbolos o texto
• Son independientes del lenguaje de programación
• Características
• Preciso, correcto sin pasos de más
• Congruente, al probar varias veces, el resultado debe ser el mismo
• Finito, debe completar un ciclo
Diagrama de Flujo
• Representación gráfica,
mediante la utilización de signos
convencionales
• Es el proceso que sigue la
información en un programa,
desde el Inicio hasta el Fin
Sequencing, Analysis, and Annotation of Expressed Sequence Tags for Camelus
dromedarius (2010) PlosOne Vol 5 Issue 5 e 10720
Scripts
• Es un programa, puede ser simple o complejo
• Archivo con una serie de ordenes
• Involucra un lenguaje de programación
Comandos
• wc muestra cantidad de parrafos, palabras, letras (bites)
• -l, -m, -c
• wc -c
• grep busca caracteres en las lineas
• grep '>' Multifasta.fa muestra solo las lineas con >
• grep -r '>' Multifasta.fa muestra solo las lineas con >
• grep -c '>' Multifasta.fa cuenta solo las lineas con >
• grep -v '>' Multifasta.fa muestra todas las lineas a excepción de las
que tengan >
Tuberias |
¿Cuantos pares de bases hay?

• grep -v “>” seq1.fa | wc -c


• grep -v “>” seq*.fa | wc -c
cat & > & >>
• cat concatenar, une archivos y los muestra
• > el resultado lo pone en un archivo (si el archivo
tiene contenido, lo sobreescribe, borra el antiguo
contenido)
• >> el resultado lo agrega en un archivo

• cat seq1.fa seq2.fa > multifasta.fa Une 2 secuencias en un multifasta.fa


• cat seq3 >> multifasta.fa Agrega una secuencia al multifasta.fa
• cat *.fa >> multifasta Une todos los archivos que terminen en .fa y los une en
un archivo llamado multifasta.fa
Separar sequencias de un multifasta
• csplit AllSeqs.fasta '/>/' {*}
• csplit -f Seq -n 3 AllSeqs.fasta '/>/' {*}
• -f prefijo del output
• -n numero de digitos para el output
ordenar
• sort archivo ordenar
• -r ordenar a la inversa
• sort -nk2 -nk4 archivo primero la columna 2 y luego la 4
• sort -u ordenar pero eliminar los duplicados

• grep '>' Multifasta.fa | sort -u


uniq
• uniq mostrar solo unicos
• -u por defecto
• -d solo duplicados

• grep '>' Multifasta.fa | sort | uniq


• grep '>' Multifasta.fa | sort -u
sed & cut
• sed reemplaza un carácter por otro
• sed s/actual/nuevo carácter/g archivo
• sed s/curso/clase/ archivo.txt
\t
Tabulación (tab)
• sed "s/\t/\n/" archivo
• cut archivo
• -c 3-7
• -f
corta desde el carácter 3 al 7
separa columnas tabuladas (\t)
\n
• -f 3,4 muestra solo las columnas 3 y 4 Nueva línea (enter)
Tengo un multifasta y quiero una lista con
solo sus nombres!!!

• grep ">" sequences.fasta | sed "s/ /\t/" | cut -f 2

• Traducción
• Muestra las líneas que tengan el carácter >
• Separa el primer espacio por un tab
• Muéstrame solo la columna 2
Bases de Datos (BD)
TIPOS DE DB
• BD Primarias
• Datos biológicos originales. Son archivos de secuencia en bruto o datos estructurales
(ej GenBank).
• Crecen rápidamente, pero su contenido no es siempre perfecto
• DB Secundarias
• Procesada computacionalmente o manualmente curadas (ej Swiss-Prot, RefSeq)
• Las entradas son realizadas por expertos en la BD
• Crecen más lentamente, pero ofrecen información fiable
• BD Especializadas
• Dirigidas a un area especifica
• DB de VIH
• Ribosomal Data Base
• Pfam: Protein family database con miles de familias de proteínas homólogas
Principales
• National Center for Biotechnology Information (NCBI)
• GenBank
• European Bioinformatics Institute (EBI)
• EMBL Nucleotide Sequence Database
• National Institute of Genetics
• DNA Database of Japan (DDBJ)
• Problema en las investigaciones: la necesidad de cruzar y vincular o “linkear” las
BD de diferentes fuentes para complementar la información
• Casi todas las BD importantes tienen ambas versiones o especifican en cada
entrada el “grado de fiabilidad”
• El NCBI, EBI y DDBJ comparten sus datos diariamente
GenBank
• Las secuencias pueden ser de diversos tipos y alcances:
• Secuencia de ADN, ARN, aminoácidos
• Secuencia de transcrito, gen, cromosoma, genoma
• Secuencia de mutación (SNP)
• ... hasta 40 BD distintas
• PubMed: complementa a GenBank con una colección anotada de
artículos científicos
• Entrez es la herramienta del NCBI para facilitar las búsquedas
Base de Datos EBI
Bases de datos principales:
• Genoma: Ensembl
• Nucleótido: EMBL
• Proteína: UniProtKB
• TrEMBL annot automatica y no revisada
• Swiss-Prot annot manual y revisada
No tiene BD sobre publicaciones
BD CURADAS:
SwissProt (EBI) vs RefSeq (NCBI)
• La BD mejor anotada • Non-redundant
• La mas utilizada para proteínas • La mayoría son
• Nov-2003: 140 mil secuencias de automáticamente generados con
83 mil especies mínima intervención manual
• Es altamente integrada por otras • Dic-2003: 831 mil entradas con
BD aprox 44 mil manualmente
• Descripción sobre sus funciones revisadas
• Modificaciones post-traduccionales
• Dominios, estructura secundaria y cuaternaria
• Similaridad con otras proteinas
• Enfermedades asociadas
• Donde esta expresado, esta envuelta
• Variantes, mutaciones

Current Opinion in Chemical Biology 2004, 8:76–80


Formatos
• Los formatos para compartir secuencias más exitosos son en texto
plano
• Parte del éxito de EMBL y GenBank
• Su potencia es su facilidad de uso
• Legibilidad
• Facilidad de parseo y manipulación
• Aunque otros formatos (por ejemplo, XML) pueden ser más eficientes
computacionalmente y correctos estructuralmente
Formatos
• Los mas usados son los de las grandes instituciones
• Formato GenBank (adoptado por EMBL y DDBJ)
• Y los más genéricos y sencillos (FASTA)
• Fasta
• La extensión de un fichero FASTA genérico es .fasta
• A veces se usa .fa o .fsa
• GenBank
• Información más detallada de cada secuencia
Busqueda Avanzada en Entrez
• Operadores Boleanos
• AND, OR, NOT
• vaccination OR vaccine
• influenza AND vaccination
• influenza AND vaccine OR vaccination
• influenza AND (vaccine OR vaccination)
• Truncación: Asterisco * como un reemplazo de caracteres
• risk* => risk, risks, risk-taking
• Comillas: para coincidencia exacta si hay más de una palabra
• “Equus caballus”
• Autores
• Smith JB iniciales opcionales
Blast

Tu secuencia Base de Datos


(query) (db)

> Nombre Secuencias con formato de base de


ATCGATCGATCGTAC datos del ncbi
ACTACTGTCGTGTGT
CGCGCGCATCGGAT
ALINEAMIENTO DE SECUENCIAS
PREDICCIÓN DE GENES
ALINEAMIENTO
• Para poder cuantificar el grado de
similitud de dos secuencias lo
primero que hay que hacer es
alinearlas
• Una sustitución es un cambio de un
residuo por otro.
• Un gap puede corresponder tanto a
una deleción como a una inserción.
• El objetivo del alineamiento es ver
si una secuencia esta relacionada
con otra (ver homologías)
• Gaps (inserciones/deleciones)
• Match (coincidencia)
• Mismatch (mutación)

• Reducir al minimo los gaps y los


mismatch y maximizar los match
El alineamiento permite
• Si evolucionaron desde un ancestro común
• Si tienen funciones comunes
• En el caso de proteínas, si tienen formas
similares
• El grado de conservación revela las relaciones
evolutivas
• Mientras que la variación refleja los cambios
que han ocurrido durante la evolución
(substituciones, inserciones y eliminaciones)
• Si un miembro de esa familia tiene una
estructura o funciones conocidas, entonces esa
información puede extrapolarse a aquellos que
aún no se han caracterizado experimentalmente
Similaridad & Homología
• CUANTITATIVO • CAULITATIVO
• Grado de coincidencia entre dos • No hay grados, es o no es
secuencias homologo (“es un 80%”)
• Se cuantifica usando porcentajes • Es una conclusión a base de
(40 %, 60%, 95% similitud) comprobar que existe un grado
• Resultado directo de la de similitud suficientemente alto
observación • No siempre es fácil, la respuesta
• Es fácil depende del tipo de secuencias
examinadas y de sus longitudes
Homología
• Dos secuencias son homólogas si
comparten un ancestro común
• Dos proteínas homólogas suelen
tener una estructura 3D similar
• Dos proteínas o genes
homólogos suelen tener
secuencias parecidas
Homología: Ortologo & Paralogo
TIPOS DE ALINEAMIENTO

GLOBAL LOCAL
• El alineamiento cubre las dos • Se alinean sólo las zonas más
secuencias completamente parecidas.
introduciendo los gaps • Sirve para alinear regiones de
(inserciones o deleciones) que secuencias con longitud diferente
sean necesarios. • Suele ser la mejor opción a no ser
• Sirve para alinear secuencias que se esté seguro de que las los
que tengan similar longitud, por secuencias deben de parecerse a lo
ej genes homólogos de especies largo de toda sus extensión
similares.
GLOBAL LOCAL
Needleman and Wunsch (1970) Smith and Waterman (1981)
• cubre las dos secuencias • sólo las zonas más parecidas
completamente • con longitud diferente
• que tengan similar longitud • Buscar homologías o hacer
• Arboles filogenéticos anotaciones

20% 95% 30% 95%


PREDICCIÓN DE GENES
• Genes RNA
• tRNA, rRNA, snRNA, snoRNA, microRNA
• Genes codificadores de proteínas
• Procariotas
• No hay intrones, regulación más simple
• Eucariotas
• Exones-intrones
• Regulación más compleja
Estrategias
• Directa
• Emparejamiento más o menos exacto con EST, cDNA o proteínas del mismo
organismo o de otros relacionados
• Indirecta
• Homología con otros genes conocidos
• Búsqueda de algo que se parece a un modelo teórico de gen (ab initio)
• Híbrida, combinando homología y búsqueda ab initio (y quizas también
evidencia experimental)
Gen procariota
Gen Eucariota
PREDICCIÓN DE GENES
• Por Similaridad (búsqueda de • AB initio
homologías) • Totalmente computacional
• Comparación entre secuencias
• Con proteinas
• Busca patrones en la secuencia
• Con mRNA/cDNA • Predicción de estructura
• Con EST • De inicio/fin de transcripción
• De poli(A)
• De Exones/Intrones
• De Splicing
• Señales
AB initio en procariotas
• El conocimiento de la estructura genética de estos organismos se
vuelve muy útil para la predicción de genes.
• La densidad de genes es de más del 90 %.
• Un gen se compone de una sola tira de un marco abierto de lectura sin
interrupciones.
• Hay muy pocas secuencias repetitivas.
• La mayoría de los genes tienen un codón de inicio ATG (AUG en ARN). Aunque
también puede haber GTG y TTG como codones de inicio.
• Existen tres posibles codones de parada.
• Hay genes típicos y atípicos. Los genes típicos varían en longitud desde 100
hasta 500 aminoácidos, mientras que los atípicos son mucho más cortos.
PREDICCIÓN DE GENES
SIMILARIDAD AB INITIO
• CON • CON
• Limitado para encontrar nuevos • Muy útiles en procariotas, no en
genes eucariotas (genes complejos)
• EST dan información parcial • Incluso en procariotas, podemos
• Exones pequeños no son detectados encontrar genes solapando con
otros genes
• PROS • PROS
• Resultados bastantes solidos
• Aproximación muy rápida, que
• EST dan mucha información sobre
puede definir posteriores procesos
divisiones Exon/Intron y sobre
variantes con el splicing alternativo • Paso previo de ORFs necesario
AB initio problemas
• La distribución de longitudes no es aleatoria
• Los ORFs largas tienen mayor probabilidad de ser exones (pero hay mini-
exones!)
• ‘Firmas’ de los exones
• Islas CpG (>500 bp con G+C > 55%)
• Sitios de splicing
• Frecuencias de tetra- y hexa-nucleótidos
Genómica Comparativa
• Combinación de métodos ofrece resultados más fiables
• Puede facilitar pasos previos a la experimentación
• Imprescindible para genomas que, quizás, NUNCA serán estudiados
experimentalmente
• Detalles a mejorar su detección:
- Genes solapantes (por extremo 3’ o genes dentro de intrones)
- Genes Policistrónicos (varios genes codificados en un mRNA)
- Frameshifts (perdida de nucleótidos en la secuenciación o bases de datos)
- Exones pequeños (estructuras secundarias)
- Procesados alternativos:
- Otros inicios de transcripción
- Splicing alternativo
- Sitios de Poly(A) diferentes
• Ha habido mucho progreso en la predicción de genes procariotas, con
varios algoritmos que presentan diversos grados de éxito.
• Sin embargo, para organismos eucariotas, aún no hay resultados
satisfactorios

• Procariotas: Glimmer, GeneMark


• Pipeline: Prokka (homologia y ab initio)

También podría gustarte