sábado, 13 de noviembre de 2010

Convertir archivos .mpg en archivos .avi

Para que esto funcione tenemos que tener varios programas instalados, vamos con la lista de instalaciones, ojo, como root:
:~# apt-get install mencoder
:~# apt-get install ffmpeg
:~# apt-get install w32codecs
:~# apt-get install devede

Luego de tener todos estos programas instalados, ejecutamos:
:~$ mencoder INPUT.mpg -ofps 25 -ovc xvid -oac mp3lame -lameopts abr:br=192 -srate 48000 -xvidencopts fixed_quant=4 -o OUTPUT.avi

sábado, 30 de octubre de 2010

Convertir archivos .rmvb en archivos .avi de DivX

Si querés ver un video que bajaste de internet en formato RMVB en un tu reproductor de DVD de mesa, tenés que pasarlo, por ejemplo, a un formato como el DIVX, así que acá muestro como.

Para que esto funcione tenemos que tener varios programas instalados, vamos con la lista de instalaciones, ojo, como root:
:~# apt-get install mencoder
:~# apt-get install ffmpeg
:~# apt-get install w32codecs
:~# apt-get install devede

Luego de tener todos estos programas instalados, ejecutamos:
:~$ mencoder -oac mp3lame -lameopts cbr=128 -ovc xvid -xvidencopts bitrate=1200 video_entrada.rmvb -o video_salida.avi
y listo..., ahi tenemos el archivo .avi de DIVX perfectamente convertido, para verlo en el DVD de mesa o portátil.

Si te gusta hacerlo en el Entorno Gráfico, lo podemos hacer con Avidemux, y le damos las siguientes propiedades:
Audio:
mp3 (lame) ó vorbis
Video:
Vídeo: MPEG-4 ASP (Xvid), o MPEG-4 ASP (lavc)
Formato:
AVI

sábado, 28 de agosto de 2010

ls y más ---- Conocés la edad....

... de tu versión de Linux instalada, mirá que fácil:

:~$ ls -lct /etc | tail -1 | awk '{print $6, $7, $8}'
y te devuelve algo como esto:
2009-03-21 01:59 motd

Lindo Tip

viernes, 9 de julio de 2010

lshw ---- Querés hacer un...

... ls y que este te devuelva mucha, pero mucha info sobre tu hardware???, mirá:

En consola escribimos:
~$ sudo lshw

Como es damasiada la info recibida, es medio complicado leerla en la consola directamente, pero facilmente podemos pasarla a un archivo y leerla después de forma mucho más sencilla.

Nuevamente, en consola, escribimos:
~$ sudo lshw > HardInfo.txt
o bien
~$ sudo lshw -html > HardInfo.html ; firefox --new-tab HardInfo.html
y lo la leemos con el Firefox muy facilmente.

Como siempre digo, para saber más sobre lshw:
:~$ man lshw

martes, 29 de junio de 2010

Inventario del equipo...

... desde la consola.

Con solo 3 comandos cortos, podemos tener un inventario completo de nuestro equipo, veamos:

Para la info de los procesadores:
~$ cat /proc/cpuinfo

Para la info de la memoria:
~$ free -t

Para la info de los discos montados:
~$ df -hT

Para saber que distro tenemos instalada:
~$ lsb_release -a

Para conocer las IPs:
~$ ifconfig

lunes, 7 de junio de 2010

samba+Ubuntu Server 10.04 ---- Te pasó...

... que hiciste un cambio en /etc/samba/smb.conf, intentaste reiniciar los servicios de samba conel reconocido sudo /etc/init.d/samba restart , y te entregó un "hermoso":

sudo /etc/init.d/samba: command not found !!!!!!!!!!

Tranquilo, por acá encontré la solución:
sudo /usr/sbin/service smbd restart
sudo /usr/sbin/service nmbd restart

viernes, 4 de junio de 2010

lsb-release ---- Luego de ...

... hacer mi primera instalación de Ubuntu Server, de la cual quedé muy conforme siempre, se me presentó la posibilidad de tener que actualizar la versión.
Entonces me pregunté..., sin un entorno gráfico como hago?? Fácil...
Si, fácil si tenemos conexión a internet en ese servidor. Siendo así, ejecutamos:

siempre como root:
-:~# aptitude install update-manager-core
luego, editar el fichero:
-:~# vi /etc/update-manager/release-upgrades
y verificar esta línea:
-Promt=normal
si así se encuentra, no tocarla, si nó, modificarla para que así quede.

luego ejecutamos:
-:~# do-release-upgrade
Nos hará algunas preguntas, pero en un ratito con tendremos la versión actualizada de nuestro Ubuntu Server

para verificar que la versión quedó confirmada, escribimos:
-:~# cat /etc/lsb-release

evolution ---- Ya hiciste....

... el back-up semanal de tu correo???, no??, ok..., y sabés que se puede hacer facilmente por consola??, no??, mirá:

Para realizar un back-up completo de evolution, le damos los siguientes comandos:
-:~$ gconftool-2 –-shutdown
-:~$ evolution --force-shutdown
-:~$ cd $HOME
-:~$ tar czf /home/usuario/BK/evolution-backup.tar.gz --exclude=.evolution/mail/imap .evolution .gnome2_private/Evolution
-:~$ gconftool-2 --dump /apps/evolution > /home/usuario/BK/evolution_setting.xml

Para restaurar el back-up, tiramos los siguientes comandos:
-:~$ gconftool-2 --shutdown
-:~$ evolution --force-shutdown
-:~$ tar xzf /home/usuario/BK/evolution-backup.tar.gz
-:~$ gconftool-2 --unload evolution_setting.xml
-:~$ gconftool-2 --load /home/usuario/BK/evolution_setting.xml

setxkbmap ---- Con Lubuntu 10.04....

... me encontré con el "inconveniente" de NO poder configurar el language de la disposición del teclado.
Recorriendo un poco la web dí con este comando que lo hace por nosotros.

:~$ setxkbmap -model pc105 -layout latam
y listo!!!, ya tenemos la nueva disposición del teclado requerida
Si necesitas otras versiones, donde se lee latam, le puede indicar es, us, us_intl, it, etc., etc., etc.

El problema es que cuando reinicias el equipo, la distribución vuelve al estado de la instalación, entonces, para esto editamos el sigueinte archivo:
sudo vi /etc/xdg/lxsession/Lubuntu/autostart
y en el final, agregamos:
@setxkbmap -model pc105 -layout latam

Como siempre digo, para saber más sobre setxkbmap:
:~$ man setxkbmap

history ---- Te interesaría saber...

... cuantas veces tirás los comandos más usados en consola????
Bueno, con este comando lo sabés:

:~$ history | awk '{print $2}' | sort | uniq -c | sort -rn | head
y nos entrega como resultado algo así:
98 ls
93 ssh
70 cd
50 sudo
50 exit
28 screen
22 rsync
19 clear
18 nmblookup
10 du


Nada..., saber que se pueden mezclar todos esos comandos para tener ese resultado que puede servir o no, pero es útil.

Agradecimiento para el Taringuero jjm66 por compartir sus conocimientos:
http://jm5g8.tk

viernes, 14 de mayo de 2010

ps y kill ---- Necesitas terminar procesos....

... en otra máquina o server, incluso remotamente???

Dale:
Para esto tenemos que usar un par de comandos. El Comando ps con el agregado de -ef nos dá en forma de listado, todos los procesos lanzados.
:~$ ps -ef
y nos devuelve algo así:
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 May13 ? 00:00:00 /sbin/init
root 2 0 0 May13 ? 00:00:00 [kthreadd]
root 3 2 0 May13 ? 00:00:00 [migration/0]
gabriel 17420 1 0 11:01 ? 00:00:12 skype
gabriel 18942 1 0 10:00 ? 00:00:02 empathy


También podemos lanzarlo así: do ps con el agregado de -ef nos dá en forma de listado, todos los procesos lanzados.
:~$ ps aux
y nos devuelve algo así:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 2612 1012 ? Ss May13 0:00 /sbin/init
root 2 0.0 0.0 0 0 ? S< May13 0:00 [kthreadd] gabriel 17420 0.6 2.3 199388 47840 ? Sl 11:01 0:12 skype gabriel 18942 0.0 0.4 76040 9100 ? S 10:00 0:02 empathy


Teniendo todos estos datos entregados por el comando ps, y como necesitamos detener un proceso, tenemos que utilizar el comando kill, para esto escribimos:
:~$ kill [Número_de_PID]
y esto detendrá el proceso.

También podemos utilizar el comando pkill que nos dá la posibilidad de detener los procesos por medio del nombre del comando, para esto escribimos:
:~$ pkill [Nombre_de_COMMAND] ó :~$ pkill [Nombre_de_CMD]
y esto detendrá el proceso.

Si queremos conocer los procesos disparados por los distintos usuarios que esten utilizando el server o la terminal, ejecutamos:
:~$ ps -U [nombre_de_usuario]
y nos devuelve algo así:
PID TTY TIME CMD
1 ? 00:00:00 init
2043 ? 00:00:00 proftpd
2124 ? 00:00:00 apache2


Y para matar una sesión, remota o local, ejecutamos
:~$ pkill -U [nombre_de_usuario]

Y como siempre digo, para saber más sobre el comando ps:
:~$ man ps, también :~$ man kill

lunes, 10 de mayo de 2010

mencoder ---- Girar videos....

... No te pasó nunca que creás un video con una cámara de fotos, y cometés el error de girar la cámara??, no??, seguro??...., bueno, a mi, SI. Muchas veces....

Entonces..., para girar un video de forma senciila se puede usar mencoder, nada más, ni nada menos.

Para poder hacerlo, tenemos que ejecutar:
:~$ mencoder -vf rotate=1 -oac copy -ovc lavc entrada.avi -o salida.avi
Con -vf podemos añadir filtros con los que procesar el vídeo. En este caso añadimos un filtro rotate (rotar) para girar el vídeo. El número que sigue a rotate es un parámetro que indica si queremos rotar 90 grados e invertir (0), que es el comportamiento por defecto; rotar 90 grados (1), rotar 90 grados en sentido antihorario (2) o rotar 90 grados en sentido antihorario e invertir (3).

Sencillo, y muy útil.

Fuente:
http://mundogeek.net/archivos/2008/05/13/como-girar-un-video/

lunes, 26 de abril de 2010

repositorios lentos ---- Instalaste....

... chrome o chromium y los repositorios se actualizan muy lentamente???, bueno, aquí la solución, pero ojo, con permisos de root:
:~$ echo "Acquire::http:: Pipeline-Depth "0";" | sudo tee -a /etc/apt/apt.conf.d/90localsettings

Sin más..., no se por qué sucede ni por qué esto lo arregla, eso es tema de otra investgación, pero por el momento, esto acelera los repos.

miércoles, 14 de abril de 2010

xorg ---- Solución a...

... Solución a Failed to parse existing X config file ‘/etc/X11/xorg.conf’!

Es muy sencillo, vamos a la consola:
:~$ sudo -s

y le damos la contraseña que nos pide de superusuario..., ah..., no les dije..., si no tienen permisos de super usuarios, root, no podemos modificarlo. Sigamos:
-En la siguiente carpeta, tenemos el archivo de configuración xorg
:~# cd /etc/X11

-guardamos, por las dudas, el archivo actual xorg.conf
:~# sudo mv xorg.conf xorg.conf.bk00

-y ejecutamos
:~# nvidia-xconfig

-luego, vamos a la carpeta:
:~# cd /etc/X11

-y nos aseguramos de eliminar el xorg.conf que no nos sirve:
:~# rm xorg.conf

-luego ejecutamos
:~# gksudo nvidia-settings
y configuramos la pantalla como querramos.
Finalmente, hacemos click en "Save to X Configuration File", y en la caja de texto vacía que nos aparece escribimos o pegamos:
/etc/X11/xorg.conf

Guardamos y listo. Configurado y guardado.

Agradeciendo:
Fuente http://www.crackmen.com/blog/2009/11/30/solucion-a-failed-to-parse-existing-x-config-file-etcx11xorg-conf/

lunes, 12 de abril de 2010

nast ---- Necesitás saber...

... con quien estás compartiendo la red??

Con nast tenés para empezar. Pero lo primero es lo primero:
:~$ sudo aptitude install nast

y luego:
:~$ sudo nast -m

Como siempre digo, para saber más sobre nast, dale:
:~$ man nast

viernes, 19 de marzo de 2010

mount umount ---- Montar....

... discos secundarios o unidades compartidas.

Vamos por partes.
Si tenemos un disco secundario, debidamente formateado y listo para usar, y queremos montarlo para poder usarlo, ejecutamos:
:~$ sudo mount /dev/sdaX /Carpeta/Donde/Montar
donde "X" es el número asignado a ese disco que estamos montando.

Ahora, si queremos montar una unidad compartida en otro terminal, por supuesto teniendo samba debidamente instalado y configurado, ejecutamos:
:~$ sudo mount //IpDelServer/NombreDeCarpetaCompartida /Carpeta/Donde/Montar -o username=NombreUs, password=xxxxxx, dmask=700, fmask=700

Para desmontar cualquier unidad que tengamos montada, ejecutamos:
:~$ sudo umount /Carpeta/Donde/Montar

Como siempre digo, para conocer más sobre mount y umount, ejecutamos:
:~$ man mount
y
:~$ man umount

mkisofs y dd ---- Crear imágenes .iso...

... desde la consola con el comando mkisofs, es sencillo y muy rápido.

Para crear una imagen iso de una carpeta, ejecutamos:
:~$ mkisofs -r -o /home/user/temp/ArchivoDestino.iso -V TituloDelArchivo /home/user/debs/*.*

Si queremos crear una imagen iso de una CdROM, y desde la consola, podemos utilizar dd o incluso cat, por ejemplo:
-con dd
:~$ dd if=/dev/cdrom of=/home/user/tmp/destino.iso
-con cat
:~$ cat /dev/cdrom > /home/user/tmp/destino.iso

Luego con las imágenes iso creadas, las podemos quemar en un CD o DVD con los programas que utilizamos normalmente.

.iso ---- Montar Imagenes .iso...

..., directamente, desde la consola, como??

en primer lugar, tenemos que crear una carpeta en la cual podremos montar la imagen .iso que tenemos grabada. Para esto, ejecutamos:
:~$ sudo mkdir /media/iso
la carpeta indicada fue elegida aleatoriamente, pueden crear la que sea y donde sea, mientras tengan las permisos correspondientes

luego, ejecutamos el siguiente comando:
:~$ sudo modprobe loop
realmente, no tengo la menor idea que hace esto, así que debo la explicación algo más detallada de estos comandos

Y por último, montar el archivo:
:~ $ sudo mount -t iso9660 -o loop /home/user/Descargas/archivo.iso /media/iso
Realizado este paso, podemos sin ningún problema, utilizar los archivos que se encontraban en ese archivo .iso como si fuera una carpeta más de solo lectura.

Para desmontar este archivo .iso, ejecutamos:
:~$ sudo umount /media/iso

screen ----- Múltiples Terminales...

... Tal cual.
screen nos permite, desde una terminal real, contar con múltiples "consolas virtuales" o mejor dicho, múltiples sesiones de consola.
Desde ya, podemos movernos entre ellas hasta incluso cerrar la terminal para luego volver a tomarla, algo muy útil cuando se tiene que disparar procesos y tareas de larga duración.

En primer lugar, para contar con screen, ejecutamos:
:~$ sudo aptitude install screen

Una vez instalado screen, ejecutamos:
:~$ screen
Luego de una pantalla de bienvenida y posterior "Enter", nos queda una consola o sesión virtual a disposición.

Si disparamos una tarea o proceso y necesitamos hacer otra cosa en el durante, podemos ejecutar distintas combinaciones de teclas, por ejemplo:
-Si necesitamos otra consola o sesión virtual:
ctrl+a c
teniendo la tecla "CONTROL" presionada, tecleamos: "a", y luego "c"
-Para movernos entre estas dos consolas virtuales abiertas, presionamos:
ctrl+a n vamos a las consolas anteriores
ctrl+a p vamos a las consolas posteriores

En el caso de tener una consola virtual trabajando, y queremos dejarla así para continuar nosotros con otras cosas, tecleamos:
ctrl+a d la consola entra en Detached y luego podemos volver a retomarla.
Teniendo una consola trabajando en detached, podemos necesitar otra, para esto, volvemos a ejecutar:
:~$ screen y disparamos la tarea que necesitemos. Para dejarla trabajando y seguir con nuestras cosas, volvemos a teclear: ctrl+a d y ya tenemos dos consolas en condicion de Detached.

Si quisiéramos recuperar una de las consolas virtuales que tenemos en Detached, ejecutamos:
:~$ screen -r , esto para el caso de que tengamos una solo consola o sesión virtual abierta.

Para ver cuantas consolas virtuales tenemos abiertas, ejecutamos:
:~$ screen -list o :~$ screen -ls
Este comando, nos devolverá algo como esto:
There are screens on:
29001.pts-0.Host (19/03/10 13:39:15) (Detached)
28921.pts-0.Host (19/03/10 13:39:07) (Detached)
2 Sockets in /var/run/screen/S-user>

Los números que se encuentran encabezando cada registro que nos devuelve ese comando, son los números identificadores de cada consola virtual. Si quisiéramos recuperar una de las consolas en particular, ejecutamos:
:~$ screen -r N donde N, es el número identificador de la consola que queremos recuperar.

Para salir de las consolas o sesiones virtuales, ejecutamos:
:~$ exit , o bien tecleamos: ctrl+c.

Como siempre digo, para saber mas sobre screen, ejecutamos:
:~$ man screen

miércoles, 17 de marzo de 2010

permisos ---- Manejo de Permisos

Para asegurarnos la privacidad de nuestros documentos y carpetas, como así también darles seguridad, Linux nos dá la posibilidad de manejar distintos niveles de permisos, para esto contamos con:
Permisos a nivel de Propietario
Permisos a nivel de Grupo
Permisos a nivel de Otros Usuarios


Los permisos a asignar son los:
r = Lectura
w = Modificable
x = Ejecutable


Para administrar estos permisos, como así también la "titularidad" de los archivos y carpetas, contamos con los siguientes comandos:
chown
chgrp
chmod

Para ver más sobre manejo de permisos, o mejor dicho, para aprender de que se trata el manejo de permisos: http://mbu8i.tk

Algunos ejemplos:
-Para darle titularidad a un archivo en particular, ejecutamos:
:~# chown NombreUsuarioDueño Archivo.ext
y si, además quisiéramos modificarle el grupo a este archivo, ejecutamos:
:~# chown NombreUsuarioDueño:NombreGrupo Archivo.ext
si el dueño que queremos modificar, son de una carpeta y su contenido, ejecutamos:
:~# chown -R NombreUsuarioDueño /home/usuario/NombreCarpeta
el "-R" hace recursiva la orden, es decir, que modifica también todo su contenido.
Por lo tanto, para cambiar dueño y grupo de una carpeta, ejecutamos:
:~# chown -R NombreUsuarioDueño:NombreGrupo /home/usuario/NombreCarpeta

-Para cambiar solo el grupo de un archivo o carpeta en particular, ejecutamos:
:~# chgrp NombreGrupo Archivo.ext
para el caso de una carpeta y su contenido:
:~# chgrp -R NombreGrupo /home/usuario/NombreCarpeta

-Para cambiar los permisos de un archivo en particular, ejecutamos:
:~# chmod 777 Archivo.ext
para el caso de una carpeta y su contenido:
:~# chmod -R 777 /home/usuario/NombreCarpeta
de esta forma queda con permisos de lectura, modificación y ejecución, y para todos los usuarios del sistema.
si queremos que solo nuestro grupo de trabajo, claro está que además de nosotros, puede leer, modificar y hasta ejecutar este archivo:
:~# chmod 770 Archivo.ext
para el caso de una carpeta y su contenido:
:~# chmod -R 770 /home/usuario/NombreCarpeta
y finalmente, si queremos asegurarnos que solo nosotros podemos manipular ese archivo o carpeta, ejecutamos:
:~# chmod 700 Archivo.ext
para el caso de una carpeta y su contenido:
:~# chmod -R 700 /home/usuario/NombreCarpeta
si queremos que nuestro archivo o carpeta, tenga permisos de lectura y escritura esclusivos para nosotros, ejecutamos:
:~# chmod 600 Archivo.ext
para el caso de una carpeta y su contenido:
:~# chmod -R 600 /home/usuario/NombreCarpeta
y para el caso de sólo lectura, ejecutamos:
:~# chmod 400 Archivo.ext
para el caso de una carpeta y su contenido:
:~# chmod -R 400 /home/usuario/NombreCarpeta

Como mencionaba antes, para saber más sobre permisos:
http://mbu8i.tk

user group ---- Administración....

... de usuarios y grupos.

Vamos a mencionar los comandos que normalmente, y por línea de comandos, utilizan las distros basadas en Debian para la adminisstración de usuarios y grupos. Por supuesto, todo hay que hacerlo como root, entonces, en primer lugar, ejecutamos:

:~$ sudo -s
con esto ya nos convertimos en root.

Para crear o agregar un usuario a nuestro sistema, ejecutamos:
:~# adduser NombreDeUsuario
y a partir de aquí, seguir los pasos que el sistema nos va solicitando.

Para crear grupos a nuestro sistema, ejecutamos:
:~# addgroup NombreDeGrupo

Para eliminar usuarios de nuestro sistema, ejecutamos:
:~# deluser NombreDeUsuario

Para eliminar grupos de nuestro sistema, ejecutamos:
:~# groupdel NombreDeGrupo
Cabe recordar que sólo se pueden eliminar grupos si este ya no contiene usuarios.

Para modoficar el nombre de un grupo, ejecutamos:
:~# groupmod -n NombreDeGrupo NuevoNombreDeGrupo

Si necesitamos agregar o modificar un grupo primario a un usuario, ejectuamos:
:~# usermod -g NombreDeGrupo NombreDeUsuario

Puede que haya casos en que tengamos usuarios que necesiten pertencer a más de un grupo, para esto, ejecutamos:
:~# usermod -a -G NombreDeGrupo NombreDeUsuario

Si necesitamos modificar la contraseña de un usuario, ejecutamos:
:~# passwd NombreDeUsuario

Si quisiéramos modificar el directorio de inicio de un usuario en particular, ejecutamos:
:~# usermod -d -m /home/NombreDelDirectorio NombredeUsuario

Si necesitamos modificar el nombre de un usuario que ya existe, ejectuamos:
:~# usermod -l NombreDeUsuarioExistente NuevoNombreDeUsuario

martes, 16 de marzo de 2010

start restart ---- Cuando modificamos

... algún archivo .conf para "tunearlo" a nuestra comodidad o necesidad, luego tenemos que reiniciar el servicio, eso bien vale recordarlo.
También, hay casos que tenemos servicios que no necesitamos todo el tiempo y no arrancan al inicio del equipo.

Vamos a usar como ejemplo Apache:
Si no lo teníamos para que arranque al inicio del sistema, para que se inicie, solo tenemos que ejecutar:
:~ $ sudo /etc/init.d/apache2 start
Pero puede que tengamos dudas de si ya le hemos dado inicio a este servicio, entonces:
:~ $ sudo /etc/init.d/apache2 status
Y si le hicimos algún "tuneado", si o si, debemos reiniciarlo para que este tenga vigencia, entonces:
:~ $ sudo /etc/init.d/apache2 restart

poweroff shutdown ---- Sos administrador.....

.... y necesitás apagar una terminal desde la consola???
:~$ sudo poweroff

Aunque es raro, necesitás reiniciar tu un equipo desde la consola??
:~$ sudo shutdown -r now

eject ---- Nada, solo un tip...

Si querés abrir la lectora de CD, desde una consola de linux, ejecuta:
:~$ eject

Y si además, querés luego cerrarla:
:~$ eject -t

La de "chistes" que hacen algunos administradores de red por ssh, es innumerable.

apt-get vs aptitude ---- Cuál es mejor??

Esto es un parte de una publicación de la documentación de ubuntu-es.org. El link es el siguiente: http://86xn1.tk

Apt (APT-GET)
Mediante el comando en consola :~$ sudo apt-get install NombrePaquete. es posible instalar el paquete solicitado y sus dependencias. Las versiones más recientes, permiten eliminar paquetes que ya no son necesarios, a través del comando :~$ apt-get autoremove.
El programa apt-get es un gestor de paquetes de línea de comandos, que debe ser utilizado si la herramienta Añadir/Eliminar y el gestor ‘Synaptic’ nos dan problemas. Este proporciona una interfaz avanzada de APT, el sistema gestor de paquetes subyacente que utiliza Ubuntu, pero es razonablemente fácil de utilizar. Los usuarios avanzados encontrarán que apt-get es más rápido de utilizar y más poderoso que la opción gráfica.

Aptitude
Mediante el comando en consola :~$ sudo aptitude install NombrePaquete.
Es más potente que APT-GET, ya que es una evolución del mismo. También te soluciona dependencias y recuerda librerías descargadas desinstalandolas si están en desuso. Al ejecutarse por consola su potencia y velocidad son lo máximo.

Particularmente en comprobado varias veces la superioridad de aptitude por sobre apt-get, fundamentalmente en el tema de la limpieza y prolijidad. Es por este motivo que utilizo aptitude.

Como siempre digo, para conocer más sobre aptitude o apt-get:
:~$ man aptitude
o
:~$ man apt-get

lunes, 15 de marzo de 2010

.bin.sh.deb.rpm.run ---- Uno de los problemas...

... con los que me encontré, cuando empecé a trabajar con distros de Linux, era la instalación de programas, por fuera de los centros de Software, apt, aptitude o de Synaptic, por ejemplo.
Debo asumiro que tenía demasiado escrito a fuego el tema de:
-"doble click al archivo.exe, y listo..., arranca la instalación"
de golpe, todo ese mundo, empezó a terminarse.
Y comenzó un mundo nuevo.
Empezaron a existir en mi vida archivos .deb, archivos .bin y archivos .sh por todos lados e imposible de ignorar. Pero nada raro, las cosas son diferentes y se hacen de formas diferentes, vamos con algunos ejemplos:

Archivos .bin
-En mi caso, siempre instalo los programas en la carpeta /usr/local, entonces, para esto, nos paramos en la carpeta donde esté el archivo .bin que hemos descargado, y ejecutamos:
:~# cp archivo.bin /usr/local/CarpetaSeleccionada/
NOTA: La selección de esa carpeta, donde será instalado el programa, puede ser modificada. Para saber más sobre jerarquía del sistema de archivos, visitá: http://5q2hm.tk

-ahora tenemos que asegurarnos que el archivo .bin tenga permisos para ser ejecutado, entonces, como root, ejecutamos:
:~# chmod +x NombreDeArchivo.bin

-luego ejecutamos:
:~# ./NombreDeArchivo.bin


Archivos .sh
-En mi caso, siempre instalo los programas en la carpeta /usr/local, entonces, para esto, nos paramos en la carpeta donde esté el archivo .bin descargado, y ejecutamos:
:~# cp archivo.sh /usr/local/CarpetaSeleccionada/
NOTA: La selección de esa carpeta, donde será instalado el programa, puede ser modificada. Para saber más sobre jerarquía del sistema de archivos, visitá: http://5q2hm.tk

-ahora tenemos que asegurarnos que el archivo .sh tenga permisos para ser ejecutado, entonces, como root, ejecutamos:
:~# chmod +x NombreDeArchivo.sh

-luego ejecutamos:
:~# ./NombreDeArchivo.sh


Archivos .run
Generalmente los archivos .run suelen ser archivos de guía para instalación o script de instalación, y suelen ser manejados igual que los archivos .sh.


Archivos .deb
Navegando por la web, encontraremos muchos programas o sistemas ya compilados especialmente para las distros basadas en Debian. Estos archivos .deb son muy fáciles de instalar, sólo tenemos que, como root, ejecutar:
:~# sudo dpkg -i NombreDeArchivo.deb
NOTA: Otras Opciones
dpkg -I
Nos muestra la lista de paquetes instalados
dpkg -I NombreDelPaquete
Nos muestra INFO del paquete
dpkg -reconfigure NombreDelPrograma.deb
Reconfigura el paquete instalado
dpkg -r NombreDelPaquete
Elimina el paquete mencionado
dpkg --purge NombreDelPaquete
Realiza un borrado mas profundo del paquete indicado



Otras tantas veces, los programas vienen en paquetes, por ejemplo, .tar.bz2, estos son los pasos para hacer una instalación con estos paquetes:
1-Descargamos el archivo en nuestro escritorio, por ejemplo en:
/home/usuario/Escritorio

2-Lo descompactamos manualmente, con el gestor de archivadores o con el comando tar y
lo dejamos en una carpeta temporal, por ejemplo:
/home/usuario/Escritorio/tmp

3-Yo siempre instalo mis programas en /usr/local, por lo tanto, allá lo copiamos:
:~# cp -r /home/usuario/Escritorio/tmp/"aplicacion descomprimida" /usr/local/ y ya lo tenemos donde queremos, con los permisos y todo, listo para ser ejecutado si el programa ya viene con todos los archivos binarios compilados

Ahora bien, muchos paquetes que descargamos de la red, vienen sin estar compilados pero vienen con todos los archivos necesarios para esto, los pasos son los siguientes:
Los pasos 1 a 3 descriptos más arriba, son los mismos, así que continuamos desde allí
4-De no estar el programa compilado, seguramente dentro de la carpeta que acabamos de copiar encontraremos archivos config o configure, por lo tanto, ejecutamos:
:~# ./config
o
:~# ./configure
Luego de terminada la ejecución de script disparado con el config o configure, ejecutamos:
:~# make
y luego
:~# makeinstall
Y así si ya tenemos el sistema totalmente instalado y compilado con nosotros.


Archivos .rpm
Siendo los archivos .rpm archivos binarios para las distro basadas en RedHat. Pero gracias a un Script de Perl llamado Alien, podemos convertirlos en archivos .deb y con sólo un doble click, comenzar la instalación de los mismos.
En principio, tenemos que instalar Alien, para esto, ejecutamos:
:~$ sudo aptitude install alien

Con alien instalado, y con el archivo .rpm descargado, ejecutamos:
:~$ sudo alien --to-deb NombrePaquete.rpm
y ya tenemos un paquete binario listo para instalar en Ubuntu o distros basadas en Debian.
Para conocer más de las opciones de alien:
:~$ man alien

viernes, 12 de marzo de 2010

scp ---- Copias seguras...

..., si, con este comando podemos hacer copias entre máquinas, sobre una conexión segura y encriptada.

Algunos ejemplos:
:~$ scp NombreDeUsuario@HOST:/Directorio/de/Origen/[archivo] /Directorio/de/Destino/
ó
:~$ scp NombreDeUsuario@HOST:/Directorio/de/Origen/[archivo] . (el punto indica que el destino es el directorio donde estamos parados y HOST es el nombre de la PC origen)

También podemos copiar desde un equipo remoto, aunque recomiendo rsync, con scp también se puede hacer:
:~$ scp NombreDeUsuario@IpDelEquipoRemoto:/Directorio/De/Origne/[archivo] /Directorio/de/Destino/

Como siempre digo, para conocer más detalles sobre el programa "scp" y todas sus características, ejecutar:
:~$ man scp

rsync ---- Back Ups seguros...

..., rsync, una herramienta de mucha potencia para hacer copias de seguridad o sincronización de archivos entre 2 equipos.

En primer lugar, si no lo tenés instalado en tu equipo, como root, ejecutamos:
:~# sudo aptitude install rsync

Listo, instalado. Ahora vamos a detallar las "options" de rsync, por lo menos las que uso yo, son las siguientes:
-a #de Archivos
-b #crea un Back up
-e #especifica el shell a usar
-g #mantiene Grupos de origen
-l #mantiene los Links activos
-t #mantiene fecha y hora de origen
-u #para forzar el Update
-v #mas datos de Verbose
-z #comprime archivos durante la transferencia
--delete-after #marca, después de la copia, con un ~ los archivos que ya no existen en origen


Existen en la web muchísimos tutoriales de rsync, rsync en ssh, etc., etc., etc. Acá voy a indicar sólo algunos ejemplos de como lo uso yo, por ejemplo:
LOCAL:
:~$ rsync -abgltv /Path/a/Carpetas/Origen/ /Path/a/Carpetas/Destino

A un equipo remoto:
:~$ rsync -e ssh -abgltvz --delete-after /home/Path/a/Origen/ usuario@ip.del.host:/Path/a/Destino

DESDE un equipo remoto:
:~$ rsync -e ssh -abgltvz --delete-after usuario@ip.del.host:/Path/a/Destino/ /home/Path/a/Origen

Y como siempre digo, y en este caso es de lectura obligatorio, para conocer más detalles sobre el programa "rsync" y todas sus características, ejecutar:
:~$ man rsync

youtube-dl ---- Querés descargarte....

..., un video desde youtube, y directamente desde la consola??, bueno, anotá.

Es un programa que se llama youtube-dl, para instalarlo, como root, ejecutamos:
:~# apt-get install youtube-dl

Y con el programa instalado, solo necesitamos copiar la url del video que provee youtube, por ejemplo:
:~$ youtube-dl http://www.youtube.com/watch?v=MvA26p6wMYc

Y por último, como siempre digo, para conocer más detalles sobre los programas "youtube-dl" y todas sus características, ejecutar:
:~$ man youtube-dl

Convertir archivos .flac en archivos .mp3

Por una cuestión de prolijidad, decidí hace unos días transformar todos mi archivos de sonido digitalizados, a un sólo formato, mp3. Al poner manos a la obra, me encontré con muchos archivos .flac los cuales debía convertir.

Para esta tarea, necesitaba tener instalados un par de programas, entonces, como root, ejecutamos:
:~# apt-get install flac
:~# apt-get install lame

Con todos los programas necesarios intalados, ejecutamos:
flac -c --decode ArchivoOrigen.flac | lame --vbr-new - ArchivoDestino.mp3

Pero como tenía varios archivos, lo mejor fue disparar este "script":
for archivo in *.flac; do flac -c -decode $archivo | lame --vbr-new - $archivo.mp3; done

Convertir archivos .flv en archivos .avi

Esta no es una solución de una gran calidad, pero sirve.

Necesitamos tener instalados el siguiente programa, que como root, ya instalamos:
:~# apt-get install ffmpeg

Luego de tener los programas necesarios instalados, ejecutamos:
:~$ ffmpeg -i 'ArchivoOrigen.flv' 'ArchivoDestino.avi'

Hay programas más efectivos, pero este sirve cuando no necesitamos una GRAN HQ.

Convertir archivos .mov en archivos .mp3

Navegando por la web, se pueden encontrar varias formas de hacer esta conversión, pero esta que encontré fue la que me dío mejores resultados al querer convertir un video de mi hija en un archivo .mp3 para subir al celu.

Necesitamos tener instalados algunos programas, así que, como root, instalamos los siguientes:
:~# apt-get install ffmpeg
:~# apt-get install mplayer
:~# apt-get install lame

Con todos los programas necesarios instalados, ejecutamos los siguientes pasos:
Paso 1:
ffmpeg -i ArchivoOrigen.mov -acodec copy ArchivoDestino.avi

Paso 2:
mplayer -vo null -vc dump -ao pcm ArchivoDestino.avi

Paso 3:
lame audiodump.wav ArchivoDestino.mp3

Y así conseguí un archivo .mp3 impecable para poner de ringtone en mi celu.

Convertir archivos .rmvb en archivos .avi

Los archivos .rmvb generalmente tienen una calidad muy buena, así que no sé para que alguien querría convertirlos en archivos .avi, pero bueno..., conozco gente que lo hace, YO por ejemplo..., Así que acá dejo el machete.

Para que esto funcione tenemos que tener varios programas instalados, vamos con la lista de instalaciones, ojo, como root:
:~# apt-get install mencoder
:~# apt-get install ffmpeg
:~# apt-get install w32codecs
:~# apt-get install devede

Luego de tener todos estos programas instalados, ejecutamos:
mencoder archivoIN.rmvb -oac mp3lame -lameopts preset=128 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1200 -ofps 25 -of avi -o archivoOUT.avi
y listo..., ahi tenemos el archivo .avi perfectamente convertido.

pdftk / gs ---- Es posible rejuntar...

..., todos mi archivos PDF en un sólo archivo PDF??, de ser necesario??

Si, totalmente.
Muchas veces se dá el caso que tenemos que escanear un montón de apuntes, pero es muy incómodo tenerlos en varias archivos PDF por separado. Bueno, con estos 2 programas podemos tener todos esos apuntes en 1 sólo archivo PDF, como??, veamos:
El primer programa es pdftk, para eso, ejecutamos:
:~# apt-get install pdftk
con el programa instaldo, ejecutamos:
:~$ pdftk Archivo1.pdf Archivo2.pdf Archivo3.pdf cat output ArchivoFinal.pdf
pdftk, tiene como contra, que si son muchos los archivos a "rejuntar", el archivo PDF final será demasiado pesado en mbytes.

Para evitar esto, podemos usar gs, entonces:
:~# apt-get install gs
una vez instalado, ejecutamos:
gs -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=ArchivoFinal.pdf -dBATCH Archivo1.pdf Archivo2.pdf Archivo3.pdf
y con esto tendremos un archivo PDF final, mucho más liviano.

Como siempre digo, para conocer más detalles sobre los programas "pdftk" y "gs" y todas sus características, ejecutar:
:~$ man pdftk
y / o
:~$ man gs

tar / bzip2 ---- Empaquetado y apretado...

..., así quedarán ese conjunto de archivos y carpetas que queres guardar.

A ver como:
Comprimir Empaquetando:
:~$ tar -c *.* | bzip2 > Archivo.tar.bz2

Descomprimir desempaquetando:
:~$ tar fjvx Archivo.tar.bz2

Pero si primero queremos ver el contenido del archivo empaquetado:
:~$ bzip2 -dc Archivo.tar.bz2 | tar -tv

También se pueden ejecutar por separado o individualmente, veamos como:
Empaquetando:
:~$ tar cvf Archivo.tar /carpet/a/s/*
Desempaquetando:
:~$ tar xvf Archivo.tar
Ver Contenido del Paquete:
:~$ tar tvf Archivo.tar

Comprimiendo: (con bzip2)
:~$ bzip2 Archivo.ext o /Carpeta
Descomprimiendo: (con bzip2)
:~$ bzip2 -d archivo.bz2

Comprimiendo con tar y bzip2 de forma combinada:
:~$ tar jcvfP /home/usuario/BackUps/archivo.tar.bz2 /home/usuario/Documentos/Documento.xml
Descomprimiendo con tar y bzip2 de forma combinada:
:~$ tar jxvfP archivo.tar.bz2
Nota: recuerden que la "P" es una option que funciona, al comprimir, para guardar el path absoluto. Y al descomprimir desempaqueta con el path absoluto.

Y como siempre digo, para conocer más detalles sobre los comandos "tar" y "bzip2", ejecutar:
:~$ man tar
y / o
:~$ man bzip2

gnome-terminal ----

En ocasiones necesitamos ejecutar un conjunto de comandos o un montón de comando encadenados, eso hace que, a veces, supere el ancho de la terminal. Para modificar esto existe el siguiente comando:
:~$ gnome-terminal --geometry=132x43
OJO, al cerrar la terminal, perdemos esta nuevas medidas seteadas.

En el caso en que querramos setear de forma definitiva, o por lo menos, que siempre quede igual, ejecutamos, como root, lo siguiente:
:~# gedit /usr/share/vte/termcap/xterm
luego buscar la línea que contiene lo siguiente:
:co#80:it#8:li#24:\
y modificarlo por la siguiente línea:
:co#132:it#8:li#43:\

Y como siempre digo, para conocer más detalles sobre el comando "gnome-terminal", ejecutar:
:~$ man gnome-terminal

jueves, 11 de marzo de 2010

nmblookup ---- Necesitamos conocer...

... el nombre de la PC de administración y tengo la IP, como hago??

Con este comando, podemos hacer exactamente eso:
:~$ nmblookup -A 192.168.1.111 (o la IP que corresponda o quieran conocer)

Y como siempre digo, para conocer más detalles sobre el comando "nmblookup", ejecutar:
:~$ man nmblookup

du ---- Cuanto pesa...

... mi carpeta con los mp3??

Con este comando "du", podemos saber cuanto "pesa" una carpeta con todo su contenido:
-Si queremos el dato algo resumido, ejecutamos:
:~$ du -chls * (El asteristico nos dice que este comando nos va a dar la medida de la carpeta donde esta lanzado)
-Si queremos el dato más detallado, para "leer" todo, ejecutar:
:~$ du -ch ./carpeta

Y como siempre digo, para conocer más detalles sobre el comando "du", ejecutar:
:~$ man du

find ---- Buscás algo en tu Linux???...

... Claro, quien no ha perdido un archivo alguna vez. O también..., nunca se les ocurrió buscar cuantos archivos .conf existen en nuestra distro??, bueno, a mi si che...

Algunos ejemplos. Como casi seguro nos vamos a "meter" donde no debemos, hay que agregar "sudo" o bien ejecutarlo como root:
-Si queremos buscar un archivo en particular, y conocemos su nombre y extensión:
root@maquinola:~# find / -name archivo.ext
-Si queremos buscar un archivo en particular, y conocemos solo una parte del nombre:
root@maquinola:~# find / -name *arch*
-Si queremos conocer que "directorios" o "carpetas" tenemos creados en nuestro home:
root@maquinola:~# /home/user -type d (donde user es el nuestro nombre de usuario o nuestro home asigando)
-Si, como dije antes, queremos saber cuantos archivos "conf" tenemos:
root@maquinola:~# find / -type f -name *.conf

Aprovechando la potencia y lo servicial que es find, podemos combinarlo con otros comandos:
-Si quisieramos eliminar todos los archivos terminados en ".tmp", ejecutamos: (antes que nada, estas combinaciones hay que usarlas con muchísima atención, ya que un error puede ser "demoledor!!!")
root@maquinola:~# find / -type f -name *.tmp -delete
-Si, por ejemplo después de usar rsync, queremos eliminar todos los archivos "backupeados" (*~), ejecutamos:
root@maquinola:~# find /Carpeta/Donde/Buscar -name *~ -exec rm {} \;
-Si queremos copiar ciertos archivos a otro directorio, ejecutamos:
root@maquinola:~# find . -type f -exec cp '{}' /tmp \; (donde "." es el directorio actual)
-Y también, por último, si queremos buscar los archivos con permiso "777", ejecutamos:
root@maquinola:~# find . -perm 777 (donde "." es el directorio actual)

Estos son sólo algunos ejemplos que, fundamentalmente son los que yo uso normalmente. En la web hay excelentes tutoriales, por ejemplo: http://relv6.tk
Y como siempre digo, para conocer más detalles sobre el comando find, ejecutar:
~$ man find

PATH ---- Algunas veces....

... necesitamos modificar la variable PATH para agregarle, justamente, un path que apunte a alguna carpeta en particular. Por ejemplo: Si sabemos algo de programación, y somos capaces de generar nuestros propios scripts, y siendo, por supuesto, el colmo de lo prolijos, podemos tener todos nuestros mencionados scripts en una misma carpeta, por ejemplo:
/home/nombre_usuario/scripts
Ahora bien, si la idea es dispararlos desde cualquier lugar en que estemos "parados" en la consola, tenemos que informarle al sistema operativo donde tenemos "alojados" nuestros scripts. Para esto, entonces, podemos hacer lo siguiente:

Modificar PATH sólo para la sesión abierta:
export PATH=$PATH:/home/usuario/carpeta
Recuerden que al cerrar la sesion, desaparece el PATH agregado

Modificar PATH para todas las sesiones y para cualquier usuarios
echo "export PATH=$PATH:/home/usuario/carpeta:\$PATH" >> /etc/profile

Modificar PATH para todas las sesiones y para 1 sólo usuario
echo "export PATH=$PATH:/home/usuario/carpeta:\$PATH" >> /home/usuario/.bashrc

Recuerden que si quieren verificar el valor de la variable PATH, es sencillo, por supuesto desde la consola escribimos:
echo $PATH
ó bien, para verlo más prolijamente:
echo $PATH | tr : \\n

nmap ---- Te molesta que te roben....

... parte de tu señal de WiFi??
Bueno, linux te puede ayudar.

Con este programa, podés chequear cuanta gente hay conectada en tu router.
1) Instalar nmap
aptitude install nmap

y a continuación, sólo queda tirar el siguiente comando:
nmap -sP 192.168.1.0/24 (o la estructura de IP que tengas)

miércoles, 10 de marzo de 2010

df ---- Tenés idea de....

... cuanto espacio te queda en tus discos rígidos??

Fácil, por supuesto en consola, escribimos:
df
si querés un tipo de detalle, "más humano":
df -h
ó también, si querés otro tipo de detalles, escribí:
df -hT

El comando df muestra los datos de todas las unidades montadas.

dpkg ---- Sos usuario de Ubuntu....

... y querés instalar paquetes ".deb", y desde la consola??

Bueno...
dpkg -i /ruta/al/paquete/paquete.deb