Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Buscar
Saltar al contenido
Home
Comando: pwd
Descripcin: Nos muestra en que directorio estamos parados
Uso: pwd
Comando: ls
Descripcin: Lista los archivos y directorios del directorio donde estemos. Tambin se
puede listar otros directorios distintos de donde estamos.
Uso: ls [opciones] [directorio]
Ejemplos:
Comando: find
Descripcin: Comando para buscar archivos dentro de nuestro filesystem
Uso: find [opciones] [path] [expresion] [acciones]
Ejemplos:
find . -name archivo (busca en el directorio donde esto el archivo con nombre
archivo)
find / -name archivo -print (busca en todo el filesystem el archivo con nombre
archivo mostrandome la ruta completa)
Comando: chmod
Descripcin: Cambia los perisos de usuario, grupo y otros de archivos y directorios
Uso: chmod [opciones] [modo] [archivo]
La estructura de losp permisos es la siguiente:
-rwxrwxrwx owner group size date file
Los permisos son asignados por nmeros los cuales nos muestras si es de escritura, lectura
o ejecucin. Los nmeros y sus permisos son:
r=4
w=2
x=1
Sumando estos nmeros nos d el permiso que necesitamos, sea para el dueo (owner),
grupo, u otros:
Entonces seria:
chown 0755 file
Quedando con el ejemplo anterior
-rwxr-xr-x owner group size date file
Comando: chown
Descripcin: Cambia los permisos de el dueo (owner) de un archivo
Uso: chown dueo_nuevo file
Comando: chgrp
Descripcin: Cambia los permisos del grupo (group) de un archivo
Uso: chgrp grupo_nuevo file
Comando: grep
Descripcin: Busca lineas dentro de un archivo. Puede usarse en combinacion con otros
comandos como el ls
Uso: grep [opciones] linea
Ejemplos:
grep linea
Comando: ifconfig
Descripcin: Nos muestra datos de nuestra interface de red (direccin ip, interface, etc) y
tambin se puede usar de herramienta de configuracin para nuestra interface de red.
Uso: ifconfig [interface]
Ejemplo:
ifconfig eth0 down (desconecta nuestra interface de red dem comando ifdown)
ifconfig eth0:1 192.168.0.1 netmask 255.255.255.0 (agrega una placa de red virtual
eth0:1 con ip 192.168.0.1 y mscara de subred 255.255.255.0)
Comando: kill
Descripcin: Comando que nos permite poder para procesos enviando una seal forzada de
terminacin.
Uso: kill [opciones] [trabajo o PID]
Ejemplos:
kill -9 1234 (termina con el proceso 1234 sin esperar respuesta alguna de este)
Comando: ps
Descripcin: Muestra informacin de los procesos que se estan corriendo en nuestro
sistema.
Uso: ps [opciones]
Ejemplos:
ps -L
Comando: cat
Descripcin: Nos muestra el contenido de un archivo
Uso: cat archivo
Comando: ln
Descripcin: Nos permite hacer enlaces simblicos de un archivo
Uso: ln [opciones] archivo nombre_del_link
Ejemplos:
ln -s archivo link_del_archivo
Comando: mkdir
Descripcin: Comando para crear directorios
Uso: mkdir directorio
Comando: rmdir
Descripcin: Comando para borrar directorios
Uso: rmdir [opciones] directorio
Comando: sudo
Descripcin: Nos permite ejecutar comandos como otro usuario si no se especifica se
ejecuta como el superusuario o root
Uso: sudo comando
Comando: tail
Descripcin: Nos permite ver las ultimas lineas (por default son 10) de algun archivo.
Uso: tail [opciones] archivo
Comando: rm
Descripcin: Comando para borrar archivos.
Uso: rm [opciones] archivo
Ejemplos:
Comando: mv
Descripcin: Comando para mover archivos
Uso: mv [opciones] origen destino
Comando: cp
Descripcin: Comando para copiar archivos
Uso: cp [opciones] origen destino
Comando: tar
Descripcin: Desempaquetador/empaquetador de archivos
Uso: tar [-funciones] [opciones] archivo
Ejemplos:
tar -xvzf archivo.tar.gz (descomprime el archivo que tiene como formato zip)
Comando: top
Descripcin: Visor de procesos que estan corriendo en nuestro sistema
Uso: top [opciones]
Comando: whoami
Descripcin: Nos muestra el id del usuario y el nombre
Uso: whoami [opciones]
Comando: who
Descripcin: Nos muestra una lista de los usuarios actualmente logueados en nuestro
sistema.
Uso: who [opciones]
Comando: uname
Descripcin: Nos muestra informacin de nuestro sistema y de nuestra mquna
Uso: uname [opciones]
Ejemplos:
Comando: crontab
Descripcin: Administrador de tareas de nuestro sistema
Uso: crontab [-u usuario]
Ejemplos:
Estructura:
Este es un ejemplo de la estructura del archivo cron
xx xx xx xx x usuario /usr/bin/comando
La lista de los campos es la siguente
Campo 1 = Minutos
Campo 2 = Hora
Campo 3 = Dia
Campo 4 = Mes
Comando: ping
Descripcin: Envio de paquetes ip y su respuesta como testeo de redes.
Uso: ping [opciones] destino
Comando: traceroute
Descripcin: Nos muestra la ruta que toma nuestros paquetes ip hasta un destino
Uso: traceroute [opciones] host [tamao_del_paquete]
Comando: wget
Descripcin: Comando que nos permite descargar archivos desde internet con la linea de
comando
Uso: wget [opciones] url
Comando: rcp
Descripcin: Comando para copiar archivos o directorios remotamente. La sintaxis del
archivo debe ser usuario@host:path
Uso: rcp [opciones] archivo1 archivo 2
Comando: scp
Descripcin: Idem rcp pero en forma segura a travez de SSL.
Comando: shutdown
Descripcin: Comando para apagar o reiniciar nuestro sistema
Uso: shutdown [opciones] [cuando] [mensaje]
Ejemplos:
Links
http://www.oreillynet.com/linux/cmd/
http://ss64.com/bash/
http://www.linuxbsd.com.br/portal/?q=node/40
Share this:
Compartir
Elemento 1
Buscar:
Siguenos en
Entradas Recientes
Feliz Navidad!!!!!
Recent tweets
Interesante para una intranet pequea - Installing Online Editors on Debian with
ONLYOFFICE Document Server howtoforge.com/tutorial/onlyo 1 week ago
RT @linuxalert: The Linux Foundation releases open source hypervisor Xen 4.3
dlvr.it/3frfvt 1 year ago
Etiquetas
.deb 10.04
Android apt Argentina Audio Bash BSD Buenos Aires CaFeLug Chrome comandos Consola Copyleft
Cdigo Abierto
GNU
GNU/Linux Google
GPL Informtica Instalacin Internet Juegos Kernel Lanzamiento Lenny Libre LibreOffice Libros
Linux
Paquetes
Source Oracle
Seguridad Software
Libre Squeeze Sun SuSe tecnologia Tux Tuxinfo Ubuntu Unix Usuarios Video VirtualBox
Virtualizacin Web Windows
Una de las tareas ms frecuentes y tediosas del administrador de sistemas es evitar que se
llenen los sistemas de ficheros de una mquina, pues cuando un servidor se queda sin
espacio las consecuencias son impredecibles. Dependiendo de cmo est estructurado el
sistema de ficheros raz de dicha mquina y de la divisin entre distintas particiones o
volmenes que hayamos establecido, dichas consecuencias sern ms o menos graves, pero
en cualquier caso indeseables.
En cualquier caso siempre es mejor prevenir que curar, por lo que conviene utilizar
herramientas que realicen la rotacin automtica de logs como logrotate y scripts
personalizados que vigilen y lleven a cabo acciones peridicas de vaciado para evitar que
se nos llenen nuestros sistemas de ficheros. No obstante, an usando estos mtodos de
prevencin sern muchas las ocasiones en que tendremos que actuar manualmente para
solucionar problemas que seguro se producirn.
A continuacin recojo una recopilacin de los comandos Linux que a mi me resultan
ms tiles en el da a da para liberar espacio y mantener desde el intrprete de comandos
mis sistemas de ficheros en un estado de salud ptimo.
1. Comprobar el espacio libre disponible
Para saber el espacio libre del que disponemos en todos los sistemas de ficheros de nuestra
mquina ejecutaremos el siguiente comando:
$ df -h
S.ficheros
/dev/sdb5
udev
tmpfs
none
none
/dev/sdb1
/dev/sdb10
/dev/sdb6
/dev/sdb7
/dev/sdb8
/dev/sdb11
/dev/sda1
Tamao Usados
3,9G
842M
2,0G
4,0K
791M
956K
5,0M
0
2,0G
72M
118M
91M
31G
6,8G
23G
12G
9,6G
1,5G
2,9G
62M
102G
11G
230G
93G
Tamao Usados
31G
6,8G
Para mostrar los sistemas de ficheros por orden de ocupacin y saber as cuales son los que
estn ms llenos:
$ df -h | awk '{print $5 " " $6}' | sort -n | tail -5
22% /
23% /home
43% /var/datos
52% /usr
77% /boot
El parmetro -h indica que se muestre el tamao del modo ms amigable posible, ya sea en
Kilobytes, Megabytes, Gigabytes o Terabytes.
# du -h -s /var/log
9,6M
/var/log
Para eliminar ficheros con el fin de liberar espacio emplearemos habitualmente el comando
rm. Sin embargo, es muy habitual que no nos podamos permitir eliminar un fichero por
estar siendo utilizado en ese momento por una aplicacin, lo cual es de lo ms habitual con
ficheros de log en sistemas en produccin que no pueden parar. Eliminarlos directamente
puede tener consecuencias nefastas, como el bloqueo de la propia aplicacin que los est
utilizando, o ms leves pero tambin indeseables, como que se interrumpa el volcado de
datos a estos ficheros y dejen de ser tiles.
Para no alterar el funcionamiento de una aplicacin y conseguir nuestro objetivo de liberar
espacio vaciaremos los ficheros en lugar de eliminarlos:
# >/var/log/syslog
Este comando es til cuando queremos liberar espacio, pues muestra los ficheros que tienen
un mayor tamao dentro de un directorio incluyendo sus subdirectorios, siendo el ltimo
de la lista el ms pesado.
# du -k
516
5256
12884
13504
21456
El tamao de los ficheros se debe mostrar Kilobytes (parmetro -k). Es necesario utilizar
este parmetro en lugar de -h porque si no el comando sort -n no ordenara la lista del modo
que nosotros esperamos.
Es importante limitar el nmero de ficheros que queremos mostrar con tail -X, siendo X
dicho nmero, pues si el directorio en cuestin tiene cientos o miles de ficheros, la salida
Similar al anterior, pero en este caso slo se muestran los fichero del propio directorio, sin
incluir subdirectorios.
# ls -lSr | tail -5
-rw-r----- 1 syslog
-rw-r--r-- 1 root
-rw-r--r-- 1 root
-rw-r----- 1 syslog
-rw-rw-r-- 1 root
adm
118616
root 149012
root 160128
adm
499400
utmp 1461168
Por ejemplo, si queremos obtener el espacio total ocupado slo por los ficheros con
extensin .log en un directorio, usaremos el siguiente comando:
# du -ch /var/log/*.log | grep total
468K
total
Por ejemplo, aquellos que tengan un tamao de ms de 100 MB, o aquellos que ocupen
entre 100 MB y 1 GB:
$ find . -type f -size +100M -ls
$ find . -type f -size +100M -size -1G -ls
root
utmp
adm
adm
adm
4,2K
11K
13K
13K
1000
sep
sep
sep
sep
sep
30
30
30
30
30
12:27
13:03
13:03
13:03
13:03
.
wtmp
syslog
kern.log
auth.log
Muchas veces necesitamos saber los ficheros modificados dentro de un intervalo de tiempo
dado. En el siguiente ejemplo, localizamos los ficheros que tengan una antigedad de ms
de 90 das con el fin de encontrar ficheros antiguos que ya no sirvan y puedan eliminarse
para liberar espacio.
El primer comando slo localiza los ficheros, el segundo adems los elimina.
11. Encontrar ficheros antiguos (II)
Igual que el anterior, pero en este caso tambin se consideran los ficheros que hayan sido
accedidos dentro del intervalo de tiempo especificado, sin que hayan tenido por qu ser
modificados.
# find /var/log -atime +90 -ls
El siguiente comando nos permite encontrar en el directorio actual ficheros con un tamao
de 0 bytes, es decir, vacos. Esto es til ante situaciones anmalas en las que se generan
este tipo de ficheros, por ejemplo tras llenarse un filesystem o por el comportamiento
anmalo de una aplicacin. Ante estos escenarios se hace necesaria una limpieza, pues
aunque estos ficheros no ocupen espacio en disco s que pueden llegar a consumir todos los
inodos disponibles de un sistema de ficheros si se crean de forma masiva e impedir as que
se puedan crear nuevos ficheros.
$ find . -type f -size 0b -ls
O tambin:
$ find . -type f -empty -ls
Para saber el nmero de inodos libres del que disponen los distintos sistemas de ficheros de
una mquina usaremos el comando df -i.
13. Empaquetar y comprimir el contenido de un directorio
El comando anterior comprime todos los ficheros de log en un nico fichero comprimido
con extensin tar.gz y con la fecha de hoy para que sea ms fcil localizar los distintos
puntos temporales en el futuro. Veamos cmo conseguir ahorrar espacio, pasando en este
ejemplo de 468 MB a 35 MB:
# du -ch /var/log/*.log | grep total
468M
total
# ls -lh var_log.20140930.tar.gz
-rw-r--r-- 1 root root 35M sep 30 13:36 var_log.20140930.tar.gz
Tras esto podemos proceder a vaciar todos los ficheros de log como en el punto 3.
Por ltimo, ah va un enorme comando que nos permitir encontrar y eliminar los ficheros
duplicados que haya en un directorio para evitar redundancias innecesarias que pueden ser
muy costosas en trminos de espacio consumido.
find -not -empty -type f -printf "%s\n" | sort -rn | uniq -d | xargs -I{}
-n1 find -type f -size {}c -print0 | xargs -0 md5sum | sort | uniq -w32
--all-repeated=separate | cut -f3-100 -d ' ' | tr '\n.' '\t.' | sed
's/\t\t/\n/g' | cut -f2-100 | tr '\t' '\n' | perl -i -pe 's/([ (){}-])/\\
$1/g' | perl -i -pe 's/'\''/\\'\''/g' | xargs -pr rm -v