Guia Unix Y Linux
Enviado por krazydrv • 8 de Abril de 2013 • 1.759 Palabras (8 Páginas) • 420 Visitas
Guía de referencia de comandos Unix y Linux
Pello Xabier Altadill Izura
www.pello.info
Foro sobre linux
1. INTRODUCCIÓN
2. REFERENCIA DE COMANDOS UNIX-LINUX
3. COMBINACIONES ÚTILES
4. DIAGNOSTICO DE SISTEMA
5. RESOLUCION DE PROBLEMAS
6. NOTAS, ACTUALIZACIONES
INTRODUCCIÓN
Nota: Este guía no es para leer de forma seguida, este guía pretende ser una referencia de comandos Unix/Linux que se pueda consultar en cualquier momento. No pretende ser una guía exhaustiva, sino una referencia que sirva como recordatorio de los comandos más utilizados.
El shell:
Existen distintos interpretes de comandos en el mundo Unix: csh, bash, tsh, ksh,.. pero salvo pequeñas diferencias todos son parecidos. En este documento partimos sobretodo de bash, ya que esta muy extendido a través de Linux.
Asi como windows lo vemos como un entorno con ventanas, programas, etc,.. unix lo debemos ver como lo siguiente:
Unix esta formado por procesos y ficheros.
Y no hay nada más. Los dispositivos como el disco, el cdrom, la pantalla, esta representado como un fichero en el sistema linux, dentro de /dev. Los sockets de comunicación son ficheros. Los directorios son ficheros. Los ficheros son ficheros.
-Redirección de entrada/salida
> : con este símbolo podemos redirigir la salida estandar de un comando a un fichero. Téngase en cuenta una cosa. Si decimos fichero siempre lo vamos a decir de manera genérica, puede ser un fichero de texto o la pantalla de terminal, ahí cabe TODO.
>> : con esto redirigimos el resultado a un fichero, pero sin sobrescribirlo, lo que hacemos es escribir al final de este (append en ingles).
< : con esto redirigimos el contenido del fichero a un programa. Se usa para utilizar el contenido del fichero como input de un comando.
<< END : este redirección se utiliza para iniciar el paso de parámetros a un programa, y se termina cuando escribimos "END" o cualquier otra palabra que hayamos especificado al inicio del comando.
DIAGN�STICO DE SISTEMA
C�mo diagnosticar el sistema en 20 segundos:
Para diagnosticar el estado de un Linux de manera r�pida:
Por consola: basta con utilizar 5 comandos b�sicos, en el siguiente orden:
0. uname -a : nos dice la version de kernel, procesador, y nombre de sistema
1. df : nos muestra la ocupaci�n del disco duro.
2. free : nos muestra el uso de la memoria
3. ps -aux. : nos muestra los procesos en curso
4. netstat -a : nos muestra las conexiones de red actuales
Otro programa muy util para el diagnostico del sistema y las conexiones de red ser�a IPTRAF
que se ejecuta como iptraf o /usr/bin/iptraf.
ESTADO DE DISCO: lo normal es que de un dia para otro no aumente ni en un punto porcentual,
a no ser que tenga algun servicio concreto de estadisticas o BBDD. Si llega al 90% hay que empezar
a barrer el sistema de ficheros, localizar ficheros grandes, etc.
ESTADO DE PROCESOS: normalmente veremos una serie de procesos que van desde el ID 1 al 600-700,
muchos de los cuales comienzan por "[k". Todos ellos son los iniciados al arrancar del sistema. El resto
son servidores iniciados posteriormente. El estado de los procesos en marcha suele mostrar siempre el mismo
aspecto, aunque cada servidor tendra uno distinto. Conviene conocerlo. En cuanto a la ocupacion de la CPU
ningun servicio suele ocupar mas de un 10% suele tener esos picos). Todo lo que tenga valores como
40% o mas se consideran niveles anormales; puede tratarse de generadores de estadisticas.Un programa
UTIL para ver los porcentajes es top.
ESTADO DE MEMORIA: mientras quede RAM libre no hay problema. Un servidor Linux incluso puede
aguantar usando SWAP.
RESOLUCION DE PROBLEMAS
En general, los problemas pueden venir de tres partes:
1.- Conectividad: problemas de conexi�n a red.
2.- Servidores: servicios que no funcionan correctamente, no arrancan, etc..
3.- Sistema: discos duros llenos, errores de dispositivos, kernel-panic, etc..
1.- Conectividad
Hay que asegurarse de que hay conectividad. Para ello seguimos los siguientes pasos:
- Un ping continuo a la máquina.
- Intentar acceder a alguno de los servicios del equipo (23, 22). Algunos máquinas pueden tener
cerrado el ping o los ICMP en general.
Si no hay conectividad, entonces es un problemas que deben solventar los responsables de las
conexiones, y determinar si es responsabilidad nuestra
2.- Servidores
Existen varios modos de verificar que los servicios estan en marcha,
y los m�s practicos son los siguientes:
-Comprobar que el proceso esta en marcha (ps -axf | grep nombre_proceso)
-Comprobar que el puerto que utiliza esta abierto (netstat -ln | grep puerto)
-Comprobar que el puerto responde correctamente (telnet localhost 25 por ejemplo)
-Comprobar que esta generando logs (en /var/log)
-Comprobarlo con el script de inicio (/etc/rc.d/init.d/servicio status)
A veces puede ocurrir que el proceso del servicio se pare nada mas iniciarse,
por eso conviene comprobar DOS veces que el proceso esta en marcha.
Proceso GENERAL de resolucion
Este proceso describe el proceso gen�rico de resoluci�n de problemas
de cualquier servidor de Linux:
0. Verificar si el servicio esta en marcha:
Se puede hacer con: service <servicio> status
/etc/rc.d/init.d/servicio status
ps -axf | grep servicio
netstat -ln | grep puerto_servicio
telnet localhost puerto_servicio
1. Si el servicio esta parado, iniciarlo directamente con:
/etc/rc.d/init.d/servicio start
2. Chequear dos veces si el servicio esta en marcha realmente.
3. En cualquier caso, si esta en marcha o parado, chequear los logs
correspondientes al servicio para verificar o comprobar errores.
4. Seg�n la informaci�n que nos den los logs actuar en consecuencia.
De todas formas, cada servicio Linux tiene sus pecualiaridades, por eso se
describen por separado a continuaci�n.
Notas: debe tenerse en cuenta que los servicios dependen a veces de otros servicios
externos o internos, cosa que a veces puede provocar malentendidos.
REFERENCIA DE COMANDOS UNIX-LINUX
La siguiente lista de comandos pretende ser de utilidad como referencia rapida
para utilizar comandos de
...