Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - madpitbull_99

#531
GNU/Linux / Introducción al comando Find
28 Julio 2011, 21:44 PM
Introducción al comando Find


El comando por excelencia para buscar archivos en Linux es find. En este articulo se pretende dar
una introducción a este comando.

Para los ejemplos trabajare sobre una carpeta llamada "test" con la siguiente estructura:

Código (bash) [Seleccionar]
mad@mad-laptop:~/test$ ls
backup.sh      paso_referencia.c  punteros.c    Stuff
find_intro.sh  Pilas_Colas.cpp    punteros.cpp



El ejemplo mas básico es buscar por nombre de fichero, en mi caso buscare un fichero llamado "punteros.c":

Código (bash) [Seleccionar]
find -name "punteros.c"
./punteros.c


El parametro -name tiene en cuenta si la palabra tiene letras en minúscula o mayúscula, si se quiere
ignorar eso, hay que usar el parametro -iname:

Código (bash) [Seleccionar]
mad@mad-laptop:~/test$ find -iname "pilas_colas.cpp"
./Pilas_Colas.cpp



Para limitar la búsqueda a un directorio, se hace de la siguiente manera:

Código (bash) [Seleccionar]
mad@mad-laptop:~/test$ pwd
/home/mad/test
mad@mad-laptop:~/test$ find /home/mad/test -name punteros.c
/home/mad/test/punteros.c


En mi caso, he limitado la búsqueda a la carpeta /home/mad/test.

Podemos indicarle hasta el nivel de profundidad al realizar la busqueda:

Código (bash) [Seleccionar]
mad@mad-laptop:~/test$ sudo find / -maxdepth 3 -name backup.sh
mad@mad-laptop:~/test$ sudo find / -maxdepth 4 -name backup.sh
/home/mad/test/backup.sh


En el primero ejemplo estamos partiendo desde /(root) y le indicamos que busque el fichero "backup.sh" en los
tres primeros niveles, como veréis el comando no arroja ningún resultado.

A continuación lanzamos el mismo comando pero indicándole que busque en los cuatro primeros niveles y vemos que
encuentra el fichero deseado.

Se le puede indicar un rango de niveles de profundidad:

Código (bash) [Seleccionar]
mad@mad-laptop:~/test$ sudo find / -maxdepth 3 -maxdepth 5 -name backup.sh
/home/mad/test/backup.sh


En este ejemplo se buscara entre los niveles tres y cinco.

Mediante el parámetro -exec podemos ejecutar otros comandos a medida que se encuentran ficheros:

Código (bash) [Seleccionar]
mad@mad-laptop:~/test$ find ./Stuff -iname "SoCkeTs.c" -exec md5sum {} \;
d41d8cd98f00b204e9800998ecf8427e  ./Stuff/sockets.c


En este caso, se buscan un fichero llamado "SoCkeTs.c" y se le calcula el hash MD5.

Para invertir la búsqueda, se hace la siguiente manera:

Código (bash) [Seleccionar]
mad@mad-laptop:~/test$ find . -not -iname "sockets.c"
.
./punteros.c
./Stuff
./Stuff/pr0n.avi
./Stuff/biografia.txt
./Stuff/links.txt
./backup.sh
./punteros.cpp
./find_intro.sh
./paso_referencia.c
./Pilas_Colas.cpp


El comando anterior encuentra todos los ficheros cuyo nombre no es "sockets" y limitando la búsqueda
al directorio actual (mediante el punto .).

Una función muy útil en cuanto a auditorias de seguridad es la búsqueda de ficheros por permisos:

Código (bash) [Seleccionar]
mad@mad-laptop:~/test$ find . -perm -g=x -type f -exec ls -l {} \;
-rwxrwxrwx 1 mad mad 198 2011-07-28 20:49 ./find_intro.sh
-r-xr-xr-x 1 mad mad 0 2011-07-28 20:49 ./paso_referencia.c


El ejemplo de arriba busca todos los ficheros situados en el directorio actual y que tengan permisos de ejecución
para "el grupo".

Otra función bastante útil puede ser la búsqueda de ficheros vacíos:

Código (bash) [Seleccionar]
mad@mad-laptop:~/test$ find ~ -empty
/home/mad/.evolution/mail/local/Outbox
/home/mad/.evolution/mail/local/Drafts
/home/mad/.evolution/mail/local/Sent
/home/mad/.evolution/mail/local/Templates.ibex.index.data
/home/mad/.evolution/mail/local/Templates
/home/mad/.evolution/mail/local/Sent.ibex.index.data
/home/mad/.evolution/mail/local/Outbox.ibex.index.data
/home/mad/.evolution/mail/local/Drafts.ibex.index.data
/home/mad/.evolution/calendar/config
/home/mad/.evolution/memos/config


Eso buscara todos los ficheros vacíos de la carpeta personal del usuario.

Podemos buscar los ficheros mas grandes del sistema:

Código (bash) [Seleccionar]
mad@mad-laptop:~/test$ sudo find . -type f -exec ls -s {} \; | sort -n -r | head -3
4 ./find_intro.sh
0 ./Stuff/sockets.c
0 ./Stuff/pr0n.avi


Eso buscara los tres ficheros mas grandes de la carpeta "this" o en la que estamos.

Usando la búsqueda por tipo podemos por ejemplo, buscar todos los ficheros ocultos:

Código (bash) [Seleccionar]
mad@mad-laptop:~/test$ find ~ -type f -name ".*"
/home/mad/.hgrc
/home/mad/.recently-used
/home/mad/.xvidcaprc
/home/mad/.scapy_history


Recuerdo que en Unix/Linux los ficheros ocultos tienen un punto delante del nombre, en este caso se buscan
todos los que empiezan por un punto, o sea, todos los ocultos.

Otra función bastante útil es la búsqueda de ficheros por tamaño:

Código (bash) [Seleccionar]
mad@mad-laptop:~/test$ sudo find ~ -size +10M

Encontrara todos los ficheros mayores de diez megas en la carpeta personal del usuario.

Para las operaciones que mas usamos, podemos crear un alias:

Código (bash) [Seleccionar]
mad@mad-laptop:~/test$ alias rmao="find . -iname a.out -exec rm {} \;"

Ese alias, al ejecutarlo, borrara todos los ficheros con el nombre "a.out" encontrados en el
directorio actual.


Este artículo está basado en 15 Practical Linux Find Command Examples.

En el blog del autor, podéis encontrar la segunda parte del artículo: 15 Awesome Linux Find Command Examples (Part2).


#532
¿Seguro que la IP del Punto de Acceso es 192.168.0.50? Intenta hacerle un ping.

¿Y tu IP, cuál es? Te recuerdo que para acceder al AP debes tener una IP que esté en el rango 192.168.0.1 - 192.168.0.254.
#533
Redes / Re: Problema raro con Señal Wifi
28 Julio 2011, 09:32 AM
Con algún programa como NetStumbler, inSSIDer o la suite aircrack-ng busca las demás redes wifi y los canales que utilizan.

Luego, en la configuración del router, elige un canal que esté siendo usado por otras redes. Todo dispositivo que trabaje en la banda 2.4GhZ creará interferencias.

Como última alternativa, cambia el dispositivo por uno que soporte 802.11n (Wifi N con 5GhZ) o cambiar la red por PLC.
#534
Para resolver nombres de dominio se usa un proceso llamado resolución de nombres.

Dentro de este subforo hay un taller con información al respecto: Servidor de Nombres de Dominio (DNS) (Teoría).

Si quieres investigar más, te recomiendo los RFC:

_RFC 1035 - Domain names - implementation and specification.
_DOMAIN NAMES - CONCEPTS AND FACILITIES.

Tanto Mozilla como Chrome son open-source, por lo que, puedes mirar su código fuente para aclararte las dudas.

_Mozilla Project.
_Chromium Project.
#535
Tengo instalado Photoshop CS3 en Windows Server 2008 y funciona perfectamente, no sé como será con las nuevas versiones CS4 y CS5.
#536
Ejecuta en consola:

net config server /hidden:yes


Ve al Panel de Control / Cambiar configuración de uso compartido avanzado / Despliegas las pestañas / Desactivar la detección de Redes.

Por último, puedes desactivar, en las propiedades de la Red, el Respondedor de detección de topologías de nivel ...

Después de reiniciar, tu equipo ya no debería verse en el mapa de red de Windows.
#537
Redes / Re: Duda con filtrado de MAC
27 Julio 2011, 00:23 AM
No (tampoco la MAC del router), solo la IP, headers que envía el navegador, sistema operativo, etc.
#538
Redes / Re: Duda con filtrado de MAC
26 Julio 2011, 23:55 PM
La respuesta rápida es no, no se puede bloquear el acceso a un servidor web desde internet por MAC.

Lo que puedes hacer es banear un rango de IP's, por ejemplo, si la IP del usuario es 89.65.15.14, bloqueas 89.65.15.%.
#539
Desarrollo Web / Re: Analizador Log´s Web
26 Julio 2011, 22:58 PM
Algunos enlaces:

[·] Apache Log file analyzer Using Awstats in Debian.
[·] Splunk.
[·] Webalizer.

Webalizer es bastante utilizado, creo que es justo lo que necesitas.
#540
Yo también lo veo bien, probado en Firefox, Chrome y InternetExplorer 9.

¿Será algo de la versión del navegador en Linux?