Programa informàtic per importar i exportar dades en bds MySQL (Matias Colli)


He realitzat aquest script que em sembla molt útil (Matias Colli):

#!/bin/bash
#
# Programa informàtic de còpia de seguretat d'una base de dades completa per a la taula específica
# escrit per Matias Colli 
#
mysql_command="/usr/bin/mysql"
mysqldump_command="/usr/bin/mysqldump"
mysqlcheck="mysqlcheck"
user="root"
password=""
db=""
tables=""
read -t 60 -p "Base de dades: " db
if [ -s $db ]; then
    echo "El teu has d'especificar una base de dades."
    exit 0
fi
read -t 60 -p "Usuari ($user): " newuser
if [ ! -s $newuser ]; then user=$newuser ; fi
read -t 60 -p "Contrasenya ($password): " password
if [ ! -s $password ]; then password=$newpassword ; fi
read -t 60 -p "Taules (separa amb l'espai): " tables
echo -e -n "Seleccioneu entre \n\t1 - Exportació (per defecte) \n\t2 - Importació \ Choice: "
read $action
if [ -s $action ]; then action=1 ; fi
read -t 60 -p "¿Exportem les dades també? (S/n): " nodata
if [ "$nodata" = "n" ]; then
    nodata="--no-data"
    echo "Només exportarà l'estructura de les taules."
else
    nodata=""
fi
if [ $action -eq 1 ]; then
    for table in $tables; do
        echo -n "\nExportació de taula $table of $db...."
        $mysqldump_command $nodata -u$user -p$password $db $table > $db-$table.sql
        echo "[done]"
    done
else
    if [ $action -eq 2 ]; then
        for table in $table; do
            echo -n "\nImportació de taula $table of $db..."
           $mysql_command $nodata -u$user -p$password $db < $db-$table.sql 
           echo "[fet]"
    else
        echo -e "\nNomés ha de triar entre 1 o 2. Adéu."
        exit 0
    fi
fi
read -t 60 -p "Vols reparar $db? (s/N): " repair
if [ "$repair" = "y" ] ; then
    $mysqlcheck --auto-repair --databases $db -u$user -p$password
fi

       done

exit 0

Configurar TS3100 en VMWare ESXi 5.x


  1. Click en el host del VMware ESXi 5.x en el que esté conectada la unidad de cintas y el changer.
  2. Click en la solapa Configuration -> Storage Adapters.
  3. En la lista de adaptadores que aparecen, identificar el controlador que tiene la unidad de cintas y el changer agregadas.
  4. Sobre la pestaña Details, anotar el Runtime Name de la unidad de cintas y el changer. Por ejemplo, vmhba2:C0:T1:L0.
  5. Seleccionar la maquina virtual que usará la unidad y hacer click en la solpa Summary -> Edit Settings....
  6. Click en la solapa Hardware -> Add..., seleccionar SCSI Device cuando aparezca la lista de dispositivos en cascada y luego click en Next.
  7. Seleccionar el dispositivo apropiado de la lista que aparecerá para el dispositivo SCSI.
  8. Seleccionar el Virtual Device Node que coincida con el Target del Runtime Name del dispositivo (obtenido en el punto 4). Los Virtual Device Nodes se registran como :. Por ejemplo, el Runtime Name vmhba2:C0:T1:L0 corresponde con el Virtual Device Node de (1:1), (2:1), o (3:1). Debido a que el Target es 1 (T1) el segundo parámetro es 1. Se aclara que, (0:1) también está disponible en la configuración. El problema es que generalmente ya está utilizado como disco virtual en la propia maquina virtual creada.

Probar un autochanger IBM TS3100 en UNIX/Linux

Para probar la unidad de cintas podemos utilizar el comando mt (control magnetic tape drive operation).
Esto funciona en UNIX (FreeBSD, OpenBSD, etc) y GNU/Linux (RHEL, Debian, Slackware, etc).

Sinopsis: mt [-h] [-f device] operation [count] [arguments...]
Ejemplo para una unidad de cintas IBM TS3100: mt -f /dev/IBMtape0 tell

Explicación de los parámetros más comunes del comando mt:

tell: (solo para unidades de cintas SCSI) Muestra el bloque actual de la unidad.
status: Muestra el estado actual con información de la unidad de cintas.

Antes que nada hay que ver si el módulo lin_tape (el oficial de IBM) está cargado (o si está con el nativo del sistema operativo):

# lsmod |grep lin_tape

Según el modulo que se esté ejecutando escribir:

Ejemplo con el modulo lin-tape:    # mt -f /dev/IBMtape0 status
Ejemplo sin el modulo lin-tape:    #  mt -f /dev/st0 status

Mismo caso para verificiar el estado del Changer:

Ejemplo con el modulo lin-tape:    # mt -f /dev/IBMchanger0 status

También debería estar cargado el modulo qla (# lsmod|grep qla)
Hay que ejecutar un tapeinfo, cat /proc/scsi/scsi, cat /proc/scsi/changer0 y ver la salida del dmesg.

Una salida correcta del dmseg es:

lin_tape version: 1.67.0
lin_tape major number: 247
Attached Tape Devices:
Number model SN HBA SCSI FO Path
0 ULTRIUM-TD1 5402870001 qla2xxx 1:0:0:1 NA

# ls -l /dev/IBMtape0
crw-rw-rw- 1 root root 247, 0 Apr 18 14:34 /dev/IBMtape0
# ls -l /dev/IBMchanger0
crw-rw-rw- 1 root root 247, 0 Apr 18 14:34 /dev/IBMchanger0

Y al llegar aquí, debería devolver algo:

# scsi_id --whitelisted --replace-whitespace --device=/dev/IBMtape0

Si no devuelve nada el último comando, algo está saliendo mal.

Agregar memoria SWAP en caliente

Supongamos que necesitamos agregar memoria swap en caliente a un equipo UNIX/Linux.

Estos son los pasos (en caso de necesitar agregar 10GB de SWAP):

1.- Crear el archivo vacío (con ceros) hasta ocupar el tamaño deseado (10 GB en el ejemplo, con el nombre moreswap):

# dd if=/dev/zero of=/moreswap bs=10M count=1024
1024+0 records in
1024+0 records out
10737418240 bytes (11 GB) copied, 185,624 s, 57,8 MB/s

2.- Formatear el nuevo archivo para ser utilizado con SWAP:

# mkswap /moreswap
mkswap: /moreswap: warning: don't erase bootbits sectors
        on whole disk. Use -f to force.
Setting up swapspace version 1, size = 10485756 KiB
no label, UUID=febd8838-d0e7-4212-9b9d-e62816431c47

3.- Activar la nueva memoria swap

# swapon /moreswap

4.-  Agregarla al inicio del sistema:

# echo "/moreswap swap swap defaults 0 0" >> /etc/fstab

Matías Colli
M.N A-120 COPITEC
RHCSA - GCBA

Instalando OpenBSD 5.0 con XFCE en 15 minutos (por Matias Colli)

Instalando OpenBSD 5.0 con XFCE en 15 minutos

por Matias Colli

Aclaración: La guía oficial está disponible en http://www.openbsd.org/faq/index.html

Un instalación típica de OpenBSD podría ser la siguiente:

“Do you expect to run the X Window System?” : yes
“Do you want the X Window System to be started by xdm(1)?” : no

“Setup a user?” : matias

A continuación se nos pedirá particionar el disco. Generalmente, el modo por defecto (a) hará automágicamente todos las particiones y slices (rodajes) según nos convenga. Luego, de instalado el sisitema debemos reiniciar.

# reboot

Lo primero, luego de reiniciado el sistema, sería agregar al archivo profile del usuario administrador la ruta de descarga de los paquetes oficiales del proyecto:

# echo "export PKG_PATH=http://ftp.openbsd.org/pub/OpenBSD/5.0/packages/`machine -a`/" >> .profile

Lo primero sería agregar un usuario normal para ingresar al sistema. Si no se ha creado al momento de instalarse el sistema, la sintaxis sería:

# usermod -G wheel matias
Donde pepe es el nombre de usuario que será agregado al grupo wheel, que es al que pertenece el root (usuario administrador).
Para instalar el gestor de ventanas XFCE4 debemos escribir como root:

# pkg_add -v gamin xfce4-session xfce-utils xfdesktop xfconf xfce4-mixer xfce4-settings xfce4-panel xfce4-terminal xfce4-places xfwm4 xfwm4-themes

Adicionalmente, podemos descargar paquetes adicionales para un completo funcionamiento del sistema.
La lista de paquetes puede ser obtenida de: ftp://ftp.openbsd.org/pub/OpenBSD/5.0/packages/i386/index.txt

A modo de ejemplo podemos instalar los siguientes:

gamin 
xfce4-session 
xfdesktop 
xfconf 
xfce4-mixer 
xfce4-settings 
xfce4-panel 
xfce4-terminal 
xfce4-places 
xfwm4 
xfwm4-themes
xfce-utils
xfce4-appfinder
xfce4-battery
xfce4-clipman
xfce4-cpugraph
xfce4-dev-tools
xfce4-dict
xfce4-diskperf
xfce4-fsguard
xfce4-genmon
xfce4-icon-theme
xfce4-mailwatch
xfce4-mixer
xfce4-modemlights
xfce4-mount
xfce4-mpc
xfce4-netload
xfce4-notes
xfce4-notifyd
xfce4-panel
xfce4-places
xfce4-power-manager
xfce4-quicklauncher
xfce4-screenshooter
xfce4-session
xfce4-settings
xfce4-smartbookmark
xfce4-systemload
xfce4-taskmanager
xfce4-terminal
xfce4-time-out
xfce4-verve
xfce4-wavelan
xfce4-weather
xfce4-wmdock
xfce4-xkb
xine-ui
xmix
xmms
xmms-mp3
xmms-smpeg
xmms-vorbis
xmms-xf86audio
xmms-wavpack
xpdf
xpdf-utils
xpaint
xv
zap
amsn
apache-httpd
apachetop
arping
arpcatch
aircrack-ng
wget
bsd-airtools
bsdiff
bzip2
cabextract
cdplayer
cadaver
cdparanoia
cdrtools
chromium
dnstop
dnstracer
dumpmpeg
eog-plugins
fedora_cups
firefox
firefox-i18n-es-AR
flash
fluxbox
gecko-mediaplayer
get_flash_videos
gimp
gimp-lqr-plugin
gtk-xfce-engine
mac-robber
mac
mixer.app
mousepad
mplayer
mpg123
mpg321
mysql-client
nautilus
nautilus-evince
nautilus-open-terminal
nautilus-sendto
nbtscan
nessus-core
nessus-plugins
notification-daemon-xfce
nmap
nmap-zenmap
p0f
rdesktop
rsync
thunar
thunar-archive
thunar-media-tags
thunar-thumbnailers
thunar-vcs
thunar-vfs
thunderbird
thunderbird-i18n-es-AR
wget
x11vnc
xbill
xarchiver
etherape
eterm
epdfview
eog
eog-plugins
tpwireless
wpa_supplicant

por Matias Colli

Para instalarlos, bastará con copiar los nombres de todos los paquetes tal como figuran arriba en el archivo packages (vi packages) dentro del directorio del root y luego, ejecutar:

# for package in $(cat packages); do pkg_add -v $package; done

Para que el XFCE funcione correctamente debemos activar el demonio dbus escribiendo:

echo "rc_scripts=\"dbus_daemon\"" >> /etc/rc.conf.local

Si queremos activar el XDM como gestor X:

# echo "xdm_flags=\"\"" >> /etc/rc.conf.local

Para iniciar el entorno X Window con XFCE con el usuario creador debemos ejecutar:

# su - pepe
$ echo startxfce4 >.xinitrc 
$ echo startxfce4 >.xsession 
$ startx

Con esto funcionará el XFCE desde la línea de comandos y al inicio del sistema a través del XDM.
No olvidemos actualizar la base de datos del locate mediante:

# /usr/libexec/locate.updatedb

Por último, si queremos mantener actualizados los paquetes que hemos instalado, debemos ejecutar periódicamente:

# pkg_add -v -u -i

El parámetro v es de verbose, para mostrar la salida en pantalla. El parámetro u es para actualizar, mientras que el parámetro i es para activar el modo interactivo, permitiendonos a nosotros decidir en caso de ambigüedades y/o conflictos de versiones entre los paquetes y/o dependencias.

Si te gusta el hacking ético (seguridad en redes):

# pkg_add -v hydra py-medusa nmap john aircrack-ng

Listo! Disfruta del hacking en un sistema operativo hecho por hackers y para hackers...


Glosario:
Demonio: Proceso que se ejecuta en segundo plano o background, invisible al usuario.
Hacker: Entusiasta informático, hábil programador.



Cómo capturar paquetes en placas de red 802.11

por Matias Colli
1. Debemos configurar el adaptador inalámbrico 802.11 en modo monitor. Para capturar paquetes recordemos no asociar la placa a ningún AP (punto de acceso) y/o dirección IP. Previo a la captura, debemos ejecutar el comando ifconfig para obtener el canal y el dominio (nwid) del punto de acceso objetivo (reemplazando re0 por la marca de nuestro dispositivo 802.11):

ifconfig re0 scan

2. Asociar el dispositivo al canal y al dominio:


ifconfig re0 chan 6 ifconfig re0 nwid TheAP ifconfig re0 mediaopt monitor 
ifconfig re0 up

3. En otra ventana de terminal, debemos ejecutar el programa de captura de paquetes, de la siguiente manera:

tcpdump -tttt -i re0 -y IEEE802_11 -w wifi.cap

Luego de unas cuantas horas podremos analizar el archivo de salida (wifi.cap) para descifrar el tráfico con la suite aircrack-ng disponible en la versión 5.0 de OpenBSD. No olvidemos que al menos hasta la versión 5.0, OpenBSD no soporta la versión N del protocolo 802.11.

Cómo instalar un Windows 7 virtualizado en OpenBSD

por Matias Colli
1. Expandir el límite de memoria RAM:


ulimit -d 2000000

2. Permitir el acceso de usuario normal al controlador de CD:
sudo chmod 666 /dev/cd0a 
sudo chmod 666 /dev/cd0c
3. Creación del disco virtual en formato qcow2 (el más flexible) de 100GB de espacio:


qemu-img create -f qcow2 win7.qcow2 100G
Formatting 'win7.qcow2', fmt=qcow2 size=107374182400 encryption=off cluster_size=0

4. Instalación de Windows 7 desde el CD con 512 de memoria RAM:

qemu -hda win7.qcow2 -cdrom /dev/cd0a -boot d -net nic -net user -m 512 -localtime

Cómo activar sudo en OpenBSD

por Matias Colli
Ejecutar como root el comando visudo y descomentar la siguiente línea:

%wheel ALL=(ALL) NOPASSWD: SETENV: ALL

Esto significa que todos los usuarios que estén en el grupo wheel (usermod -G wheel usuario).


Cómo recuperar la contraseña de administrador (root) en OpenBSD:


por Matias Colli

Si perdiste el password de root, no desesperes, resetearlo=hackearlo es muy simple.
Aclaración: Esto puede utilizarse con distintos fines recomiendo solo fines nobles.
Basicamente, consisten en 4 pasos:

1) At boot> bootear en modo single user:

boot> boot -s
...
Next you will see a message as follows:

Enter pathname of shell or RETURN for sh:
Just hit [Enter] key to load sh shell.

2) Montar los principales sistemas de archivos con permisos de escritura (y lectura):

# mount -uw /
# mount /usr

3) Cambiar la contraseña:

# passwd

4) Sincronizar el sistema de archivos y/o reiniciar:

Presionando CTRL+D booteas el sistema en modo multiuser o sino simplemente reiniciando:

# reboot



Cómo cambiar el fondo de pantalla del XDM (gestor de inicio de sesión en OpenBSD):

por Matías Colli
Ahí que editar el archivo de inicio de XDM:


$ sudo vim /etc/X11/xdm/Xsetup_0 

y agregarle en la línea 3 el comando para configurar el background, de modo que quede así:


#!/bin/sh
# $OpenBSD: Xsetup_0,v 1.3 2010/03/28 09:33:02 matthieu Exp $
/usr/local/bin/xv -root -quit -max /home/nightcrawler/Images/openbsd_code.jpg &

siendo /home/nightcrawler/Images/openbsd_code.jpg el nombre de la imagen en formato JPEG.


$ vim .vimrc   
:set background=dark
:syntax enable

Cómo cambiar personalizar en español el entorno X:

por Matias Colli

$ vim .xsession
PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/sbin:/usr/local/bin

export PATH
export LC_ALL=
export LANG="es_ES.ISO8859-15"
export LANGUAGE="es_ES.ISO8859-15"
export LC_TYPE="es_ES.ISO8859-15"
export LC_NAME="es_ES.ISO8859-15"
startxfce4

En la shell BASH:

$ vim .profile

PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/sbin:/usr/local/bin
PATH=${PATH}:$HOME/bin
export PATH
export LC_ALL=
export LANG="es_ES.ISO8859-15"
export LANGUAGE="es_ES.ISO8859-15"
export LC_TYPE="es_ES.ISO8859-15"
export LC_NAME="es_ES.ISO8859-15"
export PS1='$PWD$ '
#export PS1="\n\u@\H\n\w \\$ "
EDITOR=vi
export EDITOR
EXINIT='set autoindent'
export EXINIT
PAGER=more
export PAGER
TERM=xterm-color
export TERM
alias ls="ls -F"

Para que bash funcione correctamente con xfce-terminal, ejecutar:

$ ln -s .profile .bashrc


Cómo borrar los archivos core en OpenBSD:

por Matias Colli
Comando para borrar los molestos core dumps (volcados de memoria), tomando como ejemplo el borrado del directorio home del usuario matias:


find /home/matias/* -name *.core -exec rm {} \;

Cómo ejecutar binarios de GNU/Linux en OpenBSD:


1. Activar el soporte de compatibilidad con Linux:

sysctl -w kern.emul.linux=1

El parámetro -w hará que el cambio sea permanente.

2. Instalar el paquete de Fedora base:

pkg_add -i fedora_base


Cómo configurar impresoras en CUPS:

por Matias Colli


Agregar CUPS (programa para configurar la impresora al inicio):

$ sudo vim /etc/rc.local
echo -n 'starting local daemons:'
if [ -x /usr/local/sbin/cupsd ]; then
        echo -n ' cupsd'; /usr/local/sbin/cupsd &
fi
echo '.'

Por ejemplo, para agregar una impresora Brother, ahí que descargar el driver del modelo requerido (Brother MFC-8480DN, HL5350DN) y agregarlo al servidor cups local.


Escrito por Matias Colli


Programa para importar/exportar datos en bds MySQL (matias colli)

Hice este script que me parecio muy útil (Matias Colli):

#!/bin/bash
#
# Program to backup an entire database or specific table
# written by Matias Colli
#
mysql_command="/usr/bin/mysql"
mysqldump_command="/usr/bin/mysqldump"
mysqlcheck="mysqlcheck"
user="root"
password=""
db=""
tables=""
read -t 60 -p "Database: " db
if [ -s $db ]; then
    echo "You must specify database."
    exit 0
fi
read -t 60 -p "User ($user): " newuser
if [ ! -s $newuser ]; then user=$newuser ; fi
read -t 60 -p "Password ($password): " password
if [ ! -s $password ]; then password=$newpassword ; fi
read -t 60 -p "Tables (separates with space): " tables
echo -e -n "Select beetween \n\t1 - Export (by default)\n\t2 - Import\nChoice: "
read $action
if [ -s $action ]; then action=1 ; fi
read -t 60 -p "Export data too? (Y/n): " nodata
if [ "$nodata" = "n" ]; then
    nodata="--no-data"
    echo "Only will export the tables structure."
else
    nodata=""
fi
if [ $action -eq 1 ]; then
    for table in $tables; do
        echo -n "\nExporting table $table of $db...."
        $mysqldump_command $nodata -u$user -p$password $db $table > $db-$table.sql
        echo "[done]"
    done
else
    if [ $action -eq 2 ]; then
        for table in $table; do
            echo -n "\nImporting table $table of $db..."
           $mysql_command $nodata -u$user -p$password $db < $db-$table.sql

           echo "[done]"

       done
    else
        echo -e "\nOnly must choise beetween 1 or 2. Bye."
        exit 0
    fi
fi
read -t 60 -p "Do you want to repair $db? (y/N): " repair
if [ "$repair" = "y" ] ; then
    $mysqlcheck --auto-repair --databases $db -u$user -p$password
fi