Archivo

Entradas Etiquetadas ‘consola’

Juntar varias páginas pdf en un solo archivo: pdftk

Sábado, 9 de Enero de 2010

He necesitado juntar unos cuantos archivos pdf, en uno solo, y la verdad es que nunca había indagado en el tema. Me suena que con la versión completa del Acrobat Reader (creo que se llama Acrobat Creator), se puede hacer esto y muchas más virguerías, pero no hace falta usar un programa privativo, y para otro sistema operativo (windows) para algo tan sencillo.

Entonces encontre pdftk en este blog: http://draxus.org/weblog/2007/06/14/juntar-o-separar-pdfs-en-gnulinux/. Un programa sencillo, que funciona por consola (para los que se asusten con los comandos, hay una insterface gráfica). Está en los repositorios de la mayoría de los distros (entre ellos Arch y Ubuntu), aunque para instalarlo en Arch, necesitaremos toquetear un par de cosas que explicaré en el próximo post: http://www.bizkaiaporelmilenio.com/es/prueba/66/democracia-con-todas-las-letras.html

Una vez instalado, vamos  a ver los comandos básicos. Para más opciones, consulad el man.

Para juntar varios archivos en uno, escribimos en consola:

pdftk archivo1.pdf archivo2.pdf archivo3.pdf cat output resultado.pdf

Los juntará en el orden que hayamos listado los archivos, y lo que viene después de catoutput, es el nombre del archivo que nos va a quedar.

Para separar de un archivo, todas sus hojas en diferentes archivos pdf, introducimos:

pdftk archivo.pdf burst

Si en cambio queremos extraer unas hojas específicas, y juntarlas en un solo pdf, le indicamos cuales queremos:

pdftk archivo.pdf cat 3-7 12-end output resultado.pdf

Si tenéis un buen dominio de la terminal, podréis hacer cosas muy comodas, por ejemplo:

pdftk $(ls -A) cat output resultado.pdf

Con este comando, le estamos indicando al programa, que coja el listado de documentos del comando “ls -A”, que listará todos los documentos que haya en el directorio en el que nos encontramos.  De esta manera, juntaremos en un archivo llamado resultado.pdf, todo lo que tengamos en el directorio. O si tenemos más cosas en el directorio, y queremos filtrar solo los archivos con estensión pdf, escribiriamos $(ls -A | grep .pdf)

Eso es todo por hoy. Si queréis usar la interface gráfica, el paquete se llama guipdftk, pero no la he probado. Me parece que está bien como está :) . Por cierto, también está disponible para Windows.

Tepes Archlinux, Linux , , , , , , ,

Montar imágenes de CD en linux

Domingo, 21 de Junio de 2009

En linux, se puede montar toda clase de imágenes de CD de manera muy fácil, ya sea por consola, usando comandos, o con ayuda de algún programa. Es muy útil para poder usar la información que contienen estos archivos, sin necesidad de andar grabándolo en un CD o DVD. Voy a explicaros las dos formas, y dejo en vuestras manos la elección.

Montar Imágenes por consola:

Esta parte del tutorial no la he escrito yo. Lo he leído en numerosas webs, pero el primer sitio donde lo vi fue en El cajón de Bronch v2.0. Allí podéis ver las fuentes que cita el autor:

Linux tiene la posibilidad de montar las imágenes de cd/dvd sin tener que grabarlas. Asumiremos que usas una distribución que usa “apt” para instalar y actualizar paquetes, este es el caso de debian, ubuntu, suse,etc. Asumiremos también que sabes como crear directorios y que sabes qué es “montar” un sistema de ficheros. Vamos al grano.

Con unos cuantos comandos de consola podremos montar distintos tipos de imágenes de CD/DVD fácilmente:

Lo más básico, montar una imagen ISO:

sudo mount -t iso9660 -o loop archivo.iso /directorio/de/montaje

Montando imágenes BIN y CUE:

Para poder montar estos archivos necesitas convertirlos antes a imagen ISO, esto lo puedes hacer con el programa bchunk.

(Si no tienes instalado bchunk)

sudo apt-get install bchunk

(nota: si así no puedes instalarlo puede encontrar el programa aquí: bchunk)

y cuando se haya instalado procederemos a convertir la imagen bin con su archivo cue correspondiente a un solo archivo iso:

bchunk archivo.bin archivo.cue nuevonombre.iso

Ahora ya tendrás un nuevo archivo iso que podrás montar como se explica más arriba.

Montar imágenes NRG (imágenes de Nero Burning Rom):

Las imagenes NRG pueden ser montadas directamente sin necesidad de convertirlas:

mount -t iso9660 -o loop,offset=307200 imagen.nrg /directorio/de/montaje

(gracias Tux)

Si tienes algún problema con ese método o deseas convertir la imagen NRG a ISO deberás usar el programa nrg2iso, para instalarlo haremos:

sudo apt-get install nrg2iso

(nota: si así no puedes instalarlo puede encontrar el programa aquí: Nrg2Iso)
y cuando ya esté instalado, para convertir la imagen:

nrg2iso archivo.nrg nuevoarchivo.iso

y para montar la imagen ISO simplemente debes seguir las instrucciones detalladas más arriba.

Montar imágenes MDF y MDS

De nuevo utilizaremos un programa para convertir antes la imagen mdf a iso. El programa tiene el original nombre de mdf2iso. Para instalarlo:

sudo apt-get install mdf2iso

(nota: si así no puedes instalarlo puede encontrar el programa aquí: Mdf2Iso)
y una vez instalado convertiremos el archivo MDF a ISO:

mdf2iso archivo.mdf nuevaimagen.iso

Montar imágenes IMG

Usaremos el programa CCD2ISO. Este programa no lo he podido descargar desde los repositorios oficiales de Ubuntu pero de todos modos no estaría de más que intentases instalarlo por apt-get así:

sudo apt-get install ccd2iso

Si de este modo no puedes instalarlo puedes seguir las instrucciones de esta página para bajar el paquete deb de ccd2iso e instalarlo fácilmente.

Si por cualquier motivo no pudieses conseguir el programa por esos dos métodos siempre puedes descargarlo desde su página: Ccd2Iso (ojo, tendrás que compilarlo)

Para instalarlo de este último modo descargamos el archivo que sera algo así como “ccd2iso-0.2.tar.gz” (puede variar la versión) y primero lo descomprimimos así:

tar -xzvf ccd2iso-0.2.tar.gz

Ahora que tendremos una carpeta llamada “ccd2iso”, hacemos lo siguiente:

cd ccd2iso

./configure

make
make install

Con esto ya tendremos instalado el programa ccd2iso. Finalmente para convertir la imagen ccd a iso hacemos:

ccd2iso imagen.img imagen.iso

Y montaremos la imagen iso recien creada como se explica más arriba en esta misma guía.

Montar imágenes DAA

El formato DAA es un formato que utiliza el programa Poweriso. Durante algún tiempo este formato resultaba muy dificil de utilizar en Linux (no había versión de Poweriso para linux y la emulación con wine no funcionaba). Finalmente los creadores del programa sacaron una versión gratuita de su programa para Linux que además nos sirve para convertir otros formatos.

Pero vamos al grano, para convertir una imagen DAA a ISO primero necesitaremos la versión linux de poweriso que podemos bajar desde esta página (parte de abajo) o bien de esta forma :

wget http://poweriso.com/poweriso.tar.gz

Descomprimimos:

tar -zxvf poweriso.tar.gz

Y convertimos a ISO:

./poweriso convert imagen.daa -o nuevaimagen.iso

(Instrucciones para montar la imagen iso, al principio de esta guía)

Fuente: El cajón de Bronch v2.0

Está muy bien explicado, y tecleando unos comandos se puede montar de todo, rápido, liviano y muy práctico. Pero si preferís un programa que os lo haga, seguid leyendo.

Montar Imágenes con AcetoneISO:

La otra alternativa, como os contaba al principio del artículo, es usar una programa con interface gráfica, muy fácil de usar, e igual de potente que la consola. Se llama AcetoneISO: http://www.acetoneteam.org/.

En la web podéis descargarlo, viene ya compilado para las principales diestros (Ubuntu, OpenSuse, Fedora, Archlinux y Slackware), o si no está disponible el codigo fuente para compilarlo. Para los que tengan arch, el paquete está en los repositorios de Arch, asique bastará con teclear:

yaourt -S acetoneiso2

Una vez instalado, es muy sencillo su uso:

Con el botón Montar (en la parte inferior), elegiremos el archivo de imágen que queremos montar. Esta nos aparecerá en el navegador de archivos, en sistema, como si de una unidad más se tratara, alojada en /home/tunombre/virtual-drives/1. Para desmontarla, la seleccionamos, y pulsamos en el botón Desmontar, no tiene más misterio.

El programa trae más opciones, para hacer conversiones, comprimir, descomprimir, encriptar y reproducir los medios que montemos.

Tepes Archlinux, Linux , , , ,

Lm-sensors, monitoriza la temperatura, velocidad de los ventiladores y sus voltajes

Lunes, 8 de Junio de 2009

Lm-sensors es un programa sencillo, liviano y eficaz, que nos mostrará mediante la consola, las temperaturas, velocidad de los ventiladores, así como los diferentes voltajes, todo dependiendo de los sensores internos que tenga nuestro ordenador. Muy útil si queremos echarle un ojo a la temperatura, y saber que tal anda la refrigeración, sobretodo ahora que se acerca el verano.

Como siempre, voy a explicar como lo instalé en Archlinux, pero en las demás distribuciones es lo mismo, solo cambiarían los comandos para descargar los paquetes.

Bien, abrimos una terminal y tecleamos:

yaourt -S lm_sensors

Una vez instalado, configuraremos los sensores con el siguiente comando:

sudo sensors-detect

Y ya solo nos queda arrancar el demonio:

sudo /etc/rc.d/sensors start

Para ver la información, ejecutaremos el comando sensors. A mí, me dice lo siguiente:

lm85-i2c-0-2e
Adapter: SMBus I801 adapter at c800
in0:         +1.48 V  (min =  +0.00 V, max =  +3.32 V)
Vcore:       +1.35 V  (min =  +0.00 V, max =  +2.99 V)
+3.3V:       +3.32 V  (min =  +2.97 V, max =  +3.63 V)
+5V:         +5.13 V  (min =  +4.50 V, max =  +5.50 V)
+12V:       +11.94 V  (min =  +0.00 V, max = +15.94 V)
fan1:       1807 RPM  (min =    0 RPM)
fan2:          0 RPM  (min =    0 RPM)
fan3:          0 RPM  (min =    0 RPM)
fan4:        631 RPM  (min =    0 RPM)
temp1:       +50.0°C  (low  = -127.0°C, high = +127.0°C)
M/B Temp:    +45.0°C  (low  = -127.0°C, high = +127.0°C)
temp3:       +52.0°C  (low  = -127.0°C, high = +127.0°C)
cpu0_vid:   +1.088 V

En mi caso no sale muy claro, pero la lectura temp1 y fan1 corresponden a la temperatura y velocidad del CPU, y el fan4 es el ventilador de la caja.

Si lo deseamos, podemos hacer que toda está información aparezca en nuestro conky, para no perderlo de vista. Debemos editar el archivo .conkyrc, que se encuentra en nuestra home. Por ejemplo, para mostrar la temperatura de la CPU, en mi caso sería de la siguiente manera:

${execi 12 sensors | grep temp1 | cut -c15-16 ;}°C

execi 12, ejecutará el comando sensors cada 12 segundos. grep, filtrará la salida, y se quedará solo con la linea que contenga temp1 (la temperatura de mi CPU, debéis cambiarlo por el nombre de vuestra variable), y luego, esa linea pasará por el comando cut que solo mostrará la columna 15 y 16, que es justo donde está el valor de la temperatura.

Para mostrar otro valor, por ejemplo las revoluciones del ventilador del CPU:

${execi 12 sensors | grep fan1 | cut -c13-16 ;}

Tendréis que adaptar el comando grep y cut, según lo que queráis mostrar. Y bueno, así queda en mi conky (muy minimalista):

Si se calienta mucho el CPU, o alguna otra parte del ordenador, conviene quitar el polvo que acumulan los ventiladores. Con el ordenador apagado, usando una brocha o una aspiradora queda bastante limpito. Si no, podéis desarmar el ventilador o disipador que queráis limpiar. Puede parecer una tontería, pero se nota una gran diferencia en las temperaturas. Haced la prueba, y comprobarlo vosotros mismos.
También puede interesaros el siguiente artículo: http://behindopendoors.netne.net/blog/linux/cpufrequtils-escalado-para-la-frecuencia-de-tu-cpu

Tepes Archlinux, Linux , , , , , , , ,

Comandos de consola II

Jueves, 30 de Abril de 2009

Esto es una lista de comandos para la terminal de linux, que he ido anotando con el tiempo:

ps -A

Vemos los procesos que se están ejecutando en el sistema. Muy útil para saber el nombre concreto del proceso de un programa, o su PID, por ejemplo para poder mandarle una señal de apagado (kill).

killall nombredelproceso

Mataremos todos los procesos que tengan el nombre indicado. Viene bien para terminar procesos que se cuelguen.

kill -9 PIDdelproceso

Le mandaremos la señal -9 al proceso, causando una brusca interrupción. Para aquellos programas que se resisten. Para saber el PID, podemos usar el comando ps -A citado anteriormente.

lsmod

Nos muestra los módulos cargados en el sistema.

modprobe nombredelmódulo

Añadimos un nuevo módulo.

modprobe -r nombredelmódulo

Removemos el módulo de la lista.

blkid

Muestra el UUID de todas las particiones del sistema. Útil para tareas de administración, para editar el grub, o el fstab

sudo fdisk -l

Nos muestra la tabla de particiones.

dmesg | tail

Nos mostrará el final del registro de arranque, para poder ver las incidencias por ejemplo. El comando dmesg, muestra el log, y luego | tail (la barra vertical la introduciendo pulsando ALTGR+ 1) le indica que solo muestre el final (la cola). Puede usarse el comando | tail con otros comandos, o con archivos de texto, siempre con la barra, que hace de tubería (pipe).

ls -A | grep .jpg

El comando grep, filtra la información recibida del comando adyacente (en este caso ls, pero podría ser cualquier otro) con el patrón que le indiquemos, en este caso .jpg, por lo que solo mostrará los archivos que contengan .jpg en sus nombres, así podremos localizar las fotos de un directorio.

sudo halt

Apaga el equipo inmediatamente

sudo shutdown -h now

Otro comando para apagar el equipo, pero podemos precisar cuando queremos que se apague. Ahora (now), dentro de un tiempo, indicado en minutos (15) o una hora concreta, escrita separando con dos puntos la hora de los minutos (16:45).

sudo shutdown -r now

Reiniciaremos el equipo. También admite las mismas variables de tiempo explicadas anteriormente. Podemos usar el comando equivalente reboot.

sudo date -s “2008/11/25 15:35″

Para cambiar la hora y la fecha del sistema.

whereis [programa]

Saber en que directorio se encuentra un programa que tengamos instalado.

Tepes Linux , ,

Comandos de consola I (gestión de archivos)

Miércoles, 29 de Abril de 2009

Estos son comandos que he ido anotando. Algunos son muy útiles, y de uso cotidiano. Está lista, sirve para movernos entre nuestros archivos sin un programa gráfico (nautilus, tunar…).

cd directoriodestino

Nos cambiamos a un determinado directorio. Cuando abrimos una terminal nos encontraremos de manera determinada en nuestra home ( /home/nuestronombre). Con el comando cd, podemos escribir directorios relativos, o completos. Por ejemplo, si queremos ir a la carpeta musica, que se encuentra en /home/nuestronombre, nos bastará con escribir “cd musica“, no es necesario escribir “cd /home/nuestronombre/musica“, aunque sería igualmente válido.

cd ../

Subiremos al directorio superior. Si nos encontramos en /home/nuestronombre/musica, nos moveremos a /home/nuestronombre

ls -A

Nos mostrará una lista con los archivos y las carpetas contenidas en la ruta en la que nos encontramos. Muy útil para saber que archivo abrir, o a que carpeta debemos movernos.

rm archivoaborrar

Borraremos el archivo deseado. Si escribimos rm * borraremos todos los archivos contenidos en la carpeta, o podemos jugar con ese mismo comodín, por ejemplo escribiendo rm *.jpg, así borraremos todos los archivos acabados en .jpg.

rm -r directorioaborrar

Borraremos todo lo contenido en la carpeta nombrada de manera recursiva. Cuidado con este comando, ya que podríamos causar grandes estragos. Con un rm -r * borraríamos TODOS los archivos y carpetas contenidas en la ruta.

cp archivoacopiar destinodecopia

Para duplicar archivos. Podemos usar solo el nombre, o escribir la ruta completa, del destino de nuestra copia. Para hacer un simple backup, valdría con: cp trabajos.tar.gz trabajos.tar.gz.back De esta manera, nos aparecerá un nuevo archivo llamado trabajos.tar.gz.back en la carpeta en la que nos encontramos. Si queremos mandarlo a otra parte, escribiremos la ruta deseada: cp trabajos.tar.gz /home/tunombre/copias/trabajos.tar.gz.back

mv archivoriginal destino

Este comando sirve tanto para mover archivos, como para renombrarlos. Escribiremos el nombre del archivo, seguido del nombre nuevo. Si queremos moverlo, escribiremos la ruta completa de destino (igual que hacíamos en el comando cp).

mkdir nombredelacarpeta

Crea una carpeta con el nombre indicado, en el directorio donde nos encontremos. También podemos decirle la ruta completa donde queremos que se cree la nueva carpeta.

Tepes Linux , ,