CREO EN MI….

Comandos de GNU/LINUX

Comandos de GNU/LINUX

TRABAJO CON FICHEROS



Varios


mc

Explorador de archivos que incluye su propio editor,mcedit.

mcedit

Editor de texto incluído en mc.

ls

Lista los ficheros de un directorio concreto.

  1. ls -l

Lista también las propiedades y atributos.

  1. ls -la

Lista ficheros incluidos los ocultos de sistema.

  1. ls -la | more

Lista los ficheros de un directorio de forma paginada.

  1. ls -lh

Lista ficheros especificando la unidad de tamaño (Kilobyte, Megabyte, Gigabyte).

  1. ls -l | grep ^d

Lista sólo los directorios

  1. ls -d */

Este último comando también lista solamente directorios: sin concatenar comandos, de una forma más sencilla y respetando el color definido que se tiene en Bash para los directorios.

cat -n fichero

Muestra el contenido de un fichero.(-n lo numera)

pr -t fichero

Muestra el contenido de un fichero de manera formateada.Ver imprimiendo.

cat fichero | less
cat fichero | lmore
more fichero
less fichero

Muestra el contenido de un fichero de forma paginada.

zcat fichero
zmore fichero
zless fichero

Muestra el contenido de un fichero comprimido (.gz)

echo cadena

echo nos muestra en pantalla,el texto que le siga.

grep \'cadena\' archivo

Muestra las líneas del archivo que contienen la cadena.

stat fichero

Muestra el estado de un fichero.

  1. stat -f fichero

Muestra el estado del sistema de ficheros.

file fichero

Muestra de qué tipo es un fichero.

tail archivo

Muestra las últimas líneas de un archivo, 10 por defecto.

  1. tail -n 12 archivo

Muestra las 12 últimas líneas del archivo.

  1. tail -f archivo

Muestra las últimas líneas del archivo, actualizándolo a medida que se van añadiendo. Útil para controlar logs.

head archivo

Muestra las primeras líneas de un archivo, 10 por defecto. Admite opción -n igual que el comando tail.

find /usr -name lilo -print

Busca todos los ficheros con nombre lilo en /usr.

find /home/paco -name *.jpg -print
----------  ----------  -----
|           |         |
V           V          `---->muestra la ruta completa del fichero encontrado
ruta  patrón de búsqueda

Busca todas las imágenes .jpg en /home/paco.

find -maxdepth 1 -regex ".*/[^./]*" -type f

Lista ficheros sin punto en el directoria actual.

whereis ejecutable

Busca ejecutables(ejemplo: whereis find)

type comando

Muestra la ubicación del comando indicado.
Si es un comando interno del shell mostrará algo así como:comando is a shell builtin.

pwd

Visualiza el directorio actual.

history

Muestra el listado de comandos usados por el usuario (~/.bash_history)

fc -l

Muestra el listado de los últimos comandos ejecutados.

eject cdrom0

Abre la bandeja del cdrom.

  1. eject -t cdrom0

Cierra la bandeja del cdrom.

cd nom_directorio

Cambia de directorio

  1. cd ..

Vuelves al anterior.

  1. cd .mozilla

Entras al de mozilla.(por la puerta grande)

  1. cd ./.mozilla

Entras al de mozilla (indicando la ruta relativa)

  1. cd /home/paco/.mozilla

Entras al de mozilla.(indicando la ruta completa)

cp -dpR fichero1 ruta_fichero2

Realiza una copia del fichero1 a ruta_fichero2,cambiándole el nombre.

cp -dpR fichero1 /directorio

Copia fichero1 a directorio,conservando fichero1 el nombre.

  1. -R

Copia un directorio recursivamente,salvo los ficheros especiales.

  1. -p

Copia preservando permisos,propietario,grupos y fechas.

  1. -d

Conserva los enlaces simbólicos como tales y preserva las relaciones de los duros.

  1. -a

Lo mismo que -dpR .

mv ruta_fichero1 ruta_fichero2

Mueve y/o renombra ficheros o directorios.

mkdir nom_directorio

Crea un directorio.

rmdir nom_directorio

Elimina un directorio(tiene que estar vacío).

rm archivo

Elimina archivos .

  1. rm -r directorio

Borra los ficheros de un directorio recursivamente.Quietorrrrrrr…

  1. rm *.jpg

Borra todos los ficheros .jpg del directorio actual.

ln ruta_fichero ruta_enlace

Crea un enlace duro (con el mismo inodo,es decir mismo fichero con distintos nombres)

ln -s ruta_directorio ruta_enlace

Crea un enlace simbólico (con diferente inodo,es decir se crea un nuevo fichero que apunta al \”apuntado\”,permitiendo enlazar con directorios y con ficheros de otro sistema de archivos)

diff [opciones] fichero1 fichero2

Compara ficheros.

  1. diff -w fichero1 fichero2

Descarta espacio en blanco cuando compara líneas.

  1. diff -q fichero1 fichero2

Informa sólo de si los ficheros difieren,no de los detalles de las diferencias.

  1. diff -y fichero1 fichero2

Muestra la salida a dos columnas.

join [opciones] fichero1 fichero2

Muestra las líneas coincidentes entre fichero1 y fichero2.

wc fichero

Muestra el nº de palabras,líneas y caracteres de un archivo.

wc -c fichero

Muestra el tamaño en bytes de un fichero.

touch [-am][-t] fichero

Cambia las fechas de acceso (-a) y/o modificación (-m) de un archivo.

  1. touch -am fichero

A la fecha actual.Si no existiese el fichero,se crearía.

  1. touch -am -t 0604031433.30 fich
    AAMMDDhhmm.ss ------- Si no se especifican los segundos,tomaría 0 como valor.

A la fecha especificada.Si no existiese el fichero,se crearía.

  1. touch fichero

Usado sin opciones crearía un fichero con la fecha actual.

split -b 1445640 mozart.ogg mozart
----------            -------
|                   V
|   nombre elegido para las partes,por defecto x
V
tamaño en bytes de cada parte

Partir un archivo

cat mozart.* > mozart.ogg

Unir las distintas partes de un fichero cortado con split.

chown [-R] usuario fichero

Cambia el propietario de un fichero o directorio.

chgrp [-R] grupo fichero

Cambia el grupo de un fichero o directorio.

chmod [-R][ugo][+/- rwxs] fichero

Cambia los permisos de acceso de un fichero

+: da permisos -: quita permisos
u: propietario R: recursivo
g: grupo r: lectura ejemplo: chmod +x fichero, es lo mismo que: chmod a+x fichero
o: otros w: escritura explicación: a es la opción por defecto.
a: todos x: ejecución
s: los atributos suid y sgid,otorgan a un \"fichero\" los permisos de su dueño o grupo respectivamente,cada vez que se ejecute,sea quien sea el que lo ejecute.
Ejemplo: chmod +s /usr/bin/cdrecord

Cómo afectan los permisos a los directorios:

r permite ver su contenido(no el de sus ficheros)
w permite añadir o eliminar ficheros (no modificarlos)
x permite acceder al directorio.

Método absoluto de determinar los permisos: chmod 760 fichero

explicación:          dueño     grupo      otros
------------          -----     -----      -----
asci                  r w x     r w -      - - -
binario               1 1 1     1 1 0      0 0 0
octal                   7         6          0
paso de asci          r w x     r w -      - - -    activar=1
a binario             1 1 1     1 1 0      0 0 0   desactivar=0
paso de               1 1 1     1 1 0      0 0 0   r activado=4
binario               4+2+1     4+2+0      0+0+0   w activado=2
a octal                 7         6          0     x activado=1

umask nnn

Establece qué permisos serán deshabilitados para los archivos nuevos.

umask

Muestra la configuración actual de umask(normalmente 022)

umask 000

Deshabilita ninguno,es decir los activa todos.

Atención,que la cosa manda huevos:

umask 0 2 2 = chmod 7 5 5
umask 0 0 0 = chmod 7 7 7 |
umask --- -w- -w- = chmod rwx r-x r-x
umask --- --- --- = chmod rwx r-x r-x

Una manera rápida de averiguar los permisos partiendo de umask es aplicando la siguiente resta:

777-022=755 para el primer caso y 777-000=777 para el segundo.
Cuando umask es 022,los permisos normales de un directorio son 755 (rwx r-x r-x) producto de la
resta 777-022.Sin embargo los de un fichero son 644 (rw- r– r–).Ésto es así porque se considera que lo normal para un fichero es que no sea ejecutable de manera que la resta para averiguar los permisos de un fichero sería 666-022=644

Si escribo en una consola umask 000 y a continuación \”mkdir nuevodirectorio\”,éste tendrá todos los pemisos:

rwx rwx rwx (777) pero ¿y los ficheros que creemos dentro de dicho directorio? pues éstos
tendrán los permisos :

rw- rw- rw- (666) resultado de la resta 666-000=666

¿Os aclarais?… yo tamp

Para que la máscara de permisos permanezca de una sesión a otra tienes que ponerla en el
.bash_profile de tu home.


Imprimiendo


lpr fichero

Añade un documento a la cola de impresión.

lpr -P "nombre_impresora" fichero

Se especifica la impresora a la que queremos mandar el fichero a imprimir

lpr -#3 fichero

Realiza 3 copias del fichero.

lpr -P "hp" -o page-set=odd fichero

Imprime sólo las páginas impares del fichero que hemos mandado a la impresora “hp”

lpr -o page-ranges=7-49 fichero

Imprime el intervalo de páginas 7-49 del documento

lpr fichero

Añade un documento a la cola de impresión.

lpq

Muestra los documentos en cola.

lprm

Cancela la impresión del documento activo.

lprm 3

Cancela la impresión del trabajo nº 3.

pr +2 l70 -w 80 -h \"Comandos\" fichero

Preprocesador de impresión para formatear un archivo de texto.

-l70

Establece la longitud de la página de 70 lineas (66 por defecto).

-w 80

Establece el ancho de linea en 80 caracteres()72 por defecto).

-h \"Comandos\"

Establece \”Comandos\” como cabecera de cada página.

+2

Imprime a partir de la página 2.

-t

No imprimiría cabeceras ni pies de página.

pr l70 -d comandos.txt | lpr

Una vez formateado el documento lo manda a la cola.


Nano


nano fichero

Leer,crear,editar un fichero de texto.

M = Esc/Alt | | Ctrl + g ----------- Invocar el menú de ayuda.
Ctrl + x ----------- Salir de nano.
Ctrl + o ----------- Escribir el fichero actual a disco.
Ctrl + r ----------- Insertar otro fichero en el actual.
Ctrl + w ----------- Buscar un texto en el editor.
Ctrl + y ----------- Moverse a la página anterior.
Ctrl + v ----------- Moverse a la página siguiente.
Ctrl + k ----------- Cortar la línea actual y guardarla en el cutbuffer.
Ctrl + u ----------- Pegar el cutbuffer en la línea actual.
Ctrl + l ----------- Redibujar la pantalla actual.
Ctrl + j ----------- Justificar el párrafo actual.
Ctrl + m ----------- Insertar un retorno de carro en la posición del cursor.
Ctrl + _ ----------- Ir a un número de línea en concreto.
M + g -------------- Ir a un número de línea en concreto.
M + i -------------- Auto indentar habilitar/deshabilitar.
M + x -------------- Modo ayuda habilitar/deshabilitar.
M + p -------------- Modo Pico habilitar/deshabilitar.
M + m -------------- Soporte para ratón habilitar/deshabilitar.
M + r -------------- Reemplazar texto en el editor.
M + e -------------- Expresiones regulares habilitar/deshabilitar.
M + b -------------- Respaldar ficheros habilitar/deshabilitar.
M + s -------------- Desplazamiento suave habilitar/deshabilitar.
M + h -------------- Tecla \'smart home\' habilitar/deshabilitar.
M + y -------------- Coloreado de sintaxis habilitar/deshabilitar.
M + p -------------- Mostrar blancos habilitar/deshabilitar.


Formatos


[w3m,lynx,links,links2,elinks] fichero.html

Visualizan ficheros html.

tidy fichero.html

Analiza el código de un documento html.

tidy -m fichero.html

Corrige,modificándolo,el código del fichero html.

tidy -m -asxml fichero.html

Convierte un html a xml.

tidy -m -asxhtml fichero.html

Convierte un html a xhtml.

tidy -m -ashtml fichero.xhtml

Convierte un xhtml a html.

pstotext fichero.ps | less

Visualiza ficheros ps.

pstotext fichero.pdf | less

Visualiza ficheros pdf.

pdftops fichero.pdf fichero.ps

Convierte un fichero pdf a ps.

pdftotext -layout fich.pdf fich.txt

Convierte un fichero pdf a texto.

pdftotext -layout -htmlmeta fich.pdf fich.html

Convierte un fichero pdf a html.

htmldoc fich1.html fich2.html -f unidos.html

Une varios ficheros html en uno solo.

htmldoc --webpage fich1.html fich2.html -f suma.pdf

Convierte o une varios html en un pdf.

htmldoc --webpage fich1.html fich2.html -f suma.ps

Convierte o une varios html en un ps.

links2 fichero.html -> guardar con formato

Convierte un fichero html a texto.

antiword fichero.doc | less

Visualiza un fichero doc.

antiword -p folio fichero.doc > fichero.ps

Convierte un fichero doc a ps con tamaño folio.

antiword -t -w 30 fichero.doc > fichero.txt

Convierte un fichero doc a texto.

-p también puede ser a3,a4,a5,b4,etc
-w anchura de la linea en caracteres

Notas:
pdftotext y pdftops vienen en el paquete xpdf-utils.
tidy se guía por el estándar de la W3C.
la opción -layout hace que el documento de texto conserve lo mejor posible la disposición fisica del documento pdf:columnas,saltos de linea,etc
links2 convierte un html a texto,conservando totalmente la disposición física del documento html.


Empaquetado y compresión


7z a fichero.7z fichero

Comprimir.

7z e fichero_comprimido

Descomprimir.

7z x fichero_comprimido -o ruta_de_destino

Extraer donde indicamos.

7z l fichero_comprimido

Ver contenido.

7z t fichero_comprimido

Chequea el contenido.

Notas sobre 7zip

Comprime en formato 7z, zip, gzip, bzip2 y tar.
Si es un directorio lo hace recursivamente sin emplear la opción -r

Con -t{tipo de fichero} tras las opción \”a\” elegimos el formato de compresión:

7z a -tgzip fichero.gz fichero

Con -p protegemos con una contraseña el fichero:

7z a -tgzip -p fichero.gz fichero

Para comprimir más de un archivo gz o bz2 antes hay que empaquetarlos en formato tar:
1º)

7z a -ttar prueba.tar *.txt

2º)

7z a -tgzip prueba.tgz prueba.tar

El formato 7z no guarda el dueño o grupo de un fichero por lo que | | no es recomendable para copias de seguridad.
Es capaz de descomprimir zip,rar,gz,bz2,tar,cab,arj,cpio,deb,rpm aunque para rar necesita del paquete 7zip-rar

zip -r fichero.zip fichero ;ejemplo: zip -r sinatra.zip ./sinatra/

Comprimir zip.

unzip archivo.zip

Descomprimir zip.

unzip -v archivo.zip

Ver contenido zip.

unrar e -r archivo.rar (e extrae en el directorio actual)

Descomprimir rar.

unrar x -r archivo.rar directorio de destino (x extrae donde se indique)

Descomprimir rar.

unrar v archivo.rar

Ver contenido rar.

gzip -r fichero ; ejemplo: gzip -r ./sinatra

Comprimir gz.

gzip -d fichero.gz

Descomprimir gz.

gzip -c fichero.gz

Ver contenido gz.

bzip2 fichero ; ejemplo: bzip2 ./sinatra/*.ogg

Comprimir bz2.

bzip2 -d fichero.bz2

Descomprimir bz2.

bzip2 -c fichero.bz2

NOTA:
r equivale en todos los casos a recursivo

Mientras que zip comprime y empaqueta,gzip ó bzip2 sólo comprimen ficheros,no directorios,para eso existe tar.
Ficheros tar

tar -vcf archivo.tar /fichero1 /fichero2 ...(fichero puede ser directorio)

Empaquetar.

tar -vxf archivo.tar

Desempaquetar.

tar -vtf archivo.tar

Ver contenido.

Para comprimir varios ficheros y empaquetarlos en un solo archivo hay que combinar el tar y el gzip o el bzip2 de la siguiente manera:

Ficheros tar.gz (tgz)

tar -zvcf archivo.tgz directorio

Empaquetar y comprimir.

tar -zvxf archivo.tgz

Desempaquetar y descomprimir.

tar -zvtf archivo.tgz

Ver contenido.

Ficheros tar.bz2 (tbz2)

tar -jvcf archivo.tbz2 directorio

Empaquetar y comprimir.

tar -jvxf archivo.tbz2

Desempaquetar y descomprimir.

tar -jvtf archivo.tbz2

Ver contenido.

Opciones de tar:

-c : crea un nuevo archivo.
-f : cuando se usa con la opción -c,usa el nombre del fichero especificado para la creación del fichero tar
cuando se usa con la opción -x,retira del archivo el fichero especificado.
-t : muestra la lista de los ficheros que se encuentran en el fichero tar
-v : muestra el proceso de archivo de los ficheros.
-x : extrae los ficheros de un archivo.
-z : comprime el fichero tar con gzip.
-j : comprime el fichero tar con bzip2.


Comodines


(~) Sustituye el directorio home de manera que:

~/comandos.txt equivale a /home/paco/comandos.txt (si estamos en nuestro propio directorio)
~pepe/comandos.txt equivale a /home/pepe/comandos.txt (pepe es otro usuario)

(?) Sustituye un solo caracter.Ejemplos:

ls p?pe

mostraría todos los ficheros cuyos 1º 3º y 4º caracteres fuesen p,p y e

ls ?epe

mostraría todos los ficheros acabados en epe

(*) Sustituye cualquier sucesión de caracteres.Ejemplos:

ls .ba*

muestra todos los directorios o ficheros que comiencen con .ba

ls .*

muestra todos los archivos ocultos.

rm -r *

otra manera de desinstalar el sistema operativo.

rm *.jpg

borra todas las imágenes jpg

oggdec *.ogg

pasa de ogg a wav todos los ogg del directorio en el que estamos.

(;) Puesto entre dos comandos hace que tras el primero se ejecute el segundo.Ejemplos:

nano nuevo.txt ; cat nuevo.txt

nos abrirá el editor nano para que escribamos lo que queramos en un nuevo archivo que se llamará nuevo.txt y tras guardar y salir del editor,cat nos mostrará el contenido de lo que acabamos de crear.

sleep 5m ; xmms canción.mp3

tras 5 minutos se iniciará el xmms (ver más abajo)


Alias


Es el mote que se le pone a un comando,de manera que la próxima vez que queramos ejecutarlo
basta con llamarlo por su mote.Escribiendo alias sin parámetos nos aparecen la lista de alias
que tenemos.

Ejemplos:

  • Si ejecuto:

alias rm=\'mv --target-directory=/home/paco/.papelera_rm\'

le he puesto el mote rm a mv –target-directory=/home/paco/.papelera_rm
Así la próxima vez que borre algo con rm, irá a parar al directorio .papelera_rm

Pero si lo escribo así: \\rm loquesea el alias será ignorado.

  • Otro:

alias cdrip=\'cdda2wav -B -D /dev/hdd -s -x\'

cada vez que escriba en una consola cdrip me ripeará el CD que tenga en /dev/hdd

Para que los alias permanezcan de una sesión a otra hay que ponerlos en el archivo /home/.bashrc

nota1:el mote y el comando al que sustituye bien pegaditos al signo igual.
nota2:el comando entre comillas simples.


Conceptos de entrada -salida (I/O)(E/S)


stdin

entrada estandar para datos,el teclado (0)

stdout

salida estandar para los programas,la pantalla (1)

stderr

salida estandar para los mensajes de error,la pantalla (2)

Redirecciones,un redireccionador redirige la salida de un comando a un fichero

(<)

comando < fichero

(>)
Su sintaxix suele ser:

comando > fichero

(>>)

comando >> fichero

Ejemplos:

dpkg --get-selections > programas_instalados.txt

En vez de mostrar la salida por pantalla, nos la vuelca al fichero programas_instalados.txt

Si ese fichero ya existía ha sido sobreescrito su contenido,pero si usamos >> no borrará nada
y añadira su salida al final del fichero.Otro ejemplo con echo:

echo \"fin de la lista de programas instalados\" >> programas_instalados.txt

en vez de mostrar en pantalla el texto,lo añade al final del fichero programas_instalados.txt

Para despistar los de Unix se han inventado el mismo caracter pero al revés:

cat < programas_instalados.txt

en donde programas_instalados hace,no de salida sino de entrada para cat el cual lo muestra
en pantalla ,ya que la salida natural de cat es la estandar,stdout o pantalla

Si queremos que la salida de error no aparezca en pantalla sino que vaya a un archivo de texto:

comando 2> fichero.txt ejemplo: xmms 2> error_xmms.txt

Tuberías,Una tubería hace que la salida de un programa sea la entrada de otro.

(|) Su sintaxis suele ser:

comando | comando

Ejemplos:

cat programas_instalados.txt | grep mozilla

Aquí le hemos cambiado la salida natural a cat y se la hemos mandado a grep para que busque la
palabra mozilla dentro del fichero programas_instalados.txt

pr l70 -d comandos.txt | lpr Una vez formateado el documento (pr) lo manda a la cola (lpr)


Renombrando


mp3rename opciones *.mp3

Renombra ficheros mp3 basándose en las etiquetas incluidas en los mp3 (id3tags)

Opciones:

-i  Sólo muestra los id3 de los ficheros.
-p  pone un cero al track cuando es menor que 10.
-s  Se usa para configurar las opciones por defecto,las cuales quedarian definidas en el fichero ~/.mp3rename
&t  título
&b  album
&a  artista Hay que usarlas entrecomilladas para que no sean interpretadas por el shell
&y  año
&k  pista

Ejemplos:

  1. mp3rename -s \'&a_&t\'

establecería artista_título como predeterminadas de manera que

  1. mp3rename *.mp3

renombrará los mp3 como: \”artista_título.mp3\”

rename

Script de Perl que sirve para renombrar ficheros usando expresiones de Perl

rename \'y/A-Z/a-z/\' *.zip

Cambiamos todas las mayúsculas a minúsculas(en este caso en el nombre de los .zip)

rename \'y/ /_/\' *.jpg

Renombramos el espacio en blanco por _ (en este caso en el nombre de los .jpg)

rename \'s/expresión //\' *.mp3

Eliminamos una expresion en el nombre de todos los .mp3 del directorio actual.

rename \'s/M.Oldfield//\' *.mp3

quitaría \”M.Oldfield\” del nombre en todos los mp3 |

mrename \'ruta_fich.\' prefijo opción

Añade un prefijo al nombre de los ficheros.

Opciones:

-c  Copia los ficheros con un nuevo nombre.
-m  Los renombra.

Ejemplo:

  1. cd/ruta a los ficheros

debe ejecutarse en el directorio en donde se encuentren.

  1. mrename \'*.jpg\' boda -m

añadiría boda a los nombres de los jpg

mmv \";*.original\" \"#1#2.nuevo\"

Comando para cambiar el sufijo del nombre de los archivos.En su sintaxis #1 sustituye a la primera expresión regular(;) y #2 a la segunda(*).Aunque con este comando el(;) representa cualquier subdirectorio y es la forma de darle recursividad a la acción.

Ejemplos:

  1. mmv \"*.cbz\" \"#1.zip\"

Renombraría todos los cbz a zip,conservandose el nombre que precede a .cbz

  1. mmv \";*.cbz\" \"#1#2.zip\"

Renombraría todos los cbz a zip en el directorio actual y sus subdirectorios


Mtools


Colección de herramientas que permite acceder y manipular ficheros de MS-DOS sin necesidad de un montaje previo. El uso de comodines refiriéndose a archivos del disquete requiere que los nombres se entrecomillen para que no sean interpretados por el shell sino por herramientas de mtools.Más información:\”info mtools\”

minfo unidad:

Muestra información sobre el sistema de archivos MS-DOS de una unidad (a:)

mformat a:

Formatea un disquete,donde \”a:\” es \”dev/fd0\”

mbadblocks a:

Se emplea tras formatear para buscar errores.

mcd [a:]

Informa del directorio MS-DOS en curso o bién cambiamos a uno.

mdir -a a:

Muestra el contenido de un directorio MS-DOS.

mcopy

Copia de ficheros MS-DOS a/o desde Unix.

mcopy \"a:directorio/*\"

copiaría el contenido de \”a:directorio/*\” al directorio en curso.

mcopy \"a:directorio/*\" ~/disquete

copiaría el contenido de \”a:directorio/*\” al directorio \”disquete\”.

mcopy *.txt a:bill

copiaría al directorio \”bill\” del disquete todos los .txt.

mmd a:nuevo_directorio

Crea un directorio MS-DOS

mdel \"a:bill/*.txt\"

Elimina un fichero MS-DOS.

mrd a:bill

Elimina un directorio MS-DOS

mdeltree a:bill

Elimina recursivamente un directorio MS-DOS

mren \"a:direct1/*.txt\" a:direct2

Mueve o renombra ficheros MS-DOS

mmove a:directorio1 a:directorio2

Mueve o renombra ficheros o subdirectorios MS-DOS

Comandos relacionados:

mkfs.msdos /dev/fd0

Formatea en formato msdos un disquete.

fdformat /dev/fd0

Formatea en formato msdos un disquete y después verifica el formateo.


GRÁFICOS


glxinfo

Información sobre la biblioteca gráfica OpenGL y su extensión GLX para X-Window
direct rendering: YES = Salida de glxinfo que nos indica si tenemos activada la aceleración 3D.

showrgb

lista los colores reconocidos por el sistema y su valor RGB.

bsdgames

Colección de juegos para consola.

sl

Tren pasando.

apt-get moo

La supervaca del apt ———–>

cowsay muuuuu

Una vaca hablando en su idioma

cowthink -p ¿¿muuuuu??

Una vaca pensando. *

cowsay -f tux hola

Tux saludando.Ver /usr/share/cowsay/cows.

(__)
(oo)
/------ \\/
/ | ||
/\\---/\\

banner [texto]

Muestra un cartel en pantalla.

figlet [opciones] [texto]

Derivado del anterior pero más versatil.También se puede usar de forma interactiva.

-w valor ------------------------- Indicamos la anchura del texto,el valor por defecto es 80
-t ------------------------------- La salida se mostrará en su máxima anchura.
-c ------------------------------- La salida se mostrará centrada.
-f tipo -------------------------- Indicamos la tipografía de la salida.Ver /usr/share/figlet/fichero.flf
small,shadow,mini,etc. Podemos indicar la ruta donde buscará las fuentes: figlet -f ~/fuentes/konto

Ejemplo: #figlet -f small texto
_           _
| |_ _____ _| |_ ___
| _/ -_) \\ / _/ _ \\
\\__\\___/_\\_\\\\__\\___/

xwd -root -screen > pantalla.xwd

Capturar la pantalla.

sleep 5 ; xwd -root -screen > pantalla.xwd

Capturar la pantallas tras 5 segundos.

xwd > ventana.xwd

Capturar una ventana.

import -window root pantalla.ps (también jpg,png,gif,etc)

Capturar la pantalla en cualquier formato.

sleep 5s ; import -window root pantalla.png

Capturar la pantalla tras 5 segundos.

import -window - ventana.jpg

Capturar una ventana en cualquier formato.

xwud -in pantalla.xwd

Ver imágenes en formato xwd.

display imagen.xwd

Visualizar imágenes (incluídas las xwd).

animate remero.gif (también admite delay)

Visualizar gif animados.

ascii/color
cacaview imagen.jpg (también png,gif,etc)

ascii
asciiview imagen.jpg (también png,gif,etc)

Visualizar imágenes en consola.

identify imagen.gif

Ver las propiedades de una imagen.

pdfimages fichero.pdf nombre_para_las_imágenes: pdfimages Xmen.pdf xmen

Extraer las imágenes de un pdf

convert fichero.pdf nombre_y_formato_imágenes:convert fichero.pdf imagen.png

Extraer las imágenes de un pdf

convert *.jpg catálogo.pdf

Crear un catálogo pdf con imágenes.

display \"vid:*.jpg\"

Crear un índice gráfico con miniaturas.

convert imágen_color.jpg -monochrome imágen_b/n.jpg

Convertir una imagen a blanco y negro.

convert imagen_original.ppm imagen_nueva.jpg

Cambiar el formato de UNA imagen.

convert -sample 100x50 imagen_original.jpg imagen_nueva.jpg

Cambiar las dimensiones de UNA imagen.

mogrify -format jpg *.ppm (convierte a .jpg todas las imágenes .ppm)

Cambiar el formato de VARIAS imágenes.

mogrify -format png -sample 20%x20% *.jpg

Crear miniaturas de VARIAS imágenes.
Miniaturiza nuestras imágenes jpg cambiándoles el formato.

ATENCIÓN porque de no cambiárselo nos eliminaría las originales

convert -delay 15 imag1.jpg imag2.jpg imag3.jpg remero.gif

Crear un gif animado con varios jpg.

-delay 15

Pausa entre imágenes (centésimas de segundo).

convert remero.gif -adjoin remeros.jpg

Extraer los fotogramas de un gif animado.

Añadir texto a una imagen :
columna_     _fila
|   |
convert -font courier -fill yellow -pointsize 25 -draw \'text 100,250 remeros\' imagen.jpg imagen_con_txt.jpg
-----         -----         ------------  ------------------ -------
|             |                |        posición del texto    |
V             V                V                              v
fuente   color de fuente  tamaño de la fuente                |texto
|si éste tuviese más de una palabra
|habría que ponerlo entre dobles comillas

Notas:

xwd viene en el paquete xbase-clients.
pdfimages viene en el paquete xpdf-utils.
las cacas viene en el paquete caca-utils.
asciiview viene en el paquete aview
aafire viene en el paquete libaa-bin
convert,animate,identify,mogrify import y display vienen en el paquete imagemagick
libaa es una libreria que nos permite ver las imágenes,incluso las animadas,mediante caracteres ascii.
libcaca permite lo mismo que libaa pero en color-


MULTIMEDIA


Adaptado para un kernel 2.4.26 con emulación SCSI con la nomenclatura :

#cdrecord -scanbus:

0,0,0 0) \'_NEC \' \'DVD_RW ND-2500A \'       grabadora      /dev/sr0
0,1,0 1) \'HL-DT-ST\' \'DVD-ROM GDR8162B\'    lector         /dev/sr1

Nota:

Salvo cdrecord y dvdrecord los demás se pueden usar en un kernel sin emulación SCSI.
Para usar cdrecord y dvdrecord con un kernel 2.6 ,sin emulación SCSI, podemos probar a realizar un scanbus sobre nuestro dispositivo grabador para ver si lo detecta:

# cdrecord -scanbus dev=/dev/hdc

en cuyo caso lo podremos usar sin más,sustituyendo la nomenclatura propia de cdrecord
dev=0,0,0 por dev=/dev/hdc (ver nota 1 más abajo)


Imágenes


mkisofs -R -J -T -o imagen1.iso fichero1

Crea una imagen de un fichero del disco duro.

dd if=/dev/cdrom of=imagen.iso

Crea una imagen del cdrom y la vuelca en el fichero imagen.iso

cat /dev/cdrom > debian.iso

nrg2iso imagen.nrg imagen.iso

Convierte una imagen nrg a iso

bin2iso imagen.cue

Convierte una imagen bin/cue a iso

ccd2iso imagen.img imagen.iso

Convierte una imagen img/ccd/sub/cue a iso

mdf2iso imagen.mdf imagen.iso

Convierte una imagen mdf/mds a iso

mount -t iso9660 -o loop imagen.iso p.montaje

Monta una imagen.

umount p.montaje

Desmontar una imagen.

md5sum archivo.iso > archivo.iso.txt

Generar la suma control MD5 de un archivo.

md5sum -w -c archivo.iso.txt

Verificar la suma control MD5 de un archivo.
archivo.iso y archivo.iso.txt deben estar en el mismo directorio.


Grabación de CD


cdrecord -v dev=0,0,0 fs=16M speed=30 imagen.iso

Grabar un CD de datos/imagen

cdrecord -v dev=0,0,0 fs=16M speed=30 -eject -isosize /dev/sr1

Copiar un CD de datos/imagen.

cdrecord -v dev=0,0,0 fs=16M speed=30 -pad -audio *.wav

Grabar un CD de audio (cda)

cdrdao copy -v 2 --device 0,0,0 --source-device 0,1,0 --reload \\
--eject --on-the-fly --fast-toc --paranoia-mode 0

Copiar un CD audio (cda)

cdrecord -v dev=0,0,0 fs=16M speed=30 -pad -audio *.wav -data imagen.iso

Grabar CD mixto.

1ª sesión                 cdrecord -multi imagen1.iso (ver nota 1)
dónde acabó la sesión     cdrecord -msinfo nos da un nº que usaremos en el siguiente paso.
creamos nueva imagen      mkisofs -R -J -T -C nº -M /dev/sr0 -o imagen2.iso fichero2
2ª sesión                 cdrecord -multi imagen2.iso

Grabar CD multisesión

cdrecord -v blank=fast (ver cdrecord blank=help)

Borrar un CD±RW.

cdrecord -v -eject speed=8 blank=all dev=1,1,0

Borrar un CD±RW por completo, y no sólo la tabla de particiones (tardará más que en el caso anterior). Le pedimos que nos muestre los detalles con -v (por ejemplo, el progreso del borrado) y con -eject indicamos que el CD será expulsado al finalizar el proceso


Grabación de DVD


growisofs -Z /dev/sr0 -R -J archivo (growisofs llama a mkisofs)

Grabar un DVD de datos/imagen.

growisofs -M /dev/sr0 -R -J archivo (-M añade más datos al dvd)

Grabar DVD multisesión.

growisofs -dvd-compat -Z /dev/sr0=imagen.iso

Grabar una imagen ya creada.

dvdrecord -v dev=0,0,0 blank=fast (ver dvdrecord blank=help)

Borrar un DVD±RW.

dvdbackup -M -i/dev/sr0 -o/home/paco/copia_dvd/
vobcopy -i /dev/sr0 -m -o /home/paco/copia_dvd/

Ripear un video DVD.

Notas:
1.Se pueden establecer valores predeterminados para dev,el dispositivo de grabación;
fs,el tamaño del bufer(nunca menor que el de la grabadora) y speed,la velocidad de
grabación,indicándolo en el fichero /etc/default/cdrecord y simplificando de esta
manera la sintaxis.
2.growisofs viene en el paquete dvd+rw-tools.
3.dvdrecord viene en el paquete dvdrtools.


Ripeo de un CD


cdda2wav -B -H -D /dev/sr1 -s -x

extrae disco completo en archivos wav separados.

cdda2wav -H -D /dev/sr1 -s -x -t 5

extrae el track nº 5

cdparanoia -B -d /dev/sr1

extrae disco completo en archivos wav separados.

cdparanoia 5 -d /dev/sr1

extrae el track nº 5

abcde -d /dev/sr1 -N -x -o mp3

extrae disco completo en archivos mp3 separados.

abcde -d /dev/sr1 -N -x -o mpc

extrae disco completo en archivos mpc separados.

abcde -d /dev/sr1 -N -x -o ogg

extrae disco completo en archivos ogg separados.

abcde -d /dev/sr1 -N -x -o ogg tracks 1-3 5

extrae las tres primeras canciones y la quinta.

-d indica el dispositivo
-N actua con las opciones por defecto,sin preguntar
-x expulsa el cd al acabar
-o tipo de archivo resultante

Nota:
abcde conserva los id3 de los temas al pasarlos al disco duro,es decir artista,título,etc.Requiere de oggenc,lame,cdparanoia o cdda2wav,id3v2 y cd-discid y opcionalmente normalize.


Conversiones


lame -h -m j tema.wav

Pasar de wav a mp3 (-b bitrate -h mayor calidad; -m j join stereo)

lame -h -m j --nogap *.wav

Pasar lote de wav a mp3

oggenc -b 128 -q 5 tema.wav   (-b bitrate ;-q calidad (valores entre 0 y 10)
oggenc *.wav                  (convierte todos los wav en un solo fichero ogg)
oggenc -a -l -t *.wav         (convierte todos los wav en sus respectivos ogg)

Pasar de wav a ogg

oggdec tema.ogg

Pasar de ogg a wav (oggdec *.ogg para convertir un lote)

lame -h --decode tema.mp3 tema.wav

Pasar de mp3 a wav

mplayer -ao pcm fichero.asf

Pasar de asf/wma a wav


Otros


soxmix tema1.ogg tema2.ogg mezcla.ogg (también mp3,wav,au,etc)

Unir varios ficheros de audio.

normalize-audio *.wav
normalize-mp3 *.mp3
normalize-ogg *.ogg

Ajustar el volumen de uno o varios ficheros de audio.

Nota:

oggdec y oggenc vienen en el paquete vorbis-tools
Las conversiones entre formatos comprimidos las he descartado pues hay una pérdida notoria de calidad.


Reproducción


aafire

Fuego animado.

cacafire

Fuego animado a color.

cacademo

Demostración de arte ascii a color.

cacaball
cacamoin
cacaplas

Variados gráficos animados a color.

bb

Impresionante demostración audiovisual de arte ascii.

aatv

Programa para ver la tele mediante código ascii.

xaos -driver aa

Indicamos a xaos que use las librerias aalib para visualizar fractales.

aaxine video.wmv
mplayer -vo aa video.avi             (en ascii)
mplayer -vo caca video.mpg           (en ascii con color)
mplayer video.avi                    (también mpg,wmv,etc)
mplayer -vcd 1                       (para ver un vcd)
mplayer -dvd-device /dev/hdd dvd://1 (para ver un dvd)

Ver vídeo en consola.

play tema.ogg         (digital)
mocp                  (digital con ncurses)
tcd                   (cd con ncurses)
cdplay -d /dev/hdd    (cd)

Escuchar audio.

mplayer -cache 100 mms://...                                              (protocolo mms)
mplayer -cache 100 -playlist http://ruta_del_archivo.asx (protocolo mms)
mlayer http://... ;ejemplo:mplayer http://147.156.27.128:8004 (shoutcast-icecast)
somaplayer http://... ;ejemplo:somaplayer http://147.156.27.128:8004 (shoutcast-icecast)

Ecuchar la radio.

mimms -t 20 -o radio3_uned.asf mms://... mms (asf/wma)
-t tiempo de grabación en mnts.
-o nombre que queremos para la grabación.

streamripper http://&#8230; -l 3600                       shoutcast(mp3/ogg)
-l tiempo de grabación en sgs.

Grabar emisiones.

Cómo conseguir la dirección mms:
Una vez en la web de la radio que nos gusta,por ejemplo radio3,nos vamos al enlace que nos indican para el comienzo del streaming y copiamos su ruta o bién nos bajamos dicho enlace,que es un fichero asx que contiene las direcciones mms,lo abrimos con un editor de texto y las buscamos.
Pero si el enlace es código javascript al aparecer la ventana emergente, miramos su código fuente y buscamos (Ctrl+f) por asx o mms y ahí estarán.

Cómo conseguir direcciones shoutcast-icecast:
aquí: http://www.shoutcast.com/ y aquí: http://www.icecast.org

Notas:

Con -vo le indicamos al mplayer el driver de salida de video,en este caso aa o caca para verlo en ascii.
Con \”mplayer -vo help\” podemos ver los drivers de salida de video disponibles.
Si tenemos un enlace de nuestro dispositivo a /dev/dvd, podemos simplificar la sintaxises,ya que es el sitio por defecto en el que mira el mplayer.
aaxine viene en el paquete xine-ui de sid y lee los mismos formatos de video que xine.
play y soxmix vienen en el paquete sox.
cdplay viene en el paquete cdtool.
mocp viene en el paquete moc.
somaplayer y mplayer pueden igualmente reproducir audio digital y audio cd.


SISTEMA



Varios


man comando
man --help
info comando
xman

Muestra información sobre el comando.

help comando

Muestra información sobre un comando interno del shell(bash).

apropos palabra_clave

Busca dentro de las descripciones de man la palabra clave.

apropos -e palabra_clave

Busca la palabra exacta.

finger

Muestra los usuarios conectados en tiempo real al sistema. Necesita instalarse como paquete aparte (finger).

last

Muestra los últimos usuarios que se conectaron al sistema y las fechas y horas de conexión (Útil para analizar intrusiones)

cal -my

Muestra el calendario.

uptime

Muestra la hora,tiempo de funcionamiento,nº usuarios conectados y la carga media.

tzconfig/tzselect

Programas interactivos que permiten selecionar la zona horaria.

grep UTC /etc/default/rcS

Comprobamos si el reloj hardware mantiene la hora local o universal (UTC)

date

Muestra la fecha y hora del sistema,en formato local.

date -u

Muestra la fecha y hora en formato UTC(Tiempo Universal Coordinado).

hwclock --show

Muestra el reloj harware (también llamado reloj de la BIOS y reloj CMOS).

hwclock -systohc

Pone el reloj harware a la hora del sistema.

ntpdate servidor NTP

Ajusta directamente la hora del sistema sincronizándola con la de un servidor NTP.

ntpd

Demonio que ajusta el reloj de forma gradual sincronizándolo con servidores NTP.

$ watch -n tiempo comando
Ejecuta un comando cada x segundos (2 por defecto).


$ watch -n 1 date

Igual que date pero en este caso veríamos correr los segundos.


$ clear

Limpia la pantalla.


$ reset

Restaura la Consola.Útil para cuando empiezan a aparecer caracteres raros.


$ uname -a

Versión del kernel


$ hostname

Visualiza el nombre de la máquina.


$ tty

Muestra el nombre de fichero de la terminal conectada a la salida estándar.


# /etc/init.d/servicio stop

Para un servicio/demonio


# /etc/init.d/servicio start

Inicia un servicio/demonio.


# /etc/init.d/servicio restart

Reinicia un servicio/demonio.


$ startx

Arranca el entorno gráfico con el gestor especificado en el .initrc de tu home.


$ startx /usr/bin/X11/icewm

Arranca el entorno gráfico con el icewm (si es que no fuera el predeterminado)


$ Ctrl+C

Termina un proceso.


$ Ctrl+Z

Suspende temporalmente la ejecución de un programa.


$ Ctrl+S

Para la transferencia de datos a la terminal.


$ Ctrl+Q

Resume,reinicia la tranferencia de datos


$ Ctrl+R

Entra en modo de busqueda incremental de linea de comandos, ej: Si entras en el modo y escribis “ls” (sin comillas) te completará la entrada más reciente que empiece por “ls”, para ir rotando por la entradas antereriores seguir presionando Ctrl+R, para terminar presionar alguna flecha.


$ Ctrl+L

Limpia la pantalla.


$ Ctrl+O

Ejecuta un comando (como si se hubiera presionado ENTER) pero vuelve y deja el comando escrito en el prompt.


$ Ctrl+K

Borra desde donde está el cursor hasta el final.


$ Ctrl+W

Borra desde donde está el cursor hasta el inicio de la palabra debajo de èl.


$ Ctrl+E

Salta al final de lo que se esté escribiendo.


$ Ctrl+Alt+F2

Salir del entorno gráfico a un terminal.(Fnº según gettys activados en /etc/inittab)


$ Ctrl+Alt+Supr

Estando en una terminal reinicia (si no se indica otra cosa en /etc/inittab)


$ ./script

Ejecuta un script de shell.


$ java -jar fichero.jar

Ejecuta un programa java.


$ consolechars -f fuente.psf.gz

Cambiar la fuente de la consola.Las fuentes se encuentran en /usr/share/consolefonts/


$ base-config

Configura el sistema base.


$ gpm

Programa que da soporte de ratón a la consola y aplicaciones que corren sobre ella.


$ reportbug

Programa en modo texto para enviar bugs a Debian


$ exit

Termina la ejecución del programa en curso.


# init 0

Apaga la máquina.


# init 6

Reinicia la máquina.


# shutdown -t1 -h now

Apaga la máquina .


# shutdown -t1 -r now

Reinicia la máquina.


$ su

Entrar a la sesión como root u otro usuario.


# su nom_usuario

Estando como root entramos como otro usuario.


$ passwd

Cambio de contraseña.


$ who -a -H

Muestra información de los usuarios conectados al sistema.


$ users

Muestra información de los usuarios conectados al sistema.


$ id

Muestra información del usuario actual,(grupos a los que pertenece,uid,gid)


$ groups

Muestra los grupos a los que pertenece un usuario.


# adduser usuario

Crea un nuevo usuario.


# adduser usuario grupo

Añade un usuario existente a un grupo ya existente.


# adduser --no-create-home usuario

Crea un usuario pero sin directorio personal(home).


# addgroup grupo

Crea un nuevo grupo.


# deluser usuario

Elimina un usuario.


# deluser usuario grupo

Elimina un usuario del grupo especificado.


# deluser --remove-home usuario

Elimina un usuario y su directorio home.


# delgroup grupo

Elimina un grupo.


# delgroup grupo --only-if-empty

Elimina un grupo sólo si no tiene ningún usuario.


# usermod -l nuevo_login

Cambia el nombre del usuario. Sería bueno combinarlo con -d


# usermod -d nueva_home -m login

Cambia el home al usuario,creándolo si no existiese y transfiriendo el contenido.


# usermod -e 2006-04-14 login

Fecha en que la cuenta del usuario será desactivada,expresada en formato AAAA-MM-DD


# groupmod -n nuevo_nombre grupo

Cambia el nombre de un grupo.

Usando el gestor de arranque (NTloader) de windows:

Se copian los sectores de arranque de las particiones al archivo debian_sarge.lnx:

# dd if=/dev/hda2 of=/debian_sarge.lnx bs=512 count=1 (tenemos sarge en hda2 con lilo o grup)
# dd if=/dev/hda5 of=/debian_etch.lnx bs=512 count=1 (tenemos etch en hda5 con lilo o grup)

los archivos debian*.lnx se copian en la partición raiz de windows y al archivo boot.ini de windows,oculto y de sólo lectura,le agregamos las siguientes lineas dentro de su sección [operating systems]:

C:\debian_sarge.lnx="Debian Sarge"
C:\debian_etch.lnx="Debian Etch"

Atención:
cada vez que modifiquemos los sectores de inicio o gestores de arranque de las particiones linux habrá que volver a realizar lo anterior ya que los ficheros .lnx habrán quedado
desactualizados.

5.b. Procesos y memoria

Memtest86+

Realiza una comprobación del estado de la memoria si optamos a ello desde los gestores de arranque, para lo cual necesitamos editarlos añadiendoles su ruta.

En lilo.conf:

image  = /boot/memtest86+.bin
label = memtest86+

En menu.lst:

title  memtest86+
root   (hd0,0)
kernel /boot/memtest86+.bin

suponiendo que /boot esté en la partición raiz (/)


# make-memtest86+-boot-floppy

Crea un disquete de arranque desde el que se ejecutará memtest86+


$ free -m -s 3

Muestra el uso de memoria.


$ ps aux

Muestra información de los procesos en curso.


$ top

Muestra información de los procesos en curso.(tecla z colorea los activos)


$ pstree

Muestra los procesos en curso en árbol.


$ pidof comando

Busca el ID de un programa que se está ejecutando.


$ killall proceso

Para un proceso.


$ strace comando

Muestra las llamadas al sistema originadas por un proceso.


$ fuser -v archivo

Muestra los procesos que están usando un fichero o directorio.


$ lsof | less

Lista los ficheros abiertos por los procesos, en realidad descriptores de ficheros


$ lsof -c comando

Lista los ficheros abiertos por un proceso.


$ lsof +D /home/paco

Lista los procesos que están usando mi directorio.


$ lsof -i :60627

Muestra que proceso se encuentra detrás del puerto 60627 (aunque esté a la escucha)


$ nohup comando &

Lanza un proceso de forma que si cerramos el shell,el proceso continúa ejecutandose


$ comando &

Ejecuta un comando en segundo plano(background),permitiendonos seguir usando el promp.


$ jobs

Lista los procesos en segundo plano identificándolos con un nº de tarea.


$ fg nº

Pasa a primer plano (foreground)un proceso


$ bg

Pasa a background un proceso que hemos suspendido temporalmente tecleando Ctrl-z


$ nice -n prioridad comando

Ejecuta un comando con una prioridad determinada(0 por defecto).

Ejemplo:

$ nice -n -10 cdrecord

esos valores,de mayor a menor, son -20…+20, sólo root puede establecer valores negativos.


$ renice prioridad PID_del_proceso

Cambia la prioridad de un proceso en marcha


$ sleep 5 comando

Retarda 5 segundos la ejecución de un comando, m para minutos y h para horas.


$ at [-f script] [tiempo]

Ejecutar un script a una hora y/o fecha.

Ejemplo

$ at -f script 15:23

formas de indicar el tiempo:

$ at -f script 15:23

hoy a las 15:23


$ at -f script 15:23 01.23.06

El 01.23.06 a las 15:23


$ at -f script now + 23 minutes

Dentro de 23 minutos, puede ser minutes, hours, days, weeks


$ at [tiempo]

Ésta forma nos abre un promp interactivo.
Ejemplo:

$ at 15:00

Abre el promp de at

$ at > comando

Ingresamos el comando/os.

$ ctrl+d

Salimos de at


$ atq

Muestra,numeradas,la lista de tareas programadas.


$ atrm nº

Eliminará una tarea identificada por su nº.


$ batch

Se emplea de las mismas formas que at,solo que en este caso, el script o comando se ejecutará sólo si la media de carga de la CPU es inferior al 80%.

5.c.-Disco duro

Nomenclatura de dispositivos

 -------------------------------------------------------
| Nomenclatura de discos en linux|    IDE    |   SCSI   |
| -------------------------------|-----------|----------|
|  Disco maestro del primer bus  | /dev/hda  | /dev/sda |
|  Disco esclavo del primer bus  | /dev/hdb  | /dev/sdb |
|  Disco maestro del segundo bus | /dev/hdc  | /dev/sdc |
|  Disco esclavo del segundo bus | /dev/hdd  | /dev/sdd |
------------------------------------------------------- 

Designacion de particiones

 ----------------------------------------
| disco /dev/hda  |primarias | lógicas   |
| ----------------|----------|-----------|
| 1ª  partición   |/dev/hda1 | /dev/hda5 |
| 2ª  partición   |/dev/hda2 | /dev/hda6 |
| 3ª  partición   |/dev/hda3 | /dev/hda7 |
| 4ª  partición   |/dev/hda4 | /dev/hda8 |
 ----------------------------------------


$ du -h fichero

Muestra espacio ocupado en disco,del directorio en curso si no indicamos nada.


$ tree -a -s -L 2

tree es un programa que muestra lo mismo que du en forma de árbol.


$ df

Muestra información sobre particiones montadas, con la opcion -h se muestra en formato Human Readable (e.g. KB, MB, GB).


# cfdisk

Muestra información sobre particiones.Herramienta para particionar en ncurses.


# fdisk -l

Muestra información sobre particiones.Herramienta para particionar.


# mount

Vemos el listado de dispositivos montados.


# mount punto_montaje

Monta un dispositivo.(ya establecido en el fstab)


# umount punto_montaje

Desmonta un dispositivo.(ya establecido en el fstab)


# mount -t sistema_archivo dispositivo punto_montaje

Monta un dispositivo. Ejemplo:

# mount -t ext3 /dev/hda2 /mnt

Donde se monta la segunda partición primaria del dispositivo /dev/hda, la cual es de tipo ext3, en el directorio /mnt


# umount /dev/hda2

Desmonta un dispositivo


# fsck /dev/hdax

Chequea y repara el sistema de archivos de una partición NO MONTADA.


# fsck.ext2 -vpf /dev/hdx

Chequea y repara el sistema de archivos de una partición ext2 NO MONTADA.


# fsck.ext3 -vpf /dev/hdx

Chequea y repara el sistema de archivos de una partición ext3 NO MONTADA.


# mkfs.ext2 /dev/hdb1

Crea un sistema de ficheros Linux ext2 en la primera partición del segundo disco duro.


# mkfs.ext3 /dev/hdb1

Crea un sistema de ficheros Linux ext3 en la primera partición del segundo disco duro.


# mkfs.ext3 /dev/fd0

Crea un sistema de ficheros Linux ext3 en el floppy.


# mkswap /dev/hda2

Crea un sistema de ficheros Linux swap (intercambio) en hda2.


# resize2fs -f /dev/hda2

Reajusta el tamaño del sistema de ficheros después de haber ampliado/reducido la partición/volumen


# tune2fs -O ^has_journal /dev/hda2

Convierte hda2 de ext3 a ext2


# tune2fs -j /dev/hda2

Convierte hda2 de ext2 a ext3


# tune2fs -C 255 /dev/hda1
Fuerza a que se revise /dev/hda1 en el próximo reinicio (con fsck). Útil para revisar la partición raíz, que no se puede desmontar.


# quota

Programa que gestiona/limita el uso que hacen del disco los usuarios/grupos.

5.d.-Entorno


$ locale

Muestra la zona geográfica configurada.


# dpkg-reconfigure locales

Reconfigura los locales.


# dpkg-reconfigure console-data

Reconfigura el teclado.


$ loadkeys ruta_mapa_teclado.gz

Carga el mapa de teclado que le indicamos,que estará en:/usr/share/keymaps


$ locale charmap

Muestra el código de caracteres en uso.


$ set

Muestra las variables locales definidas


$ env

Muestra las variables de entorno definidas.


$ export

Muestra las variables de entorno declaradas.


$ export VARIABLE=valor

Añadimos una variable.Con export EDITOR=nano establecemos nano como editor predeterminado.


$ export VARIABLE=

Eliminamos una variable dejando en blanco su valor. Para que las variables permanezcan de una sesión a otra hay que ponerlas en el archivo .bashrc de tu home.

5.e-Instalación de software

Dpkg

Herramienta de nivel medio para instalar, construir, borrar y gestionar los paquetes de Debian


# dpkg -i paquete

Instalación de paquetes .deb


# dpkg -r paquete

Desinstala un paquete.


# dpkg --purge paquete

Desinstala un paquete y sus archivos de configuración.


# dpkg --force -r paquete

Fuerza la desinstalación de un paquete.Más información: dpkg –force-help


# dpkg --force-all -r paquete

Fuerza aún más la desinstalación de un paquete.Su uso puede dañar el sistema.


# dpkg -c paquete

Muestra el contenido (ficheros) de un paquete.


# dpkg -L paquete

Muestra todos los ficheros que se instalaron con un paquete.


# dpkg -S fichero

Muestra a qué paquete pertenece un fichero.


# dpkg --get-selections

Muestra todos los paquetes instalados en el sistema.


# dpkg-reconfigure paquete

Reconfigura paquetes instalados.Ejemplo: dpkg-reconfigure locales

Apt

Herramienta Avanzada de Empaquetamiento (Advanced Packaging Tool)
que gestiona el sistema de paquetes de Debian instalando,desinstalando, actualizando y configurando los mismos.

La sintaxis es:

# apt-get [opciones] acción


# apt-get update

Descarga y analiza la lista de nuevos paquetes desde los repositorios del sources.list.


# apt-get upgrade

Actualiza todos los paquetes instalados(no instala ni elimina paquetes).


# apt-get dist-upgrade

Actualiza todos los paquetes resolviendo las dependencias.


# apt-get install paquete/s

Instalación de paquetes por red,con resolución de depencias.


# apt-get -s acción

Simula,sin llevar a cabo la acción. Por ejem: apt-get -s install paquete.


# apt-get -d acción

Sólo descarga los paquetes deb en /var/cache/apt/archives/ sin instalar o desinstalar nada


# apt-get install --reinstall paquete

Reinstala un paquete.


# apt-get remove paquete/s

Desinstala un paquete.


# apt-get remove --purge paquete/s

Desinstala un paquete y sus archivos de configuración.


# apt-get clean

Elimina todos los paquetes (.deb) descargados y almacenados en /var/cache/apt/archives/

Apt-cache

Utilidad que manipula la caché de paquetes de APT en busca de información


$ apt-cache search palabra

Busca en los paquetes y en las descripciones la palabra.


$ apt-cache show paquete

Muestra la descripción completa del paquete


$ apt-cache showpkg paquete

Muestra su relación con otros paquetes.


$ apt-cache depend paquete

Muestra las dependencias del paquete


$ apt-cache rdepend paquete

Muestra las dependencias inversas del paquete(cuales dependen de él)

Apt-build

Herramienta que no se limita a instalar un paquete deb sino que compila el tarball, crea el paquete deb y lo instala, quedando así integrado con apt. Lo que se consigue compilando es optimizar la ejecución de los programas en nuestro procesador, de hecho al instalarse pregunta por el tipo de procesador del sistema. Tiene las mismas opciones que apt como update, upgrade, install

Ejemplo:

# apt-build install mplayer

Instala mplayer (el paquete del ejemplo no está escogido al azar¿?)

y alguna más como word para recompilar todo. En este último caso hay que crear una lista con los paquetes a recompilar en /etc/apt/apt-build.list
para lo cual nos puede servir el siguiente comando:

# dpkg --get-selections awk '{if ($2 == "install") print $1}' > /etc/apt/apt-build.list

Es aconsejable eliminar de dicha lista paquetes delicados como gcc, libc6

Aptitude

Gestor de paquetes con algunas mejoras con respecto a apt como la instalación automática de los paquetes que sin ser dependencias forman parte de los sugeridos o recomendados y la autodesinstalación de los paquetes instalados en su momento como dependencias de otros (automáticamente en contraposición a manualmente),si ningún otro paquete|
los necesitase.Se puede usar de forma interactiva si no se especifica ninguna acción o desde la linea de comandos,usando las mismas opciones y acciones de apt.La sintaxis es: aptitude [opciones] acción ejem.: aptitude -s purge firefox


# aptitude update

Descarga y analiza la lista de nuevos paquetes según los repositorios del sources.list.


# aptitude safe-upgrade

Realiza una actualización segura (no instala ni elimina paquetes).


# aptitude full-upgrade

Realiza una actualización,instalando y eliminando paquetes si fuera preciso


# aptitude install paquete/s

Instala/actualiza paquetes


# aptitude reinstall paquete/s

Reinstala un paquete


# aptitude remove paquete/s

Elimina paquetes


# aptitude purge paquete/s

Elimina paquetes y sus ficheros de configuración


# aptitude download paquete/s

Se limita a descargar los paquetes deb al directorio en el que estamos.


# aptitude hold paquete/s

Bloquea paquetes


# aptitude unhold paquete/s

Desbloquea un paquete


# aptitude unmarkauto paquete/s

Desmarca paquetes como instalados manualmente


# aptitude markauto paquete/s

Marca paquetes como instalados manualmente (elegidos por nosotros)


$ aptitude search expresión

Busca un paquete por nombre y/o expresión


$ aptitude show paquete

Muestra información detallada de un paquete


$ aptitude clean

Elimina los ficheros .deb descargados

Opciones:

-s

Simula las acciones, pero en realidad no las realiza.


-d

Sólo descarga paquetes, no instala o desinstala nada.


-p

Siempre pide confirmación de las acciones


-y

Supone que la respuesta a preguntas simples del tipo sí/no es «sí»


-f

Trata de arreglar paquetes rotos de forma agresiva.


-V

Muestra la versión de los paquetes a instalar.


-D

Muestra las dependencias de los paquetes cambiados automáticamente.


-t rama

Establece la rama de Debian desde la que se instalan los paquetes

Deborphan

Muestra los bibliotecas (paquetes lib) huérfanas


-a

Muestra todos los paquetes huérfanos (que no dependen de ningún otro).


-d

Muestra también sus dependencias.


-n

Muestra los paquetes \”sugeridos\” y \”recomendados\” como dependencias.


# deborphan -A paquete

Ignora un paquete(buena opcion si tenemos mala memoria y queremos conservar un huérfano)


# deborphan -R paquete

Cancela la orden anterior,si el paquete es huérfano lo mostrará.


# deborphan -L

Lista los paquetes ignorados

Orphaner

Interfaz gráfica de deborphan, sin parámetros sólo mostrará paquetes lib.

-a

Muestra todos los paquetes huérfanos del sistema.

Editkeep

Interfaz gráfica que gestiona o edita la lista de paquetes ocultos de deborphan.

Debfoster

Programa que mantiene una lista de los paquete que fueron instalados como dependencias de otros.La primera vez que se ejecuta pregunta si quieres conservar los paquetes instalados(pregunta por todos),Puede ejecutarse de manera interactiva o bién directamente desde la linea de comandos para instalar o desinstalar paquetes.

Localepurge

Script que elimina e impide la instalacion de los locales y páginas man que
no nos interesa tener en el disco.Al instalarlo nos da a elegir los locales y
si automaticamente impide la instalación de otros.El programa no se encuentra
bién integrado con la gestión de paquetes de debian…

Checkinstall

$ ./configure
$ make
$ su
# checkinstall

Esta sucesión de comandos crean un paquete .deb, una vez descomprimido el tarball* y ubicados en el directorio recién creado (si es el caso).
./configure: comprueba si nos faltan dependencias y crea el archivo make.ini necesario para la compilación.
make: compila el programa.(lo pasa a lenguaje máquina o binario)
checkinstall: crea el paquete .deb
*tarball: fichero comprimido con el código fuente del programa.

Me parece mejor la idea de hacer un paquete deb que la de compilar un programa desde las fuentes, de ésta manera se puede instalar el programa mediante dpkg -i quedando totalmente integrado en el sistema y luego si queremos desinstalarlo lo tendremos también mucho más facil con dpkg -r


fakeroot make-jpkg jre-linux.bin dpkg -i sun-j2re.deb

Ésta sucesión de comandos nos instala el java de sun, quedando totalmente integrado en nuestro sistema.

fakeroot es un programa normal, sin el bit setuid (ver chmod). No aumenta los privilegios de un usuario ni disminuye la seguridad del sistema. Se escribió específicamente para permitir que los usuario pudiesen crear paquetes deb sin tener privilegios de superusuario.
make-jpkg viene en el paquete java-package y sirve para convertir en paquete deb el binario de sun que contiene la máquina virtual de java (jre).

6.Recuperación del sistema

7.a.-Usando knoppix live


CD_knoppix # su

desde knoppix CD nos convertimos en root.


root@CD # cd /

nos vamos a / del knoppix CD.


root@CD # mount -t ext3 /dev/hdax /mnt/hdax

montamos la partición en cuestión.


root@CD # chroot /mnt/hdax

nos introducimos en ella con chroot*


root@disco_duro # mount -t proc proc /proc

puede ser necesario montar el sistema de ficheros proc.


root@disco_duro # nano /etc/lilo.conf

editamos lilo (o lo que sea necesario).


root@disco_duro # /sbin/lilo

ejecutamos lilo.


root@disco_duro # umount -t proc proc /proc

desmontamos proc


root@disco_duro # exit

nos salimos de chroot y por tanto del disco duro


root@CD # umount -t ext3 /dev/hdax /mnt/hdax

desmontamos la partición en cuestión.


root@CD # exit

salimos del root de knoppix.


CD_knoppix $

volvemos al punto de partida.

* La orden chroot lo que hace es situarte virtualmente en la partición que le indicas y a partir de ahí las ordenes que le pases a la consola se ejecutan en esa partición, es como si realmente estuvieras en esa partición.

7.b.-Creando un disquete de arranque/rescate

Con lilo

Tan fácil como copiar lilo.conf en un disquete e indicarle que arranque desde el mismo, para lo cual hay que cambiar la linea boot por:


boot=/dev/fd0

Si teneis varias particiones,entre ellas alguna lógica debeis añadir al lilo.conf del disquete la opción: \”lba32\” para que pueda arrancarla.

Con el programa mkboot

Este programa viene en el paquete debianutils.

mkboot, entre otras cosas, te copia el lilo.conf al disquete,pero la verdad es que yo sólo he conseguido que me funcionen los disquetes creados con mkboot,cambiando el lilo.conf que te crea por el original y realizando después las modificaciones que cuento más arriba.El mismo programa te explica cómo:


# mount /dev/fd0 /mnt

montamos el disquete.


# cd /mnt

nos vamos a él.


# nano lilo.conf

editamos lilo.conf


# lilo -C lilo.conf

con -C le decimos que ejecute el lilo del disquete y no el de /etc/lilo.conf


# cd ..

nos salimos.


# umount /dev/fd0

desmontamos el disquete.

Con grub

Éste no lo he probado pero por lo que he visto se trataría de copiar los ficheros stage1 y stage2 al disquete tal que así:


# mkfs.ext3 /dev/fd0

formateamos el disquete.


# mount -t ext3 /dev/fd0 /floppy

lo montamos en /floppy.


# cp /ruta_de_acceso/stage1 /floppy

copiamos stage1


# cp /ruta_de_acceso/stage2 /floppy

copiamos stage2


# cp /boot/vmlinuz /dev/fd0

si hay sitio se puede incluir el nucleo en el disquete.


# umount /dev/fd0

se desmonts floppy sin sacarlo.


# grub

inicia la interfaz de comandos de GRUB


grub> root (fd0)

instala las herramientas de GRUB…


grub> setup (fd0)

…en el MBR del disquete.


grub> quit

salimos

Cuando se arranque desde el disquete y aparecezca el interprete de comandos de grub hay que teclear:

grup> root (fd0)
grup> kernel /boot/vmlinuz  root=/dev/hda2     # kernel de inicio y particion raiz
grup> boot

Con el NTloader de microsoft

En el caso de que lo usemos para el inicio también podemos crear un disquete de arranque con el mismo.Para ello copiaremos los ficheros ocultos \”ntldr\” , \”ntdetect.com\” y \”boot.ini\” que se encuentran en el directorio raíz del sistema (normalmente C:).Ésto es lo que haría cualquier windosero, pero nosotros además,tendremos que copiar el o los ficheros con extensión .lnx que pusimos en la partición raiz.

7.c.-Copiando el MBS(Master Boot Sector)-sector de arranque maestro

Ésto crea un archivo llamado mbr con los primeros 512 bytes de hda:

# dd if=/dev/hda of=mbr count=1 bs=512

Para restaurar la tabla de particiones:

# dd if=mbr of=/dev/hda

7.d.-Copiando el VBS(Volume Boot Sector)-sector de arranque de una partición

Ésto crea un archivo llamado sector_arranque_hda2 con los primeros 512 bytes de hda2

# dd if=/dev/hda2 of=/sector_arranque_hda2 count=1 bs=512

Para restaurar el sector de arranque

# dd if=sector_arranque_hda2 of=/dev/hda2

Cada vez que se modifique lilo o grup,habrá que realizar una nueva copia del MBR o el sector de arranque que incluya los cambios.

Kernel ,logs y hardware


$ uname -a

Versión del kernel.


$ cat /proc/version

Versión del nucleo y compilador empleado.


$ lsmod

Lista los módulos cargados.


$ cat /proc/modules

Lista los módulos cargados.


$ lsmod | grep módulo

Ver si está cargado el módulo.


$ modinfo módulo

Muestra información sobre un módulo.


# modprobe módulo

Inserta un módulo en el kernel cargando antes los módulos de los cuales dependa.


# modprobe -r módulo

Elimina un módulo del kernel y si procede los que dependen del mismo.


# insmod módulo

Inserta un módulo en el kernel.


# rmmod módulo

Elimina un módulo del kernel.


# echo módulo >> /etc/modules

Inserta un módulo en el kernel de forma permanente.


# depmod módulo

Comprueba las dependencias del módulo.


# modconf

Programa gráfico para listar,cargar y descargar módulos del kernel.


# alsaconf

Programa interactivo que detecta las tarjetas de audio y carga los modulos adecuados.


# less /var/log/kern.log

Mensajes del nucleo (solo root o algun usuario que pertenesca al grupo adm tiene acceso a los logs)


# less /var/log/syslog

Registro de mensajes relativos a la seguridad.


# less /var/log/debug

Registro de información de depuración de los programas.


# less /var/log/messages

Mensajes del sistema de carácter informativo.


# less /var/log/user.log

Información del usuario.


# less /var/log/XFree86.0.log

Información sobre las X


# less /var/log/Xorg.0.log

Información sobre las X


# less /var/log/auth.log

Accesos al sistema(incluye los intentos fallidos).


# last

Lista los usuarios conectados/desconectados (fichero /var/log/wtmp).


# lastb

Muestra los intentos de conexión fallidos (fichero /var/log/btmp).


# hdparm /dev/hda

Verificar DMA


# hdparm -I /dev/hdx

Información sobre hdx


# hdparm -d1 /dev/hdx

Activar DMA en el disco duro o periférico.


$ dmesg

Ver la salida que el kernel produjo en el arranque.


$ dmesg | grep hd

Información sobre dispositivos IDE.


# sensors-detect

Detecta,instala y carga los sensores y los módulos necesarios(en un kernel 2.6)


# sensors

Tras ejecutar el anterior,muestra temperaturas, voltajes y revoluciones de ventilador.


# lsdev

Muestra información sobre los dispositivos(canales IRQ,DMA y puertos E/S que utilizan)


# lspci

Ver dispositivos conectados a la placa madre mediante un bus PCI.


# lsusb

Ver los buses USB y los dispositivos conectados a los mismos.


# cdda2wav -scanbus

Comprobar el interfaz SCSI.


# cdrecord -scanbus

Comprobar el interfaz SCSI.


$ cat /proc/meminfo

Información sobre la memoria.


$ cat /proc/cpuinfo

Información sobre el procesador.


$ cat /proc/devices

Información sobre dispositivos en uso.

Notas

syslogd registra los mensajes que los programas y el sistema ofrecen.
klogd es un demonio del sistema que intercepta y registra los mensajes del núcleo.
lsdev viene en el paquete procinfo.
sensors viene en el paquete lm-sensors.
Dispositivo de bloques:aquellos que almacenan información en bloques de tamaño fijo,
(cada uno con su dirección) y utilizan los buffers del sistema (memoria temporal),
Dispositivo de caracteres: aquellos que envian o reciben un flujo de datos de forma
secuencial y sus procesos de lectura/escritura no poseen buffer.por ej. el ratón
DMA(Acceso Directo Memoria): es la manera en que los dispositivos se comunican directa-
mente con la memoria sin intervención del procesador.Cada controlador dispone de una
linea o canal DMA de acceso directo.
IRQ (solicitud de interrupción): es la manera en que el controlador de un dispositivo
solicita al procesador que le atienda porque va a comunicarle algún suceso,cada contro-
lador tiene una linea IRQ distinta.
IO Ports (puertos de entrada/salida): se trata de una abstracción (que se corresponde
con un dispositivo)a través de la cual un dispositivo intercambia datos con el sistema.
Tienen una dirección(en hexadecimal)que los identifica.

8. Redes


# /etc/init.d/networking start

Inicia los servicios de red.


# /etc/init.d/networking restart

Reinicia los servicios de red.


# /etc/init.d/networking stop

Para los servicios de red.


# ifconfig [interfaz opciones IP]

Información y configuración de interfaces de red.


# ifconfig

Muestra el estado de los interfaces activos.


# ifconfig -a

Muestra el estado de todos los interfaces.


# ifconfig ppp0

Muestra el estado de ppp0


# ifconfig eth0 up

Activa eth0.


# ifconfig eth0 down

Cierra eth0.


# ifconfig eth1 address 156.35...

Asigna una dirección al interfaz especificado.


# iwconfig

Similar a ifconfig pero sólo para interfaces wireless


# ifup interface

Habilita la interface especificada,ejemplos: ifup eth0 ;ifup ppp0


# ifdown interface

Deshabilita la interface especificada,ejemplos: ifdown eth0 ;ifdown ppp0


# dhclient eth0/eth1

Inicia conexión dhcp mediante el cliente dhcp-client.


# pump -i eth0/eth1

Inicia conexión dhcp mediante el cliente pump.


# pppoeconf

Programa para configurar conexiones pppoe.


# pppconfig

Programa en modo texto para configurar una conexión ppp.


# pon

Establece la conexión ppp a internet.


# plog

Monitoriza la conexión ppp.


# poff

Finaliza la conexión ppp a internet.


$ finger usuario

Informa sobre un usuario conectado al sistema.


$ finger @servidor

Informa sobre todos los usuarios conectados a un servidor (nombre o IP)


$ finger usuario@servidor

Informa sobre un usuario conectado a un servidor


$ ping google.com

Verifica la conexión,en este caso con www.google.com (Ctrl+Z pone fin)


$ traceroute microsoft.es

Muestra la ruta que los paquetes de datos han seguida hasta la máquina de destino.


$ mtr rediris.es

Combinación de ping y traceroute.


$ whois esdebian.org

Información sobre éste,nuestro dominio.


$ host -v -a telefonica.com

Determina la ip de un nombre o el nombre de una ip.(host -v -a 194.224.55.221)


$ iptraf

Monitoriza tráfico de redes(ncurses)


# tethereal

Versión para consola de ethereal,un analizador del tráfico de red (sniffer).


# ettercap

Sniffer/interceptor/logger para redes LAN con switchs basado en ncurses.


$ nmap

Escaner de puertos.


# fail2ban

Escanea logs como /var/log/auth.log y banea las IP con demasiados errores de conexión.


# snort

Sniffer de paquetes y un detector de intrusiones en una red (NIDS).


# aide

Detector de intrusiones en un único Servidor, PC o host.(HIDS).


# portsentry

IDS que detecta escaneos de puertos y reacciona a un ataque.


3 chkrootkit

Detector de rootkit.


w3m,lynx,links,links2,elinks

Navegadores web,elinks soporta SSL con lo que podremos acceder a correo web.


Irssi,*censored*x,WeeChat-curses

Clientes IRC( Internet Relay Chat) )


mutt,mush,pine,elm

Clientes de correo(MUA).


cabber

Cliente jabber( protocolo libre para mensajería instantánea.)


Centericq

Cliente de mensajeria multiprotocolo (ICQ,Yahoo,AIM,MSN,IRC,Jabber)


ncftp

Cliente ftp (File Transfer Protocol) basado en ncurses


ftp-ssl

Cliente ftp con soporte de cifrado SSL y TSL.(dependiendo de la otra parte)


telnet-ssl

Cliente telnet(acceso remoto) con soporte de cifrado SSL,(dependiendo de la otra parte)


ssh

Cliente ssh (Secure SHell),acceso remoto cifrado,forma parte del paquete openssh-client


rtorrent, bittornado

Clientes bittorrent.Bitornado es una versión mejorada del cliente homónimo bittorrent.


$ talk usuario

Entabla una conversacion con un usuario del sistema.


$ talk usuario@sistema

Entabla conversacion con un usuario de otro sistema(entre máquinas UNIX)


$ mesg -n

Anula la notificacion de comunicacion de talk o write


$ mesg -y

Habilita la llegada de notificaciones de talk o write


$ write usuario

Manda un mensaje a un usuario del sistema.


$ netstat -napt

Saber qué puertos tiene abiertos nuestro sistema


n

No resuelve las direcciones a sus nombres DNS. Esto hace más rápida la ejecución.<


a

Muestra todos las conexiones,incluídas las que están escuchando.


p

Muestra el número y nombre del proceso,dueño de dicha conexión.


t

sólo muestra conexiones tcp


$ jigdo-lite fichero.jigdo

Programa interactivo que permite la descarga y/o \”actualización\” de una imagen ISO; descarga los ficheros de una imagen ISO mediante wget, los une y forma al vuelo una copia de la imagen ISO original. Pero si ya tenemos una imagen en el disco o un CD, bastaría con indicarle la ruta a la misma para que se actualizara. Para ambos casos hay
que descargar previamente los ficheros .jigdo y .template asociados a la imagen.


$ jigdo-file

Herramienta para generar los ficheros .jigdo y .template de una imagen


$ wget [opciones] URL

Gestor de descargas.


-p

descarga web completa.


-r

recursivo.


-k

Convierte los enlaces absolutos en relativos.


-c

Reanuda la descarga de un fichero parcialmente descargado.


-l6

profundidad de recursión (5 por defecto)


-A formato

formato para descargar.


-nH

hace que no se cree el subdirectorio localhost.


--cut-dirs=n

elimina n número de directorios dentro de la jerarquia.

Ejemplo 1ºw

$ get -A zip URL

Bajaría todos los archivos zip de una página web.
Ejemplo 2º: nos queremos descargar el manual nano.pdf que está en http://www.manuales.com/informática/editores/nano.pdf


$ wget -nH --cut-dirs=2 http://www.manuales.com/informática/editores/nano.pdf

nos bajaría sólo el manual sin crearnos ningún nuevo directorio en nuestra home.

Ejemplo 3º: nos queremos bajar el manual de Arocena en formato html cuya primera página está en: http://usuarios.lycos.es/ortihuela/index.htm ,pues entonces:

$ wget -r -nH http://usuarios.lycos.es/ortihuela/index.htm

nos bajaría todo el contenido del curso (ficheros .html,.css,.jpg,etc) al directorio /ortihuela

9. OTROS

9.a. MLDONKEY

telnet 127.0.0.1 4000
Abrir interfaz telnet

kill
Matar mldonkey

q
Cerrar interfaz telnet

?
Muestra la ayuda

??
Muestra más ayuda

add_user usuario clave
Añade un nuevo usuario

add_user usuario clave
Cambia la contraseña de un usuario

remove_use usuario
Elimina un usuario

voo
Ver todas las opciones

set opción valor
Cambiar valor de la opción

save
Guardar opciones

networks
Ver todas las redes

enable nº
Activar la red nº

disable nº
Desactivar la red nº

alias
Crea un alias.Ejemplo:alias red netwoks

unalias
Elimina un alias.Ejemplo:unalias red

c nº
Conectar a más servidores o alnº

vm
Servidores conectados

vma
Lista todos los servidores conocidos

x nº
Desconectar del servidor

dllink .torrent
Inicia la descarga de un elinks o torrent

dllinks fichero
Descarga los elinks contenidos en un fichero

http url refererencia
Inicia la descarga desde una URL

s
Buscar archivos en todas las redes

  • network: nombre de red
  • minsize: tamaño mínimo
  • maxsize: tamaño máximo
  • media: video|Audio|…
  • Video: video
  • Audio: audio
  • format: formato
  • title: título
  • album: album
  • artist: autor
  • field: field ,fieldvalue
  • not: palabra
  • and: palabra
  • or: palabra

vr
Ver resultados de la última busqueda

vs
Ver todas las busquedas

d nº
Bajar resultado nº

cancel nº
Cancelar descarga nº

pause nº
Pausar descarga nº

resume nº
Resumir descarga nº

uploaders
Informa sobre la subidas y sus usuarios

upstats
Muestra estadísdicas sobre las subidas

torrents
Muestra todos los torrents en el servidor

compute_torrent fichero
Genera un .torrent

vd
Muestra la cola de descargas

scan_temp
Muestra el contenido del directorio temp

recover_temp
Recupera los archivos perdidos detemp

commit
Mueve las descargas al directorio incoming

9.b. MUTELLA

mutella
Abrimos la interfaz de mutella.

leave
Cerramos la interfaz,pero mutella sigue corriendo.

exit
Salir.

version
Muestra la versión del programa.

help
Muestra la ayuda.

help commando
Muestra la ayuda del comando.

?
Igual que “help”

set
Muestra las opciones de mutella.

set+
Añade un valor a las opciones.

set-
Quita un valor de las opciones.

color
Configurar los colores de la consola.

info opciones
Muestra información sobre la actividad de la red, las opciones son:

  • network: Información general sobre la red.
  • connections: Conexiones
  • transfers: Transferencias
  • uploads: Subidas
  • downloads: Descargas

hosts
Muestra la lista de servidores en caché.

open
Conectar a un servidor.

close ID
Cierra una conexión/es

find palabra/s opciones
Buscar archivos, las opciones son:

  • -palabra: Excluye una palabra de la búsqueda.
  • size:bytes: tamaño exacto del archivo,en bytes.
  • around:bytes: tamaño aproximado.
  • min:bytes: tamaño mínimo del archivo,en bytes.
  • max:bytes: tamaño máximo del archivo,en bytes.

ejemplo: find mike oldfield .ogg: -tubulars bells min:30000

list
Muestra las búsquedas en curso.

ls
Muestra sólo las búsquedas con resultados.

edit
Modifica los términos de la búsqueda.

delete ID
Elimina una búsqueda.

erase ID
Elimina una búsqueda y borra la descarga parcial.

clear
LImpia los resultados de una o más búsquedas.

results ID
Muestra los resultados de la búsqueda.

get ID
Inicia la descarga de uno o más archivos.

stop ID
Para la transferencia.

kill ID
Igual que stop,pero borra el archivo parcial.

move
Modifica el nombre del archivo en descarga.

scan
Fuerza un reescaneo de los archivos compartidos.

library
Muestra los archivos compartidos.

load
Loads and executes Mutella terminal-mode script

system comando
Ejecuta un comando de shell

!
Sinónimo de “system”

NOTA:

  • los ID deben ser tomados del último ls, list, info…
  • Todos los comandos admiten abreviaturas:info downloads por id, etc
  • El fichero con las opciones es ~/.mutella/mutellarc
  • El fichero con las opciones de color es ~/.mutella/termclr

9.c. FTP(Protocolo de Transferencia de Archivos)

open servidor
Conectar con el servidor#

?
Imprimir información de ayuda local

append
Anexar a un archivo

bell
Emitir sonido cuando se complete el comando

binary
Establecer transferencia binaria (todas salvo .txt)

bye
Finalizar la sesión ftp y salir

ascii
Establecer tipo de transferencia ascii (sólo para .txt)

cd
Cambiar el directorio de trabajo remoto

close
Finalizar la sesión ftp

ls
Mostrar el contenido del directorio remoto#

dir
Mostrar el contenido del directorio remoto

delete
Eliminar archivo remoto

debug
Alternar modo de depuración

get
Recibir archivo

help
Ayuda sobre un comando 1º-help y luego el comando

lcd
Cambiar el directorio de trabajo local#

mdir
Mostrar el contenido de múltiples directorios remotos

mdelete
Eliminar múltiples archivos

mget
Obtener múltiples archivos#

mkdir
Crear directorio en el equipo remoto#

mls
Mostrar el contenido de múltiples directorios remotos

mput
Enviar múltiples archivos

open
Conectar a tftp remoto

put
Enviar un archivo

pwd
Imprimir el directorio de trabajo del equipo remoto

quit
Finalizar la sesión ftp y salir

quote
Enviar un comando arbitrario ftp

recv
Recibir archivo

rename
Cambiar el nombre del archivo

rmdir
Quitar directorio en el equipo remoto

remotehelp
Obtener ayuda del servidor remoto

send
Enviar un archivo

status
Muestra el estado actual#

trace
Alternar trazado de paquetes#

type
Establecer el tipo de transferencia de archivos

user
Enviar nueva información de usuario

verbose
Alternar modo detallado

9.d. IRC

/server
Lista,añade o elimina servidores.

/server [nombre:puerto:clave]
Conecta con un servidor.

/info [servidor]
Obtener información sobre servidor.

/lusers
Obtener estadísticas del servidor.

/users
Usuarios conectados al servidor.

/links
Lista los servidores de la red actual.

/list
Lista e informa sobre los canales.

/admin
Informa sobre el admin. del servidor.

/help [comando]
Muestra la ayuda sobre un comando.

/ison [nick]
Comprobar si un usuario está conectado.

/join [canal]
Unirse a un canal.

/names
Listar usuarios en canales.

/whois [nick]
Muestra información sobre un usuario.

/whowas [nick]
Informa sobre un usuario que ya no está.

/who [patrón]
Muestra información sobre patrón.

/msg NiCK SET PASSWORD [clave]
Cambiar de contraseña(en irc-hispano)

/msg [nick | canal][texto]
Envia un mensaje a un usuario o canal.

/amsg [texto]
Envia mensaje a todos los canales en los que estás.

/notice [nick | canal]
Envia un mensaje privado a un usuario/os

/query [usuario texto]
Envia un mensaje privado a un usuario.

/ignore
Lista los usuarios ignorados.

/ignore nick
Ignora los mensajes de un usuario.

/unignore [nick | *]
Deja de ignorar el/los mensajes.

/ctcp [nick texto]
Envia un mensaje mediante CTCP

/me [texto]
\’-> precedido de nuestro nick

/ame [texto]
\’->a todos los canales en los que estás.

/dcc [chat nick ]
Pide y/o inicia charla con un usuario.

/dcc [close nick]
Cierra charla.

/dcc [send nick fichero]
Ofrece y/o envia un fichero.

/dcc [get nick fichero]
Permite recibir un fichero.

/time
Muestra fecha y hora.

/clear
Limpia la ventana de texto actual.

/away [texto]
Pasar a estado ausente.

/away
Volver de la ausencia.

/nick [nuevonick]
Cambiar el nick.

/nick [nuevonick][clave]
Cambiar un nick registrado.

/nick [nick:contraseña]
Identificarse enirc-hispano.

/part [canal]
Abandonar un canal.

/quit
Cerrar todas las conexiones y salir.

Notas:
CTCP (Protocolo de cliente a cliente): permite dar respuestas predeterminadas y automáticas ante una petición espefífica de otro usuario.
DCC: protocolo que establece una conexión TCP directa entre dos ordenadores.

9.d. Calculadora

bc
Abrimos bc.

> 20 + 5.4
Suma.

> 77 - nº
Resta.

> 99 * 86
Multiplica.

> 47 / 3
Muestra el cociente de la división.

> 47 % 3
Muestra el resto de la división.

>4 ^ 2
Calcula la potencia 4²

> sqrt (16)
Calcula la raiz cuadrada de 16

> (2*3+2) / sqrt (2^3/2.5)
Un poco de cada.

> quit
Salimos de bc.

También podemos hacerlo usando echo y mandando la salida a bc:
echo \"(2*3+2)\" / sqrt \"(2^3/2.5)\" | bc
en este caso los paréntesis deben ir entrecomillados

9.e. Ppromps

PS1=\”\\[\33[1;34m\\][\\u@\\h:\\w]$\\[\33[0m\\] \”

PS1=\”\\[\33[30;47m\\][\\[\33[31m\\]\\u\\[\33[30;47m\\]@ \\ \\W]\\[\33[00m\\]$ \”

PS1=\’\\[\33[01;30m\\]\\u \\[\33[01;32m\\]\\h\\[\33[01;33m\\]:\\[\33[01;35m\\]\\w\\[\33[0m\\$ \’

PS1=\”\\[\33[;31m\\][\\[\33[;36m\\]\\u@\\h\\[\33[;31m\\]:\\[\33[;36m\\ ]\\w\\ [\33[;31m\\]]$\\[\33[0m\\] \”

Para que los promp permanezcan de una sesión a otra hay que ponerlos enel archivo .bashrc de tu home.

Script cuyo objetivo no es otro que eliminar de un fichero todas aquellas líneas que contengan una cadena determinada. Para ello uso la muy potente y siempre buena amiga mía herramienta sed… La sintaxis, para este objetivo sería:

sed ‘/expresión regular o cadena/d’ fichero

Si, solo eso, Es simplemente decirle a sed que encuentre esa y la sustituya por… Nada! Y bueno, la “d” al final lo que hace es eliminar esa línea en blanco…

Para eliminar las trazas, digamos, de una IP 192.168.1.1 del fichero access.log, quedaría algo así:

sed ‘/192.168.1.1/d’ /var/log/squid3/access.log

Y voilá! Listo! Claro que esto lo que hará será devolvernos en la salida estándard el contenido de dicho fichero ya sin las líneas que alguna vez contuvieron la IP 192.168.1.1… Para guardar esto debemos enviar dicha salida a un fichero temporal y luego renombrarlo al fichero original… El proceso completo quedaría así:

sed ‘/192.168.1.1/d’ /var/log/squid3/access.log > foo
mv foo /var/log/squid3/access.log

Y listo

Enjoy it !

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s