Buscar y reemplazar texto en todos los archivos dentro de un directorio y todos los subdirectorios – TIP Linux

Si buscabas como reemplazar texto dentro de varios archivos en una sola linea de comando, has llegado a la web correcta. Muchas veces tenemos que buscar o hacer cambios a un texto determinado y para empezar no sabemos ni en cual archivo, documento o directorio puede estar.

Digamos que le cambiamos la dirección IP al servidor, o cambiamos de servidor web y es necesario hacer los cambios en todos los archivos de configuracion y los donde aparezca la IP del servidor anterior.

Para no estar buscando durante horas entre todos los archivos de nuestro servidor, les escribo aqui los distintos tips para reemplazar strings alfanumericos en linux.

  • Para reemplazar un texto o string cada vez que aparezca en los archivos:

~# find /path/directorio «*.txt» | xargs perl -pi -e ‘s/texto/reemplazo/g’

  • Para reemplazar la primera vez que aparezca el texto:

~# find /path/directorio «*.txt» | xargs perl -pi -e ‘s/texto/reemplazo/’

  • Para reemplazar todos los archivos dentro de un directorio:

~# for arg in `ls -C1`; do perl -pi -e ‘s/texto/reemplazo/g’; done;

Existe infinidad de combinaciones posibles utilizando el shell de la linea de comandos. Tomemos como ejemplo la primera busqueda:

~# for arg in `find /your/home/dir -name «*.txt»` ; do perl -pi -e ‘s/texto/reemplazo/g’ $arg; done;

Muchas veces solamente es necesario buscar un path o una cadena dentro de multitud de ficheros sobre todo en las migraciones, para ello usaremos los siguientes comandos:

grep Busca cadenas dentro de ficheros»» -n señala el nº de la linea donde está la cadena

Ejemplo: grep -n micadena *

Busqueda recursiva de una cadena dentro de multitud de ficheros:

grep -n micadena * -R

Juega al PRO 2010 (PES 2010) en Ubuntu / Linux

//img3.xooimage.com/files/c/5/4/pes2010_nosologeeks-da0d5c.jpg

Si quieres instalar esta la demo del Pro Evolution Soccer 2010 en tu Distribucion Ubuntu GNU/linux puedes seguir los siguientes pasos:

1. Instalar Wine, sino nada podriamos hacer.

2. Descarga y copia los archivos  d3dx9_36.dll y d3dx9_30.dll a la direccion /home/tu_usuario/.wine/drive_c/windows/system32 la descarga de estos archivos la puedes hacer desde dll-download.

3. Descarga el Demo del Juego, puedes hacerlo desde AQUÍ.

4. Instalar el Juego, puede que demore un poco.

5. Abre el settings.exe para que configures las opciones de resolucion, sonido, etc.

6. A jugar

Dentro de los errores que se observan el único es que el menú principal aparece distorsionado, pero el juego se ejecuta muy bien.

Katana – Recopilación de las mejores distribuciones Linux para la seguridad

//www.hackfromacave.com/pictures/katana_boot.gif

Katana es una súper herramienta que recopila las mejores distribuciones de seguridad informática en una sola, para después instarlas en una memoria USB y poder bootear con cualquiera de ellas en la computadora que queramos.

Con estas herramientas podremos obtener claves WEP de internet, asi como robar y violar contraseñas de windows XP / Vista entre muchas otras cosas.

Katana 1.0 incluye las siguientes distribuciones:

  • Backtrack 3
  • Backtrack 4 beta
  • the Ultimate Boot CD
  • Organizational Systems Wireless Auditor (OSWA) Assistiant
  • Slax 6
  • Ophcrack XP
  • Ophcrack Vista
  • Damn Small Linux
  • Damn Vulnerable Linux

Como instalar Katana en una memoria USB

Su instalación es muy sencilla solo tenemos que descargar el archivo, descomprimirlo dentro de nuestra memoria USB y luego ejecutamos el archivo boostinst.sh

Descarga Katana

Más información y sitio oficial de descargas – katana

Restablecer los permisos predeterminados en el directorio del virtualhost en Plesk

Síntomas

Algunos archivos y directorios del dominio han perdido sus permisos. Varios de ellos son propiedad del usuario “apache” o “root” de Apache.

Por ejemplo:

# ls -l /var/www/vhosts/blogofsysadmins.com/
total 48
drwx------ 5 apache     apache 4096 Mar 16 20:07 anon_ftp
drwx------ 2 root       psaserv 4096 Mar 16 20:07 bin
drwx------ 3 apache     apache 4096 Mar 16 20:07 cgi-bin
drwx------ 2 root       psaserv 4096 Aug  4 12:56 conf
drwx------ 2 root       psaserv 4096 Mar 16 20:07 error_docs
drwx------ 7 apache     apache 4096 Mar 16 20:07 httpdocs
drwx------ 7 apache     apache 4096 Mar 16 20:07 httpsdocs
drwx------ 2 root       psaserv 4096 Aug  4 12:56 pd
drwx------ 2 root       root    4096 Mar 16 20:07 private
dr-x------ 7 root       psaserv 4096 Mar 16 20:07 statistics
drwx------ 2 root       psaserv 4096 Mar 16 20:07 subdomains
drwx------ 2 root       psaserv 4096 Mar 16 20:07 web_users
~#

Cuando intento cargar archivos a través del Administrador de Archivos o de un cliente FTP, obtengo los errores «Permiso denegado» o «Acceso denegado«.

Resolución

Use la utilidad «vhostmng» para restablecer los permisos. El comando a ejecutar es el siguiente:

~# /usr/local/psa/admin/sbin/vhostmng --install-vhost --vhost-name=<domain name> --user-name=<username> --set-content-permissions

Donde <domain name> es el dominio donde deben restaurarse los permisos y <username> es el usuario FTP del dominio configurado en Parallels Plesk Panel en la página Dominios -> <domain name> -> Opciones de Alojamiento Web (versión 9.x) o Dominios -> <domain name> -> Configuración (versión 8.x).

El comando restaurará los permisos predeterminados en el directorio del virtualhost:

drwxr-x--- 5 ftp_user   psaserv 4096 Mar 16 20:07 anon_ftp
drwxr-xr-x 2 root       psaserv 4096 Mar 16 20:07 bin
drwxr-x--- 3 ftp_user   psaserv 4096 Mar 16 20:07 cgi-bin
drwxr-x--- 2 root       psaserv 4096 Aug  4 12:56 conf
drwxr-xr-x 2 root       psaserv 4096 Mar 16 20:07 error_docs
drwxr-x--- 7 ftp_user   psaserv 4096 Mar 16 20:07 httpdocs
drwxr-x--- 7 ftp_user   psaserv 4096 Mar 16 20:07 httpsdocs
drwxr-x--- 2 root       psaserv 4096 Aug  4 12:56 pd
drwx------ 2 ftp_user   root    4096 Mar 16 20:07 private
dr-xr-x--- 7 root       psaserv 4096 Mar 16 20:07 statistics
drwxr-xr-x 2 root       psaserv 4096 Mar 16 20:07 subdomains
drwxr-xr-x 2 root       psaserv 4096 Mar 16 20:07 web_users

Desactivar servicio Mail por dominio en Plesk

Es fácil, si teneis que desactivar el servicio Mail en algun dominio por cualquier causa y por el panel de control web de Plesk es imposible, aqui teneis el comando de plesk para desactivar el servicio de mail en el dominio que querrais en Plesk

# /etc/init.d/psa stopall
# /etc/init.d/mysql start
# /usr/local/psa/bin/domain -u midominio.com -mail_service false