Translate

domingo, 25 de octubre de 2009

CONVERTIR VIDEO RMVB A AVI

Después de probar varias opciones para convertir vídeo RMVB a AVI, con el comando mencoder, la única forma que pude convertirlo fue la siguiente:

Primero:
Instalar el repositorio medibuntu de la siguiente forma:

sudo wget http://www.medibuntu.org/sources.list.d/$(lsb_release -cs).list --output-document=/etc/apt/sources.list.d/medibuntu.list

sudo apt-get -q update

sudo apt-get --yes -q --allow-unauthenticated install medibuntu-keyring

sudo apt-get -q update


Luego de instalar este repositorio instale los siguientes paquetes:

sudo apt-get install mencoder mplayer librte1 librte-dev non-free-codecs
Por ultimo baje el reproductor Real Player para Linux que baja con extensión bin (RealPlayer11GOLD.bin) al cual hay que darle permisos de ejecucion (chmod 755 RealPlayer11GOLD.bin) y por ultimo en /usr/local/codecs hice un links simbolico desde /opt/real/codecs/ donde se encuentra el archivo drvc.so el cual necesita para convertir el video, sino me probocaba el siguiente error:

csottile@smarcnet:~$ mencoder p-CrossingO778.rmvb -oac mp3lame -lameopts preset=128 -ovc lavc -lavcopts
vcodec=xvid -ofps 25 -of avi -o p-Crossing.avi
MEncoder 2:1.0~rc2-0ubuntu19 (C) 2000-2007 MPlayer Team
CPU: Intel(R) Core(TM)2 CPU T5200 @ 1.60GHz (Family: 6, Model: 15, Stepping: 6)
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.
success: format: 0 data: 0×0 – 0×1467c56d
REAL file format detected.
Stream description: Audio Stream
Stream mimetype: audio/x-pn-realaudio
[real] Audio stream found, -aid 0
Stream description: Video Stream
Stream mimetype: video/x-pn-realvideo
[real] Video stream found, -vid 1
Stream mimetype: logical-fileinfo
VIDEO: [RV40] 672×272 24bpp 23.000 fps 0.0 kbps ( 0.0 kbyte/s)
[V] filefmt:11 fourcc:0×30345652 size:672×272 fps:23.00 ftime:=0.0435
=================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
AUDIO: 44100 Hz, 2 ch, s16le, 64.1 kbit/4.54% (ratio: 8010->176400)
Selected audio codec: [ffcook] afm: ffmpeg (FFmpeg COOK audio decoder)
=================================================
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
===================================================
Opening video decoder: [realvid] RealVideo decoder
Error: /usr/lib/codecs/drvc.so: cannot open shared object file: No such file or directory
Win32 LoadLibrary failed to load: drvc.so, /usr/lib/win32/drvc.so, /usr/local/lib/win32/drvc.so
Error loading dll
ERROR: Could not open required DirectShow codec drvc.so.
Read the RealVideo section of the DOCS!
VDecoder init failed :(
Opening video decoder: [realvid] RealVideo decoder
Win32 LoadLibrary failed to load: drvc.dll, /usr/lib/win32/drvc.dll, /usr/local/lib/win32/drvc.dll
Error loading dll
ERROR: Could not open required DirectShow codec drvc.dll.
Read the RealVideo section of the DOCS!
VDecoder init failed :(
Opening video decoder: [realvid] RealVideo decoder
Error: /usr/lib/codecs/drv4.so.6.0: cannot open shared object file: No such file or directory
Win32 LoadLibrary failed to load: drv4.so.6.0, /usr/lib/win32/drv4.so.6.0, /usr/local/lib/win32/drv4.so.6.0
Error loading dll
ERROR: Could not open required DirectShow codec drv4.so.6.0.
Read the RealVideo section of the DOCS!
VDecoder init failed :(
Opening video decoder: [realvid] RealVideo decoder
Win32 LoadLibrary failed to load: drv43260.dll, /usr/lib/win32/drv43260.dll, /usr/local/lib/win32/drv43260.dll
Error loading dll
ERROR: Could not open required DirectShow codec drv43260.dll.
Read the RealVideo section of the DOCS!
VDecoder init failed :(
Opening video decoder: [realvid] RealVideo decoder
Error: /usr/lib/codecs/drvc.bundle/Contents/MacOS/drvc: cannot open shared object file: No such file or directory
Win32 LoadLibrary failed to load: drvc.bundle/Contents/MacOS/drvc, /usr/lib/win32/drvc.bundle/Contents/MacOS/drvc, /usr/local/lib/win32/drvc.bundle/Contents/MacOS/drvc
Error loading dll
ERROR: Could not open required DirectShow codec drvc.bundle/Contents/MacOS/drvc.
Read the RealVideo section of the DOCS!
VDecoder init failed :(
Cannot find codec matching selected -vo and video format 0×30345652.
Read DOCS/HTML/en/codecs.html!

Una vez echo este link simbolico, cree un script muy simple que lo llame convertervideo.sh la siguiente linea nada mas:

Opción 1:
mencoder -oac mp3lame -lameopts cbr=128 -ovc xvid -xvidencopts bitrate=1200 video.rmvb -o video.avi

Opción 2:
mencoder -oac mp3lame -lameopts cbr=128 -vf scale=640:272 -ovc xvid -xvidencopts bitrate=1200 -ofps 25 -of avi p-Proposl198.rmvb -o p-Proposl198.avi

le di permiso de ejecucion y lo ejecute y todo esta funcionando correctamente.

REFERENCIAS

:: Repositorio de Mediubuntu:
http://www.medibuntu.org/

:: Para que tenga en cuenta, esta el site de Mplayer donde explica muy bien que significa cada opcion del mencoder y es la siguiente:
http://www.mplayerhq.hu/DOCS/HTML/en/index.html

:: Sitio donde bajar el Real Player
http://spain.real.com/realplayer/other-versions/

:: Los blog's que me ayudaron para llegar a buen puerto:
http://linuxsix.blogspot.com/2008/11/convertir-rmvb-avi-en-gnu-linux.html
http://phyx.wordpress.com/2008/11/10/convertir-rmvb-a-avi-ubuntu/

martes, 18 de agosto de 2009

MYSQL: TIPS BASICOS

Crear usuarios
Para saber hay dos formas de crear usuarios, uno es haciendo que el usuario se acople al IP de tu pc, asiendo que solamente el usuario pueda conectarse desde esa pc solamente.

Si bien es mas seguro, se convierte en incomodo cuando por otras razones no tenemos una pc fija, y debemos conectarnos a nuestra base de datos, es por ello que el usuario debe crear con esa libertad.

Usuario administrador

Para crear un usuario administrador debemos utilizar la siguiente sentencia:

Usuario Admin con restricción de acceso:
Solo puede ingresar desde la pc que tenga la dirección IP: 192.168.1.2

mysql>GRANT ALL PRIVILEGES ON *.* TO admin@192.168.1.2 INDENTIFIED BY 'pswd' WITH GRANT OPTION;
Query OK, 0 rows affected (0.02 sec)


Usuario Admin sin restricción de acceso:

mysql>GRANT ALL PRIVILEGES ON *.* TO admin@'%' INDENTIFIED BY 'passwd' WITH GRANT OPTION;
Query OK, 0 rows affected (0.02 sec)


Usuario con privilegios
Sobre una sola Base de datos (ON namebase.* ):

mysql> GRANT select, insert, update, create, alter, delete, drop ON namebase.* TO users@'%' IDENTIFIED BY 'password';

Usuario sin privilegios:
Para crear un usaremos la sentencia:

mysql> GRANT USAGE ON *.* TO anonimo@'%' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.02 sec)


Referencias
GRANT: Permite crear cuentas de usuario MySQL y darles permisos, al mismo tiempo.
'%': Esto dice que puede el usuario admin acceder desde cualquier IP
ON: Permite privilegios en niveles globales: Database y Tablas
TO: Aqui se detalla el nombre del usuario y el enlace a la IP (Fijo o Movil)
IDENTIFIED BY: Etiqueta donde se coloca la password encerrada entre comillas simples.

domingo, 19 de julio de 2009

IPTABLES: USO PRACTICO

Definiciones previas

:: Iptables trabaja con tres tablas:

INPUT: Para conexiones entrantes
OUTPUT: Para conxciones salientes
FORDWARD: Para reenvió de paquetes a la red

:: La operaciones que podemos realizar con IPTABLES son:

Crear una nueva cadena o tabla:
iptables -N cadena (opciones)

Borrar una cadena:
iptables -X cadena (opciones)

Modificar políticas para una cadena pre-armada:
iptables -P cadena (opciones)

Listar las reglas de una cadena:
iptables -L cadena (opciones)

Vaciar las reglas de una cadena:
iptables -F cadena (opciones)

Resetear contadores de paquetes y bytes de todas las reglas de una cadena:
iptables -Z cadena (opciones)

:: Comandos que manipulan reglas de cadenas:
Agregar un nueva regla a una cadena: -A
Insertar un nueva regla en cierta posición de una cadena: -I
Reemplazar una regla de cierta posición de una cadena: -R
Borrar una regla a cierta posición de un cadena: -D
Borrar la primer regla que se corresponde en una cadena: .D

:: Parámetros de estos comandos:
Destino de paquetes: -j acción 
Donde acción puede ser DROP, ACCEPT o el nombre de otra cadena definida por el usuario

Origen del paquete: -s IP[/BASE]
Donde IP es una dirección 10.0.26.2 y /BASE puede ser la mascara de red expresada en CIDR osea 10.0.26.2/24, pero además /BASE puede ser otra dirección IP para definir un rango osea 10.0.26.2/10.0.26.24

Destino de Red de un paquete: -d IP[/BASE]
Al igual que -s, con la diferencia que esta regla es para los paquetes generados en nuestra red con destino IP[/BASE]

Protocolo de un paquete: -p PROTOCOLO (icmp, udp, tcp, etc).
Todos estos parámetros además pueden contener el símbolo "!" el cual tiene un efecto el cual sera distinto al que especifiquemos, un ejemplo es: -s ! localhost es cualquier paquete que no venga de localhost.

Reglas para utilizarlo mas específicamente

:: Filtrar paquetes desde cierta IP
Hay dos cosas a tener en cuenta IP se debe remplazar por una dirección real y acción por DROP, lo cual hará que los paquetes a esa IP sean descartados , y la otra acción es ACCEPT, haciendo que los paquetes sean aceptados por nuestro firewall:

iptables -A INPUT -s IP -j acción

:: Eliminar regla escrita
Cuando la regla creada ya deja de ser útil a nuestra conveniencia y queremos eliminarla debemos básicamente escribir lo mismo pero con la diferencia que en vez de la opción -A debemos usar -D

iptables -D INPUT -s IP -j acción

:: Filtrar paquetes hacia una IP
iptables -A OUTPUT -d IP -j acción

:: Filtrar el PING
iptables -D INPUT -p icmp -j DROP

:: Filtrar Port 139: NetBIOS Session (TCP), Windows File and Printer Sharing
ipables -A INPUT -i ppp0 -p TCP --dport 139 -j DROP

:: Filtrar TELNET:
iptables -t filter -A INPUT -p all -s red_local -d mi_ip --dport 23 -j ACCEPT
iptables -t filter -A INPUT -p all -s 0/0 -d mi_ip --dport -j DROP


:: Filtrar NIS
iptables -t filter -A INPUT -p all -s red_local -d mi_ip --dport 111 -j ACCEPT
iptables -t filter -A INPUT -p all -s 0/0 -d mi_ip --dport 111 -j DROP