60
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_1_2012

Embed Size (px)

Citation preview

Page 1: Curso linux clase_1_2012

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

Page 2: Curso linux clase_1_2012

Ernesto J. SaleErnesto J. Sale

Ing. ComputaciónIng. Computación

[email protected]@ernet.com.ar

Page 3: Curso linux clase_1_2012

ObjetivosObjetivos

Introducir el concepto y la utilización de Introducir el concepto y la utilización de una “máquina virtual”una “máquina virtual”

Brindar herramientas básicas para el Brindar herramientas básicas para el manejo de una terminal de texto y el manejo de una terminal de texto y el intérprete de comandos bashintérprete de comandos bash

Llevar los conocimientos de los alumnos Llevar los conocimientos de los alumnos acerca de GNU/Linux al nivel necesario acerca de GNU/Linux al nivel necesario para desarrollar los trabajos prácticos de para desarrollar los trabajos prácticos de laboratorio de Sistemas Operativoslaboratorio de Sistemas Operativos

Page 4: Curso linux clase_1_2012

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.

Page 5: Curso linux clase_1_2012

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.

Page 6: Curso linux clase_1_2012

Tema 1Tema 1

Instalación y configuración de una Instalación y configuración de una máquina virtualmáquina virtual

Page 7: Curso linux clase_1_2012

Máquina virtualMáquina virtual

En nuestro contexto, las máquinas En nuestro contexto, las máquinas virtuales simulan el funcionamiento del virtuales simulan el funcionamiento del hardware de una PC y otras arquitecturas hardware de una PC y otras arquitecturas (emulación).(emulación).

El objetivo es permitir ejecutar varios El objetivo es permitir ejecutar varios sistemas operativos simultáneamente sistemas operativos simultáneamente sobre el mismo hardware.sobre el mismo hardware.

Virtual PC (Microsoft), QEMU, VMWare, Virtual PC (Microsoft), QEMU, VMWare, VirtualBox (Sun), BOCHSVirtualBox (Sun), BOCHS

Page 8: Curso linux clase_1_2012

VMware PlayerVMware Player

Software de virtualización (máquina virtual)Software de virtualización (máquina virtual) Emulación sólo del hardware subyacenteEmulación sólo del hardware subyacente Simulación (para acelerar algunas funciones)Simulación (para acelerar algunas funciones)

Windows, Linux, NetWare, Solaris x86Windows, Linux, NetWare, Solaris x86 No hace falta reinicios ni particionamientoNo hace falta reinicios ni particionamiento Uso gratuitoUso gratuito Una máquina virtual puede constar de sólo 2 Una máquina virtual puede constar de sólo 2

archivos:archivos: Configuración (.vmx)Configuración (.vmx) Disco rígido (.vmdk)Disco rígido (.vmdk)

Page 9: Curso linux clase_1_2012

Tema 2Tema 2

Inicio de sesión en GNU/LinuxInicio de sesión en GNU/Linux

Page 10: Curso linux clase_1_2012

Inicio de sesión (login)Inicio de sesión (login)

Es un proceso por medio del cual el sistema Es un proceso por medio del cual el sistema operativo identifica al usuariooperativo identifica al usuario ContraseñaContraseña Certificados digitalesCertificados digitales Lecturas biométricasLecturas biométricas Círculos de confianzaCírculos de confianza

Para poder utilizar una consola, es preciso Para poder utilizar una consola, es preciso iniciar sesióniniciar sesión

Linux distingue mayúsculas de minúsculasLinux distingue mayúsculas de minúsculas

Page 11: Curso linux clase_1_2012

Inicio de sesión (login)Inicio de sesión (login)

Linux nos pide un nombre de usuario conLinux nos pide un nombre de usuario conhosthost login: login:

login as:login as:

Host es el nombre asignado a la máquina por el SO (definido por el Host es el nombre asignado a la máquina por el SO (definido por el usuario)usuario)

Y a continuación la contraseña (password)Y a continuación la contraseña (password)Password:Password:

usuario@host's password:usuario@host's password:

La contraseña es secreta y es por esto que los caracteres no se La contraseña es secreta y es por esto que los caracteres no se muestran al teclearlosmuestran al teclearlos

Luego de ingresar tanto usuario como contraseña, hay que Luego de ingresar tanto usuario como contraseña, hay que presionar INTRO (ENTER) para que el SO lea el valorpresionar INTRO (ENTER) para que el SO lea el valor

Una vez autenticado, el usuario puede utilizar el intérprete de Una vez autenticado, el usuario puede utilizar el intérprete de comandoscomandos

Page 12: Curso linux clase_1_2012

Tema 3Tema 3

Consola virtual, intérprete de Consola virtual, intérprete de comandos (shell) y su entorno o comandos (shell) y su entorno o

ambiente (environment)ambiente (environment)

Page 13: Curso linux clase_1_2012

Consola VirtualConsola Virtual

La consola representa una interfaz para la La consola representa una interfaz para la comunicación entre un operador y una comunicación entre un operador y una computadoracomputadora

Es hardwareEs hardware Está compuesta básicamente porEstá compuesta básicamente por

Monitor (salida estándar)Monitor (salida estándar) Teclado (entrada estándar)Teclado (entrada estándar)

Antiguamente, constaba deAntiguamente, constaba de Impresora (salida estándar)Impresora (salida estándar) Lector de tarjetas perforadas (entrada estándar)Lector de tarjetas perforadas (entrada estándar)

Page 14: Curso linux clase_1_2012

Consola VirtualConsola Virtual

Actualmente, los SOs pueden presentar Actualmente, los SOs pueden presentar más de una consola, llamadas consolas más de una consola, llamadas consolas virtualesvirtuales Comparten monitor y tecladoComparten monitor y teclado

Cada consola puede ejecutar una terminalCada consola puede ejecutar una terminal En GNU/Linux se intercambia de consola En GNU/Linux se intercambia de consola

virtual con Alt-F[1-7] típicamentevirtual con Alt-F[1-7] típicamente 1-6 consolas para terminal de texto1-6 consolas para terminal de texto 7 consola para terminal gráfica7 consola para terminal gráfica

Page 15: Curso linux clase_1_2012

Terminal VirtualTerminal Virtual

Una terminal es una conexión a un intérprete de Una terminal es una conexión a un intérprete de comandos (shell)comandos (shell) Típicamente, interfaz de textoTípicamente, interfaz de texto Asociada a una consolaAsociada a una consola

Años atrás esta función era desempeñada por Años atrás esta función era desempeñada por máquinas (consolas) creadas con ese propósito máquinas (consolas) creadas con ese propósito específico, que soportaban sólo una terminalespecífico, que soportaban sólo una terminal Conexión puerto serie con mainframeConexión puerto serie con mainframe

Luego aparecieron las llamadas Terminales Luego aparecieron las llamadas Terminales Virtuales, ejecutadas desde máquinas y SOs de Virtuales, ejecutadas desde máquinas y SOs de propósito múltiplepropósito múltiple

Page 16: Curso linux clase_1_2012

Intérprete de ComandosIntérprete de Comandos

En inglés conocido como En inglés conocido como shellshell Se comunica con la terminalSe comunica con la terminal

Recibe e interpreta las teclas pulsadas por el usuarioRecibe e interpreta las teclas pulsadas por el usuario Envía mensajes y resultados a la pantalla, en generalEnvía mensajes y resultados a la pantalla, en general

Reconoce un conjunto de comandos con Reconoce un conjunto de comandos con opciones y argumentos que permiten usar y opciones y argumentos que permiten usar y administrar el SOadministrar el SO

En GNU el shell es una herramienta muy En GNU el shell es una herramienta muy poderosa, indispensable para la administraciónpoderosa, indispensable para la administración

Page 17: Curso linux clase_1_2012

Intérprete de ComandosIntérprete de Comandos

ash, bash, sh, zsh, csh son nombres de shells ash, bash, sh, zsh, csh son nombres de shells conocidosconocidos

Comparado con entorno gráficoComparado con entorno gráfico Ocupa pocos recursos, es sencillo y rápido, programable Ocupa pocos recursos, es sencillo y rápido, programable

(scripts) y requiere muy poco ancho de banda en red(scripts) y requiere muy poco ancho de banda en red Puede resultar incómodo hasta que se lo llega a dominar, Puede resultar incómodo hasta que se lo llega a dominar,

es menos intuitivoes menos intuitivo Prompt (petición de comando)Prompt (petición de comando)

host:/directorio1/directorio2/ #host:/directorio1/directorio2/ # Para que una orden o comando sea reconocido, es Para que una orden o comando sea reconocido, es

necesario presionar INTRO (ENTER) luego de necesario presionar INTRO (ENTER) luego de tipearlotipearlo

Page 18: Curso linux clase_1_2012

ComandosComandos

Comandos pueden serComandos pueden ser Archivos ejecutablesArchivos ejecutables Built-ins (funciones integradas o implementadas en el intérprete)Built-ins (funciones integradas o implementadas en el intérprete) Scripts (Guiones)Scripts (Guiones)

OpcionesOpciones Modificadores del comportamiento del comandoModificadores del comportamiento del comando En gral. precedidos por un guión en su forma corta o 2 guiones en su En gral. precedidos por un guión en su forma corta o 2 guiones en su

forma largaforma larga ls -alls -al equivale a equivale a ls --all -lls --all -l

ParámetrosParámetros Típicamente los objetos (archivos, cadenas de texto, etc.) sobre los Típicamente los objetos (archivos, cadenas de texto, etc.) sobre los

que se ejecuta el comandoque se ejecuta el comando cat holacat hola

Introducir un comandoIntroducir un comando Teclear el comando y sus parámetros y presionar INTROTeclear el comando y sus parámetros y presionar INTRO

Page 19: Curso linux clase_1_2012

bashbash

Bourne-Again SHellBourne-Again SHell http://www.gnu.org/software/bash/http://www.gnu.org/software/bash/ Intérprete de comandos para GNUIntérprete de comandos para GNU Lenguaje de programaciónLenguaje de programación Stephen BourneStephen Bourne Similar (en gran parte compatible) a shSimilar (en gran parte compatible) a sh

Page 20: Curso linux clase_1_2012

bashbash

Builtins (exec, cd, break, history)Builtins (exec, cd, break, history) Entorno (environment)Entorno (environment) AliasAlias

alias, unaliasalias, unalias Las opciones y los parámetros pueden ir Las opciones y los parámetros pueden ir

casi siempre en cualquier ordencasi siempre en cualquier orden Para salir apropiadamente se utilizan los Para salir apropiadamente se utilizan los

comandos logout, exit o Ctrl-Dcomandos logout, exit o Ctrl-D

Page 21: Curso linux clase_1_2012

Entorno (environment)Entorno (environment)

Está conformado por el directorio en el Está conformado por el directorio en el que el usuario se encuentra y un conjunto que el usuario se encuentra y un conjunto de variables y funcionesde variables y funciones

pwdpwd muestra directorio actualmuestra directorio actual

setset muestra variables y funciones de entornomuestra variables y funciones de entorno

$PATH$PATH Variable de entorno que determina el camino Variable de entorno que determina el camino

que sigue el shell para buscar ejecutablesque sigue el shell para buscar ejecutables

Page 22: Curso linux clase_1_2012

Tema 4Tema 4

Documentación en líneaDocumentación en línea

Page 23: Curso linux clase_1_2012

Documentación en líneaDocumentación en línea

manman man comandoman comando Ej.: man lsEj.: man ls

infoinfo info comandoinfo comando Ej.: info lsEj.: info ls

Ayuda integrada en los comandosAyuda integrada en los comandos comando --help (típicamente)comando --help (típicamente) Ej.: ls --helpEj.: ls --help

Page 24: Curso linux clase_1_2012

manman

Es un sistema de ayuda en línea de LinuxEs un sistema de ayuda en línea de Linux SeccionesSecciones

1. Programas ejecutables y comandos de shell1. Programas ejecutables y comandos de shell 2. Llamadas al sistema (kernel)2. Llamadas al sistema (kernel) 3. Funciones de librerías C estándar3. Funciones de librerías C estándar 4. Archivos especiales4. Archivos especiales 5. Formatos de archivos y convenciones5. Formatos de archivos y convenciones 6. Juegos6. Juegos 7. Varios7. Varios 8. Comandos de administración del sistema8. Comandos de administración del sistema 9. Rutinas del kernel9. Rutinas del kernel

Page 25: Curso linux clase_1_2012

manman

La información que brinda típicamente contieneLa información que brinda típicamente contiene NOMBRE, SINOPSIS, DESCRIPCION, OPCIONESNOMBRE, SINOPSIS, DESCRIPCION, OPCIONES ARCHIVOS, EJEMPLOS, BUGS, HISTORIA, AUTORARCHIVOS, EJEMPLOS, BUGS, HISTORIA, AUTOR

Las búsquedas (con /, al igual que vim) no Las búsquedas (con /, al igual que vim) no distinguen mayúsculas de minúsculasdistinguen mayúsculas de minúsculas

man passwdman passwd man –f passwdman –f passwd man –k passwdman –k passwd man 5 passwdman 5 passwd

Page 26: Curso linux clase_1_2012

infoinfo

Sistema alternativo de documentaciónSistema alternativo de documentación Más profundidad que las páginas de Más profundidad que las páginas de

manualmanual Utiliza hipertextoUtiliza hipertexto EjemplosEjemplos

info grubinfo grub info bashinfo bash

Navegación:Navegación: TAB, ENTER, l, n, p, BACKSPACE, SPACE, qTAB, ENTER, l, n, p, BACKSPACE, SPACE, q

Page 27: Curso linux clase_1_2012

Tema 5Tema 5

Estructura de un sistema de Estructura de un sistema de archivos. Comandos relacionadosarchivos. Comandos relacionados

Page 28: Curso linux clase_1_2012

Sistema de archivosSistema de archivos

GNU/Linux utiliza una estructura jerárquica de tipo árbol GNU/Linux utiliza una estructura jerárquica de tipo árbol invertidoinvertido La mayor jerarquía está en la raízLa mayor jerarquía está en la raíz

La raíz (root) es designada con “/”La raíz (root) es designada con “/” Es donde comienza el árbol de directoriosEs donde comienza el árbol de directorios

Soportan enlaces (links)Soportan enlaces (links) Duros (hard)Duros (hard) Simbólicos (soft)Simbólicos (soft)

GNU intenta acercarse al FHSGNU intenta acercarse al FHS Algunas distribuciones tienen algunas diferenciasAlgunas distribuciones tienen algunas diferencias

Sistemas de archivos típicosSistemas de archivos típicos ext2, ext3, reiserfsext2, ext3, reiserfs

Page 29: Curso linux clase_1_2012

FHSFHS

Page 30: Curso linux clase_1_2012

FHSFHS

Filesystem Hierarchy StandardFilesystem Hierarchy Standard Define ubicaciones estándar para archivos y directoriosDefine ubicaciones estándar para archivos y directorios Ejemplos (R = requerido):Ejemplos (R = requerido):

/ El directorio raíz (R)/ El directorio raíz (R) /bin/ Órdenes esenciales binarios para todos los usuarios (cat, /bin/ Órdenes esenciales binarios para todos los usuarios (cat,

ls, cp...) (R)ls, cp...) (R) /dev/ Dispositivos (R)/dev/ Dispositivos (R) /home/ Directorios de datos de los usuarios/home/ Directorios de datos de los usuarios /etc/ Ficheros de configuración del sistema (R)/etc/ Ficheros de configuración del sistema (R) /lib/ Librerías esenciales para los binarios de /bin y /sbin (R)/lib/ Librerías esenciales para los binarios de /bin y /sbin (R) /var/ Ficheros variables utilizados por programas instaladas, /var/ Ficheros variables utilizados por programas instaladas,

como logs y archivos temporales (R)como logs y archivos temporales (R)

Page 31: Curso linux clase_1_2012

FHSFHS

/opt/ Paquetes de programas de aplicaciones estáticos (R)/opt/ Paquetes de programas de aplicaciones estáticos (R) /sbin/ Binarios de superusuario esenciales (init, route, ifup..) (R)/sbin/ Binarios de superusuario esenciales (init, route, ifup..) (R) /proc/ Sistema de archivos que documenta el estado del núcleo /proc/ Sistema de archivos que documenta el estado del núcleo

(kernel), principalmente archivos de texto (tiempo, red...), estos (kernel), principalmente archivos de texto (tiempo, red...), estos archivos permiten conocer y cambiar ciertos parámetros del archivos permiten conocer y cambiar ciertos parámetros del núcleo sin necesidad de reiniciar el sistemanúcleo sin necesidad de reiniciar el sistema

/mnt/ Sistemas de archivos montados temporalmente (R)/mnt/ Sistemas de archivos montados temporalmente (R) /boot/ Archivos estáticos para el cargador de arranque (R)/boot/ Archivos estáticos para el cargador de arranque (R) /tmp/ Archivos temporales (R)/tmp/ Archivos temporales (R) /usr/ Jerarquía secundaria (R)/usr/ Jerarquía secundaria (R)

Page 32: Curso linux clase_1_2012

Comandos relacionadosComandos relacionados

ls -al, dirls -al, dir Lista archivos (típ. en un directorio)Lista archivos (típ. en un directorio)

touch pruebatouch prueba Establece atime y mtime a la hora actualEstablece atime y mtime a la hora actual Crea el archivo si no existeCrea el archivo si no existe

stat archivostat archivo Muestra la información del inodoMuestra la información del inodo

file /sbin/badblocksfile /sbin/badblocks Intenta indicar el tipo de archivoIntenta indicar el tipo de archivo

mv origen destinomv origen destino Mueve archivos o directoriosMueve archivos o directorios Usado para renombrarUsado para renombrar

cp [-r] origen destinocp [-r] origen destino Copia archivosCopia archivos

Page 33: Curso linux clase_1_2012

Comandos relacionadosComandos relacionados

rm [-r] archivorm [-r] archivo Elimina el archivoElimina el archivo Con la opción -r puede eliminar directoriosCon la opción -r puede eliminar directorios

cd directoriocd directorio Cambia de directorio (change directory)Cambia de directorio (change directory)

mkdir [-p] directoriomkdir [-p] directorio Crea directorioCrea directorio

rmdir directoriormdir directorio Elimina directorio si está vacíoElimina directorio si está vacío

Page 34: Curso linux clase_1_2012

Comandos relacionadosComandos relacionados

findfind Busca archivosBusca archivos find -mmin -50find -mmin -50 find -perm 711find -perm 711 find -type dfind -type d find -size -200k | wc -lfind -size -200k | wc -l find /proc -user postgres -exec ls -l {} \;find /proc -user postgres -exec ls -l {} \; find /proc -user postgres | xargs ls -lfind /proc -user postgres | xargs ls -l

du -ch /home/usuario ; du -sh /usr/*du -ch /home/usuario ; du -sh /usr/* disk usagedisk usage muestra el espacio que utiliza un directoriomuestra el espacio que utiliza un directorio

df -Hdf -H reporta utilización de los sistemas de archivos montadosreporta utilización de los sistemas de archivos montados -i muestra información sobre los inodos-i muestra información sobre los inodos

Page 35: Curso linux clase_1_2012

Comandos relacionadosComandos relacionados

chmod ug+x archivochmod ug+x archivo Usuario dueño y grupo: permiso de ejecuciónUsuario dueño y grupo: permiso de ejecución

chown usuario archivochown usuario archivo cambia el propietariocambia el propietario

chgrp grupo archivochgrp grupo archivo cambia el grupocambia el grupo

Page 36: Curso linux clase_1_2012

Expansión de nombresExpansión de nombres

bash realiza expansión de nombres de bash realiza expansión de nombres de archivos (filename expansion)archivos (filename expansion) reconoce “comodines”reconoce “comodines” *, ?*, ? [abcd], [^abcd], [a-d][abcd], [^abcd], [a-d] {uno,dos,*tres*}{uno,dos,*tres*}

realiza la expansión en los argumentos de la realiza la expansión en los argumentos de la línea de comando sin comillaslínea de comando sin comillas ls -l {uno*,dos.??, [pb]rueba}ls -l {uno*,dos.??, [pb]rueba} echo *echo *

Page 37: Curso linux clase_1_2012

EnlacesEnlaces Ahorran espacio en discoAhorran espacio en disco Simplifican tareas de administraciónSimplifican tareas de administración HardHard

Copia la entrada del directorio originalCopia la entrada del directorio original Mismo inodoMismo inodo No pueden apuntar a directoriosNo pueden apuntar a directorios Sólo sirven en un mismo sistema de archivosSólo sirven en un mismo sistema de archivos

SoftSoft Es un archivo que contiene la ruta al archivo referidoEs un archivo que contiene la ruta al archivo referido Pueden apuntar a directoriosPueden apuntar a directorios Pueden “cruzar” sistemas de archivosPueden “cruzar” sistemas de archivos El archivo referenciado puede no existirEl archivo referenciado puede no existir

ln [-s] origen destinoln [-s] origen destino cp -l origen destinocp -l origen destino /etc/rc.d/rc?.d/etc/rc.d/rc?.d

Page 38: Curso linux clase_1_2012

Tema 6Tema 6

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

Page 39: Curso linux clase_1_2012

bashbash ~/.bash_history~/.bash_history

Historia de comandosHistoria de comandos

/etc/profile, ~/.profile/etc/profile, ~/.profile Ajustes del sistema y personalesAjustes del sistema y personales Ejecuta bashrcEjecuta bashrc

historyhistory Muestra el historial de comandosMuestra el historial de comandos

!! Ejecuta un comando, !23Ejecuta un comando, !23

fc (fix command)fc (fix command) Edita comandos del historialEdita comandos del historial fc -l, fc 15 30fc -l, fc 15 30 Ejecuta al salir lo que queda en el bufferEjecuta al salir lo que queda en el buffer

Page 40: Curso linux clase_1_2012

Otros comandosOtros comandos

exportexport Establece una variable en el ambienteEstablece una variable en el ambiente

unset [-v | -f]unset [-v | -f] Elimina definición de variables o funcionesElimina definición de variables o funciones

execexec Reemplaza el shell, no crea un nuevo procesoReemplaza el shell, no crea un nuevo proceso

pwd (print working directory)pwd (print working directory) Muestra directorio actualMuestra directorio actual

echoecho Presenta textoPresenta texto

Page 41: Curso linux clase_1_2012

RedirecciónRedirección

Vías de comunicación estándarVías de comunicación estándar Entrada, stdin o standard input (file Entrada, stdin o standard input (file

descriptor o descriptor de archivo 0)descriptor o descriptor de archivo 0) Típicamente el tecladoTípicamente el teclado

Salida, stdout o standard output (f.d. 1)Salida, stdout o standard output (f.d. 1) MonitorMonitor

Error, stderr o standard error (f.d. 2)Error, stderr o standard error (f.d. 2) MonitorMonitor

Page 42: Curso linux clase_1_2012

RedirecciónRedirección

>> Redirige la salida estándarRedirige la salida estándar Crea el archivo si no existeCrea el archivo si no existe Borra su contenido si existeBorra su contenido si existe

>>>> Igual que > pero agrega al contenido si existeIgual que > pero agrega al contenido si existe

<< Redirige entrada estándarRedirige entrada estándar

<< delimitador<< delimitador Redirige la entrada hasta encontrar el delimitadorRedirige la entrada hasta encontrar el delimitador

<<< palabra<<< palabra Envia la palabra a la entrada estándarEnvia la palabra a la entrada estándar

Page 43: Curso linux clase_1_2012

RedirecciónRedirección

Redirigir stdout y stderr de la ejecución de un comandoRedirigir stdout y stderr de la ejecución de un comando comando &>archivocomando &>archivo comando >&archivocomando >&archivo comando >archivo 2>&1comando >archivo 2>&1

| Tuberías (pipes)| Tuberías (pipes) permite utilizar la salida de un comando como la entrada de otropermite utilizar la salida de un comando como la entrada de otro

`` comillas hacia atrás (backticks)`` comillas hacia atrás (backticks) son reemplazadas por el resultado de la ejecución del comando son reemplazadas por el resultado de la ejecución del comando

contenidocontenido actualmente se prefiere $(comando)actualmente se prefiere $(comando)

./prueba | tee arch1 arch2 2>&1./prueba | tee arch1 arch2 2>&1 Copia stdout y stderr a archivosCopia stdout y stderr a archivos Redirige a stdin tambiénRedirige a stdin también

Page 44: Curso linux clase_1_2012

FiltrosFiltros

En general soportan múltiples archivos de entrada y En general soportan múltiples archivos de entrada y también stdintambién stdin

wc -l [archivo]wc -l [archivo] Cuenta palabras, líneas, y bytesCuenta palabras, líneas, y bytes

tail -n 20 [archivo]tail -n 20 [archivo] Muestra la parte final de un archivoMuestra la parte final de un archivo

head -n 20 [archivo]head -n 20 [archivo] Muestra el principio de un archivoMuestra el principio de un archivo

cat [archivo]cat [archivo] Concatena archivos y los muestraConcatena archivos y los muestra

cut -d “;” -f 2 [archivo]cut -d “;” -f 2 [archivo] Corta secciones de una líneaCorta secciones de una línea

Page 45: Curso linux clase_1_2012

Manipulación de procesosManipulación de procesos

psps Process StatusProcess Status Muestra una instantánea del estado de los procesosMuestra una instantánea del estado de los procesos

toptop Muestra el estado de los procesos en tiempo realMuestra el estado de los procesos en tiempo real Permite manipularlos (renice, kill)Permite manipularlos (renice, kill)

kill PIDkill PID Envía señales a los procesosEnvía señales a los procesos Lista señalesLista señales

killall comandokillall comando Es como kill pero por nombre, no por PIDEs como kill pero por nombre, no por PID

Page 46: Curso linux clase_1_2012

Manipulación de procesosManipulación de procesos

comando &comando & El comando se ejecutará en segundo planoEl comando se ejecutará en segundo plano

jobs [-l]jobs [-l] Muestra los procesos detenidos y en ejecución en segundo planoMuestra los procesos detenidos y en ejecución en segundo plano

bg [jobspec]bg [jobspec] El proceso en ejecución o el especificado pasa a ejecutarse en El proceso en ejecución o el especificado pasa a ejecutarse en

segundo planosegundo plano

fg [jobspec]fg [jobspec] Devuelve un proceso al primer planoDevuelve un proceso al primer plano

disowndisown Inmuniza al proceso contra la señal SIGHUP que el shell (por ser el Inmuniza al proceso contra la señal SIGHUP que el shell (por ser el

padre) le puede redirigir por ejemplo al finalizarpadre) le puede redirigir por ejemplo al finalizar

Page 47: Curso linux clase_1_2012

Manipulación de procesosManipulación de procesos

nohup comando &nohup comando & similar a disownsimilar a disown envía la salida a nohup.out o ~/nohup.outenvía la salida a nohup.out o ~/nohup.out stdin no es manejado (no recibe stdin)stdin no es manejado (no recibe stdin)

nice -10 comandonice -10 comando Ejecuta un programa con prioridad modificadaEjecuta un programa con prioridad modificada

renice +5 PIDrenice +5 PID Cambia la prioridad de ejecución de un procesoCambia la prioridad de ejecución de un proceso Puede emplearse con usuarios y gruposPuede emplearse con usuarios y grupos

Page 48: Curso linux clase_1_2012

Usuarios y contraseñasUsuarios y contraseñas

useradd useradd nombre_usuarionombre_usuario Crea usuarioCrea usuario

userdel userdel nombre_usuarionombre_usuario Elimina usuarioElimina usuario

usermodusermod Modifica usuario (cambia shell, agrega a grupo, etc.)Modifica usuario (cambia shell, agrega a grupo, etc.)

groupadd, groupdel, groupmodgroupadd, groupdel, groupmod Manejar gruposManejar grupos

passwd passwd nombre_usuarionombre_usuario Cambia la contraseña del usuarioCambia la contraseña del usuario

Page 49: Curso linux clase_1_2012
Page 50: Curso linux clase_1_2012
Page 51: Curso linux clase_1_2012

vivi Editor de textoEditor de texto Usualmente reemplazado por vimUsualmente reemplazado por vim

vi mejoradovi mejorado vimtutorvimtutor

tutorialtutorial /, ?/, ?

BúsquedaBúsqueda 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

Page 52: Curso linux clase_1_2012
Page 53: Curso linux clase_1_2012
Page 54: Curso linux clase_1_2012
Page 55: Curso linux clase_1_2012
Page 56: Curso linux clase_1_2012
Page 57: Curso linux clase_1_2012
Page 58: Curso linux clase_1_2012
Page 59: Curso linux clase_1_2012
Page 60: Curso linux clase_1_2012

FinFin