Post on 20-Jun-2015
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
utn@ernet.com.arutn@ernet.com.ar
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
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 1Tema 1
Instalación y configuración de una Instalación y configuración de una máquina virtualmáquina virtual
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
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)
Tema 2Tema 2
Inicio de sesión en GNU/LinuxInicio de sesión en GNU/Linux
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
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
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)
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)
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
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
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
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
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
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
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
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
Tema 4Tema 4
Documentación en líneaDocumentación en línea
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
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
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
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
Tema 5Tema 5
Estructura de un sistema de Estructura de un sistema de archivos. Comandos relacionadosarchivos. Comandos relacionados
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
FHSFHS
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)
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)
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
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
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
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
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 *
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
Tema 6Tema 6
Otros comandos. Crear usuarios. Otros comandos. Crear usuarios. Cambiar la contraseña.Cambiar la contraseña.
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
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
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
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
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
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
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
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
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
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
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
FinFin