Sei sulla pagina 1di 6

Comandos Unix Linux

Gua de referencia de comandos Unix y Linux


Pello Xabier Altadill Izura
www.pello.info
Foro sobre linux

1.
2.
3.
4.
5.
6.

INTRODUCCIN
REFERENCIA DE COMANDOS UNIX-LINUX
COMBINACIONES TILES
DIAGNOSTICO DE SISTEMA
RESOLUCION DE PROBLEMAS
NOTAS, ACTUALIZACIONES

INTRODUCCIN
Nota: Este gua no es para leer de forma seguida, este gua pretende ser una referencia de comandos Unix/Linux que se pueda consultar en
cualquier momento. No pretende ser una gua exhaustiva, sino una referencia que sirva como recordatorio de los comandos ms utilizados.
El shell:
Existen distintos interpretes de comandos en el mundo Unix: csh, bash, tsh, ksh,.. pero salvo pequeas diferencias todos son parecidos. En este
documento partimos sobretodo de bash, ya que esta muy extendido a travs 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 ms. Los dispositivos como el disco, el cdrom, la pantalla, esta representado como un fichero en el sistema linux, dentro de /dev.
Los sockets de comunicacin son ficheros. Los directorios son ficheros. Los ficheros son ficheros.
-Redireccin de entrada/salida
> : con este smbolo podemos redirigir la salida estandar de un comando a un fichero. Tngase en cuenta una cosa. Si decimos fichero siempre lo
vamos a decir de manera genrica, 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 redireccin se utiliza para iniciar el paso de parmetros 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

http://www.pello.info/referencia_linux.html[16/01/2013 15:49:07]

Comandos Unix Linux


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 mquina.
- Intentar acceder a alguno de los servicios del equipo (23, 22). Algunos mquinas 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 sistema. Se ha agrupado en dos: los comandos
de sistema corrientes y los relacionados con la administracion.
Comando

ls
Descripci n: =list. listar contenido de directorios.
Ejemplos: ls, ls -l, ls -fl, ls --color

cp
Descripci n: =copy. copiar ficheros/directorios.
Ejemplos:cp -rfp directorio /tmp, cp archivo archivo_nuevo

rm
Descripci n: =remove. borrar ficheros/directorios.
Ejemplos: rm -f fichero, rm -rf directorio, rm -i fichero

http://www.pello.info/referencia_linux.html[16/01/2013 15:49:07]

Comandos Unix Linux


mkdir
Descripci n: =make dir. crear directorios.
Ejemplos: mkdir directorio
rmdir
Descripci n: =remove dir. borrar directorios, deben estar vacios.
Ejemplos: rmdir directorio
mv
Descripci n: =move. renombrar o mover ficheros/directorios.
Ejemplos: mv directorio directorio, mv fichero nuevo_nombre, mv fichero a_directorio
date
Descripci n: gestion de fecha de sistema, se puede ver y establecer.
Ejemplos: date, date 10091923
history
Descripci n: muestra el historial de comandos introducidos por el usuario.
Ejemplos: history | more
more
Descripci n: muestra el contenido de un fichero con pausas cada 25 lineas.
Ejemplos: more fichero
grep
Descripci n: filtra los contenidos de un fichero.
Ejemplos:cat fichero | grep cadena
cat
Descripci n: muestra todo el contenido de un fichero sin pausa alguna.
Ejemplos: cat fichero
chmod
Descripci n: cambia los permisos de lectura/escritura/ejecucion de ficheros/directorios.
Ejemplos: chmod +r fichero, chmod +w directorio, chmod +rw directorio -R, chmod -r fichero
chown
Descripci n: =change owner. cambia los permisos de usuario:grupo de ficheros/directorios.
Ejemplos: chown root:root fichero, chown pello:usuarios directorio -R
tar
Descripci n: =Tape ARchiver. archivador de ficheros.
Ejemplos: tar cvf fichero.tar directorio , tar xvf fichero.tar, tar zcvf fichero.tgz directorio, tar zxvf fichero.tgz
gunzip
Descripci n: descompresor compatible con ZIP.
Ejemplos: gunzip fichero
rpm
Descripci n: gestor de paquetes de redhat. Para instalar o actualizar software de sistema.
Ejemplos: rpm -i paquete.rpm, rpm -qa programa, rpm --force paquete.rpm, rpm -q --info programa
mount
Descripci n: montar unidades de disco duro, diskette, cdrom.
Ejemplos: mount /dev/hda2 /mnt/lnx, mount /dev/hdb1 /mnt -t vfat
umount
Descripci n: desmontar unidades.
Ejemplos: umount /dev/hda2, umount /mnt/lnx
wget
Descripci n: programa para descargar ficheros por http o ftp.
Ejemplos: wget http://www.rediris.es/documento.pdf
lynx
Descripci n: navegador web con opciones de ftp, https.
Ejemplos: lynx www.ibercom.com, lynx --source http://www.ibercom.com/script.sh | sh
ftp
Descripci n: cliente FTP.
Ejemplos: ftp ftp.ibercom.com
whois
Descripci n: whois de dominios.
Ejemplos: whois ibercom.com
who

http://www.pello.info/referencia_linux.html[16/01/2013 15:49:07]

Comandos Unix Linux


Descripci n: muestra los usuarios de sistema que han iniciado una sesion.
Ejemplos: who, w, who am i
mail
Descripci n: envio y lectura de correo electronico.
Ejemplos: mail pepe@ibercom.com < fichero, mail -v pepe@ibercom.com < fichero
sort
Descripci n: ordena el contenido de un fichero.
Ejemplos: cat /etc/numeros | sort, ls | sort
ln
Descripci n: =link. para crear enlaces, accesos directos.
Ejemplos: ln -s /directorio enlace
tail
Descripci n: muestra el final (10 lineas) de un fichero.
Ejemplos:tail -f /var/log/maillog, tail -100 /var/log/maillog | more
head
Descripci n: muestra la cabecera (10 lineas) de un fichero.
Ejemplos: head fichero, head -100 /var/log/maillog | more
file
Descripci n: nos dice de que tipo es un fichero.
Ejemplos: file fichero, file *
Comandos de administracion
sysctl
Descripcin: Configurar los parmetros del kernel en tiempo de ejuecucin.
Ejemplos: sysctl -a
ulimit
Descripcin: muestra los limites del sistema (maximo de ficheros abiertos, etc..)
Ejemplos: ulimit
adduser
Descripci n: a adir usuario de sistema.
Ejemplos: adduser pepe, adduser -s /bin/false pepe
userdel
Descripci n: = eliminar usuario de sistema
Ejemplos: userdel pepe
usermod
Descripci n: = modificar usuario de sistema
Ejemplos: usermod -s /bin/bash pepe
df
Descripci n: = disk free. espacio en disco disponible. Muy util.
Ejemplos: df, df -h
uname
Descripci n: =unix name. Informacion sobre el tipo de unix en el que estamos, kernel, etc.
Ejemplos: uname, uname -a
netstat
Descripci n: la informacion sobre las conexiones de red activas.
Ejemplos: netstat, netstat -ln, netstat -l, netstat -a
ps
Descripci n: =proccess toda la informacion sobre procesos en ejecucion.
Ejemplos: ps, ps -axf, ps -A, ps -auxf
free
Descripci n: muestra el estado de la memoria RAM y el SWAP.
Ejemplos: free
ping
Descripci n: heramienta de red para comprobar entre otras cosas si llegamos a un host remoto.
Ejemplos: ping www.rediris.es
traceroute
Descripci n: herramienta de red que nos muestra el camino que se necesita para llegar a otra maquina.
Ejemplos: traceroute www.rediris.es

http://www.pello.info/referencia_linux.html[16/01/2013 15:49:07]

Comandos Unix Linux


du
Descripci n: =disk use. uso de disco. Muestra el espacio que esta ocupado en disco.
Ejemplos: du *, du -sH /*, du -sH /etc
ifconfig
Descripci n: =interface config. configuracion de interfaces de red, modems, etc.
Ejemplos: ifconfig, ifconfig eth0 ip netmask 255.255.255.0
route
Descripci n: gestiona las rutas a otras redes.
Ejemplos: route, route -n
iptraf
Descripci n: muestra en una aplicacion de consola TODO el trafico de red IP, UDP, ICMP.
Permite utilizar filtros, y es SUMAMENTE UTIL para diagnostico y depuracion de firewalls
Ejemplos: iptraf
tcpdump
Descripci n: vuelca el contenido del trafico de red.
Ejemplos: tcpdump, tcpdump -u
lsof
Descripci n: muestra los ficheros(librerias, conexiones) que utiliza cada proceso
Ejemplos: lsof, lsof -i, lsof | grep fichero
lsmod
Descripci n: Muestra los modulos de kernel que estan cargados.
Ejemplos: lsmod
modprobe
Descripci n: Trata de instalar un modulo, si lo encuentra lo instala pero de forma temporal.
Ejemplos: modprobe ip_tables, modprobe eepro100
rmmod
Descripci n: Elimina modulos del kernel que estan cargados
Ejemplos: rmmod <nombre de modulo>
sniffit
Descripci n: Sniffer o husmeador de todo el trafico de red. No suele venir instalado por defecto.
Ejemplos: sniffit -i

COMBINACIONES UTILES
Los comandos son muy tiles, pero con el conocimiento bsico del shell y sus comandos tenemos armas muy poderosas que muestran todo el
potencial del interprete de comandos Unix. A continuacin se muestran algunos ejemplos avanzados de comandos que se usan con cierta frecuencia.
comando | grep filtro
A la salida de cualquier comando le podemos aplicar grep para que solo nos muestre
la informacion que nos interesa.
mail pepe@ibercom.com < fichero.conf
Con esto nos enviamos rapidamente un fichero de sistema a nuestra cuenta.
mail -v testing@dominio.com
Con el parametro -v, al terminar de escribir (. enter), veremos la traza del correo hasta el servidor,
si es aceptado o no.
find / -name 'filtro' -print
Find es un buscador de ficheros muy potente y con muchos parametros, todos los que nos podamos
imaginar (tama os, fechas, tipos de archivos, etc..)
Al hacer more:
/cadena : podemos hacer busqueda de cadena
f : adelante
b: volver arriba
v: iniciar vi en la linea que estamos

NOTAS, ACTUALIZACIONES
Este documento se actualiza frecuentemente. Para tener la ltima versin conviene mirar la versin de la web. En cualquier caso, si lo que se desea
es una referencia rpida basta con cualquier versin.
Autor: Pello Xabier Altadill Izura
Foro sobre linux
Versiones: http://pello.info

http://www.pello.info/referencia_linux.html[16/01/2013 15:49:07]

Comandos Unix Linux

Volver

http://www.pello.info/referencia_linux.html[16/01/2013 15:49:07]

Potrebbero piacerti anche