25
Curso Introductorio Curso Introductorio de Linux para de Linux para Sistemas Operativos Sistemas Operativos Universidad Tecnológica Nacional Universidad Tecnológica Nacional Facultad Regional Tucumán Facultad Regional Tucumán

Curso linux clase_2_2012

Embed Size (px)

Citation preview

Curso Introductorio Curso Introductorio de Linux para de Linux para

Sistemas OperativosSistemas Operativos

Universidad Tecnológica NacionalUniversidad Tecnológica Nacional

Facultad Regional TucumánFacultad Regional Tucumán

Ernesto J. SaleErnesto J. Sale

Ing. ComputaciónIng. Computación

[email protected]@ernet.com.ar

Temas a desarrollarTemas a desarrollar

1.1. Instalación y utilización de una máquina Instalación y utilización de una máquina virtual.virtual.

2.2. Inicio de sesión en GNU/Linux.Inicio de sesión en GNU/Linux.3.3. La consola virtual: concepto. El La consola virtual: concepto. El

intérprete de comandos (shell). El intérprete de comandos (shell). El entorno o ambiente (environment).entorno o ambiente (environment).

4.4. Documentación en línea.Documentación en línea.5.5. Estructura de un sistema de archivos. Estructura de un sistema de archivos.

Comandos relacionados.Comandos relacionados.

Temas a desarrollarTemas a desarrollar

6.6. Otros comandos. Crear usuarios. Otros comandos. Crear usuarios. Cambiar la contraseña.Cambiar la contraseña.

7.7. El editor de textos VIM.El editor de textos VIM.8.8. Compilar y depurar programas en C.Compilar y depurar programas en C.9.9. Configuración de la red IP desde la Configuración de la red IP desde la

máquina virtual. Configuración básica en máquina virtual. Configuración básica en GNU/Linux. Comandos relacionados.GNU/Linux. Comandos relacionados.

10.10.Cliente SSH.Cliente SSH.11.11.FTP: concepto y utilización.FTP: concepto y utilización.

Tema 7Tema 7

El editor de textos VIMEl editor de textos VIM

vivi

Editor de textoEditor de texto Usualmente reemplazado por vimUsualmente reemplazado por vim vi mejorado (VImproved)vi mejorado (VImproved)

vimtutorvimtutor TutorialTutorial

ModosModos Comando (ESC)Comando (ESC) EdiciónEdición

/, ?/, ? BúsquedaBúsqueda

vivi

h,j,k,l o flechas de direcciónh,j,k,l o flechas de dirección DesplazamientoDesplazamiento

G, H, LG, H, L Saltos (absoluto, head relativo, last relativo)Saltos (absoluto, head relativo, last relativo)

i,a.c,d,dd,p,oi,a.c,d,dd,p,o EdiciónEdición

ZZ, :w!, :q!, :e!ZZ, :w!, :q!, :e! SalirSalir

:!:! Ejecución de comando de shellEjecución de comando de shell

vivi

Resalta sintaxis (código fuente)Resalta sintaxis (código fuente) :syntax on:syntax on

AutoindentarAutoindentar :set autoindent:set autoindent

Ayuda en líneaAyuda en línea :help:help

ConfiguraciónConfiguración /etc/vimrc /etc/vimrc general general ~/.vimrc ~/.vimrc particular de cada usuario particular de cada usuario .exrc .exrc particular de cada directorio particular de cada directorio ““set exrc” en vimrc o .vimrc habilita .exrcset exrc” en vimrc o .vimrc habilita .exrc

Tema 8Tema 8

Compilar y depurar programas en Compilar y depurar programas en CC

Compilar y depurar en CCompilar y depurar en C

gccgcc GNU Compiler CollectionGNU Compiler Collection Originalmente, GNU C CompilerOriginalmente, GNU C Compiler La extensión es importanteLa extensión es importante gcc programa.c -o ejecutablegcc programa.c -o ejecutable Sin -o, genera a.outSin -o, genera a.out Si la compilación resulta bien, no presenta Si la compilación resulta bien, no presenta

mensajes, de otro modo, muestra erroresmensajes, de otro modo, muestra errores g++g++

Compilador C++Compilador C++

Etapas de compilaciónEtapas de compilación

PreprocesadoPreprocesado Interpretan directivas, como variables Interpretan directivas, como variables

inicializadas con #defineinicializadas con #define gcc -E prueba.c > prueba.ppgcc -E prueba.c > prueba.pp more prueba.ppmore prueba.pp

CompilaciónCompilación Código fuente Código fuente Ensamblador Ensamblador gcc -S prueba.cgcc -S prueba.c more prueba.smore prueba.s

Etapas de compilaciónEtapas de compilación

EnsambladoEnsamblado Ensamblador Ensamblador Código objeto (leng. máquina) Código objeto (leng. máquina) as -o prueba.o prueba.sas -o prueba.o prueba.s gcc -c prueba.c (alternativa directa)gcc -c prueba.c (alternativa directa) file prueba.ofile prueba.o

Enlazado (último paso)Enlazado (último paso) Las librerías externas son incorporadasLas librerías externas son incorporadas ld: enlazador (complicado de usar)ld: enlazador (complicado de usar) gcc -o prueba prueba.ogcc -o prueba prueba.o Puede ser estático o dinámicoPuede ser estático o dinámico

Todos los pasos se realizan con sólo tipearTodos los pasos se realizan con sólo tipear gcc -o prueba prueba.cgcc -o prueba prueba.c

GDBGDB

GNU DebuggerGNU Debugger Iniciar el programa con cualquier parámetroIniciar el programa con cualquier parámetro Hacer que el programa se detenga en ciertas Hacer que el programa se detenga en ciertas

condicionescondiciones Examinar lo sucedido una vez que el Examinar lo sucedido una vez que el

programa ha sido detenidoprograma ha sido detenido Realizar cambios en el programa en tiempo Realizar cambios en el programa en tiempo

de ejecuciónde ejecución

Tema 9Tema 9

Configuración de la red IP desde Configuración de la red IP desde la máquina virtual. la máquina virtual.

Configuración básica en Configuración básica en GNU/Linux. Comandos GNU/Linux. Comandos

relacionados.relacionados.

Redes IPRedes IP

Internet Protocol v4Internet Protocol v4 Permite interconectar dispositivos (hosts)Permite interconectar dispositivos (hosts)

PCsPCs Celulares, palmtopsCelulares, palmtops SensoresSensores Etc.Etc.

Cada host tiene una dirección única dentro de la Cada host tiene una dirección única dentro de la red para enviar y recibir datos (paquetes)red para enviar y recibir datos (paquetes) ID de redID de red ID de hostID de host

Similar al sistema postalSimilar al sistema postal

Redes IPRedes IP

IP: 192.168.4.29IP: 192.168.4.29Máscara: 255.255.0.0Máscara: 255.255.0.0 ID de red: 192.168ID de red: 192.168 ID de host en la red: 4.29ID de host en la red: 4.29

IP: 192.168.0.245IP: 192.168.0.245Máscara: 255.255.0.0Máscara: 255.255.0.0 ID de red: 192.168ID de red: 192.168 ID de host en la red: 0.245ID de host en la red: 0.245

Estas 2 máquinas pueden comunicarse por Estas 2 máquinas pueden comunicarse por estar en la misma redestar en la misma red

Redes IPRedes IP

IP: 192.168.4.29IP: 192.168.4.29Máscara: 255.255.255.0Máscara: 255.255.255.0 ID de red: 192.168.4ID de red: 192.168.4 ID de host en la red: 29ID de host en la red: 29

IP: 192.168.0.245IP: 192.168.0.245Máscara: 255.255.255.0Máscara: 255.255.255.0 ID de red: 192.168.0ID de red: 192.168.0 ID de host en la red: 245ID de host en la red: 245

Estas 2 máquinas NO pueden Estas 2 máquinas NO pueden comunicarse directamentecomunicarse directamente

Redes IPRedes IP

Dirección IPDirección IP 4 “octetos” 4 “octetos” 4 bytes 4 bytes Rango de valores 0-255 por octetoRango de valores 0-255 por octeto Los valores 0 y 255 son reservados en Los valores 0 y 255 son reservados en

algunos casosalgunos casos Hay públicas, privadas y reservadasHay públicas, privadas y reservadas

IPs privadasIPs privadas 10.0.0.0 - 10.255.255.255 (clase A)10.0.0.0 - 10.255.255.255 (clase A) 172.16.0.0 - 172.31.255.255 (clase B)172.16.0.0 - 172.31.255.255 (clase B) 192.168.0.0 - 192.168.255.255 (clase C)192.168.0.0 - 192.168.255.255 (clase C)

IP en GNU/LinuxIP en GNU/Linux

ifconfigifconfig Configura interfaces de red (eth0, eth1,etc.)Configura interfaces de red (eth0, eth1,etc.) ifconfig eth0 192.168.1.20ifconfig eth0 192.168.1.20 ifconfig eth0:1 10.0.0.2 (virtual)ifconfig eth0:1 10.0.0.2 (virtual) Ifconfig eth0:1 downIfconfig eth0:1 down

Otros comandos para investigarOtros comandos para investigar ipip arparp pingping traceroutetraceroute

IP en VMwareIP en VMware

VMware crea 3 interfaces virtualesVMware crea 3 interfaces virtuales Bridged (conectada directamente a una Bridged (conectada directamente a una

interfaz real)interfaz real) NAT (VMnet 8)NAT (VMnet 8) Host-only (VMnet 1) Host-only (VMnet 1) interna a la PC interna a la PC

Se puede elegir en el menú DevicesSe puede elegir en el menú Devices Network ConnectionsNetwork Connections

vmnetcfg.exevmnetcfg.exe Archivos de programa\VMware PlayerArchivos de programa\VMware Player Permite configurar las interfaces virtualesPermite configurar las interfaces virtuales

Tema 10Tema 10

Cliente SSHCliente SSH

SSHSSH

Secure SHellSecure SHell Reemplaza a telnet y rshReemplaza a telnet y rsh

Conexión inseguraConexión insegura Provee confidencialidadProvee confidencialidad

Mecanismos criptográficos bien probadosMecanismos criptográficos bien probados Ofrece una conexión de terminal segura a través Ofrece una conexión de terminal segura a través

de redes IPde redes IP Esquema cliente - servidorEsquema cliente - servidor putty.exeputty.exe

Cliente SSH para WindowsCliente SSH para Windows

Tema 11Tema 11

FTP: concepto y utilización.FTP: concepto y utilización.

FTPFTP

File Transfer ProtocolFile Transfer Protocol Protocolo de transferencia de archivos en redes Protocolo de transferencia de archivos en redes

IPIP Permite transferencia de archivos entre hostsPermite transferencia de archivos entre hosts

Esquema cliente - servidorEsquema cliente - servidor En la barra de Direcciones del explorador:En la barra de Direcciones del explorador:

ftp://192.168.1.1ftp://192.168.1.1 Soporta inicio de sesión (login):Soporta inicio de sesión (login):

Archivo Archivo Iniciar sesión como… Iniciar sesión como…

FinFin