Ultrademente
Usuario (Argentina)
Bueno gente , les dejo dos temitas de mi banda "Los Fierros del Nono", somos de La Plata y hacemos Rock variado . Espero les guste, comenten, critiquen y bue gracias de antemano por pasar . Saludos . link: link:
Bueno, hay veces en que tenemos por ej 2 pdf's y los queremos meter en un solo . Para eso existe un comando que se llama pdftk . Si no lo tenes instalado , escribi en la consola : sudo apt-get install pdftk Una vez instalado escribis lo siguiente : pdftk archivo1.pdf archivo2.pdf cat output salida.pdf Se pueden concatenar los archivos que quieran para obtener uno solo , en nuestro caso salida.pdf Fijense que el programita tiene un montón de opciones para hacer de todo , simplemente escriban : pdftk --help y ahi tienen para jugar un rato . Ok gente espero les haya gustado y le puedan dar utilidad . Se agradece su comentario .
Podemos montar una imagen de disco ISO (.iso) sin tener que grabarla, siguiendo estos pasos: * Creamos un directorio (punto de montaje) donde montar la imagen: $ sudo mkdir /media/iso * Cargamos el módulo loop al kernel, si no estaba cargado todavía: $ sudo modprobe loop * Ingresamos a la carpeta contenedora de la imagen (en nuestro caso /home/user): $cd /home/user * Montamos la imagen: $ sudo mount -t iso9660 -o loop archivo.iso /media/iso Esto indica que se montará el contenido del "archivo.iso" dentro del directorio /media/iso. Para desmontar la imagen: $ sudo umount /media/iso Fuente : www.guia-ubuntu.org
Aventurandose por los shell scripts En esta anotación voy a intentar dar unas breves ideas para aquellos que quieran hacer sus primeros pinitos en la programación de shell scripts. La shell utilizada será bash pues además de ser la que se utiliza por defecto en GNU/Linux es también la más potente, al menos de las que conozco, csh, ksh y bash. Un shell script no es más que un fichero que contiene un conjunto de comandos y que puede ser ejecutado desde un terminal. Cuando se ejecuta un shell script realmente lo que se hace es lanzar una shell (bash, ksh, csh o la que sea) que se encarga de interpretar y ejecutar las órdenas contenidas en el fichero del script. Para ejecutar un script se puede hacer de varias maneras: * Dandole permisos de ejecución y lanzarlo escribiendo el path donde se encuentra y el nombre. Por ejemplo si tenemos un script que se llama sx99 y que se encuentra en el directorio /opt/scripts para lanzarlo (una vez dados los permisos de ejecución) tendrías que hacer: /opt/scripts/sx99 * Dandole permisos de ejecución y situarlo en alguno de los directorios de la variable PATH (por ejemplo en /usr/local/bin). Es similar al anterior pero para lanzarlo no hay que poner la ruta de donde se encuentra ya que es suficiente con poner su nombre * Lanzando explícitamente la shell y pasandoe por parámetro el script (no son necesarios permisos de ejecución). En el ejemplo anterior: bash /opt/scripts/sx99 La primera línea que se suele poner en un script (no es obligatoria) es una línea que le indica al sistema cuál es el intérprete que debe utilizar para ejecutar nuestro script (si no se pone nada utilizará el shell por defecto que como hay he mencionado suele ser bash). #!/bin/bash En este caso se está indicando que el intérprete será bash y que está ubicado (bash) en /bin. Si por ejemplo nuestro script fuera para ksh y ksh se encontrara en /usr/bin deberiamos poner en la primera línea: #!/usr/bin/ksh Cuando se quieren añadir comentarios, es decir líneas en el fichero de script que el intérprete debe ignorar se preceden por el carácter # # Lanzo el comando ls con el parámetro -l ls -l Si queremos asignar valores a variables lo haremos mediante el = pero teniendo cuidado de no dejar ningun espacio entre el = y el nombre de la variable y el = y el valor que le damos. # Así no otravariable = 1 # Así sí variable=1 Para acceder al valor contenido en otra variable utilizaremos el $ delante del nombre de la variable (es una práctica recomendable utilizar el nombre de la variable encerrado entre {}) # Esto muestra por la salida estandar, en principio la pantalla, el valor de variable echo $variable # Esto tambien pero a mi me gusta mas que la anterior echo ${variable} Si después de ejecutar un comando queremos comprobar si ha ido mal podemos utilizar $? inmediatamente después de ejecutar el comando. Si no es 0 es que algo ha ido mal. # Esta ejecucion ira bien y por tanto mostrara un 0 ls -l echo $? # Esta ejecucion ira mal (siempre que no exista un fichero llamado dsafhjsdf) y mostrara un valor distinto de 0 ls -l dsafhjsdf echo $? Si queremos preguntar por alguna variable para hacer o no hacer algo utilizaremos la sentencia if ls -l dsafhjsdf retorno=$? if [ ${retorno} -ne 0 ]; then echo "Ha dado el error ${retorno} la ejecucion de ls -l dsafhjsdf" else echo "Ha ido bien la ejecucion de ls -l dsafhjsdf" fi Hay que darse cuenta que un if se cierra con un fi, que puede tener un else y que la condición va entre []. Es necesario que después del [ y antes del ] debe existir al menos un espacio. El ; que va entre el ] y el then no es necesario pero si no se pone la palabra then debe ir en la siguiente línea. ls -l dsafhjsdf retorno=$? if [ ${retorno} -ne 0 ] then echo "Ha dado el error ${retorno} la ejecucion de ls -l dsafhjsdf" else echo "Ha ido bien la ejecucion de ls -l dsafhjsdf" fi Si lo que se van a comparar son números (como en el ejemplo), para comparar se utiliza lo siguiente: * -eq -> igual * -ne -> distinto * -lt -> menor * -le -> menor o igual * -gt -> mayor * -ge -> mayor o igual Mientras que si lo que se van a comparar son textos lo que se utiliza es: * = -> igual * == -> igual (como el anterior aunque yo prefiero esta sintaxis que es la de C para diferenciarlo de la asignacion) * != -> distinto En el caso de la comparación de textos conviene utilizar las variables encerradas entre "" nombre="Pedro" if [ "${nombre}" == "Antonio" ]; then echo Es Antonio else echo No es Antonio, es ${nombre} fi Si una variable no está definida o está vacía se puede detectar utilizando la opción -z dentro del if: if [ -z ${apellido} ]; then echo La variable apellido no existe o no tiene valor else echo El apellido es ${apellido} fi En ocasiones querremos repetir algo, por ejemplo convertir de formato todas las imágenes jpg de un directorio y pasarlas a png: for i in *.jpg ; do convert "${i}" "`echo $i | sed "s/.jpg$/.png/g`" done En este caso mediante *.jpg sacamos una lista de los archivos del directorio en el que se ejecute que terminan en .jpg, la variable i va tomando en cada iteración del bucle el nombre de cada uno de estos archivos. Luego utilizamos la utilidad convert para pasar del jpg a png y para ello le pasamos como primer parámetro el fichero jpg (${i}) encerrado además entre "" para evitar problemas con los espacios que pueda tener el nombre y utilizamos sed para construir el segundo parámetro que tendrá el mismo nombre que el fichero jpg pero cambiando jpg por png. Además utilizamos los acentos graves (`) para que al ejecutar un determinado comando nos asigne su salida a una variable o como en el ejemplo lo ponga en el segundo parámetro del convert. Si por ejemplo hubieramos querido guardar el nombre del nuevo fichero png en otra variable deberiamos hacer: nombre_del_png=`echo $i | sed "s/.jpg$/.png/g` o también se podría hacer sin utilizar el acento con: nombre_del_png=$(echo $i | sed "s/.jpg$/.png/g) También nos puede interesar, hay gente para todo , sacar los n primeros números de la serie de Fibonacci (esa que empieza por 1 1 2 3 5 8 13 21 34 ... y que tiene algo que ver con la capacidad reproductora de los conejos). Para ello podemos utilizar el bucle while y algunos otros apaños: max=10 n_2=1 n_1=1 echo 1 - ${n_2} echo 2 - ${n_1} i=3 while [ ${i} -le ${max} ]; do n=$((${n_2} + ${n_1})) n_2=${n_1} n_1=${n} echo ${i} - ${n} i=$((${i}+1)) done En este caso utilizamos while para montar un bucle que se ejecutará mientras que se cumpla la condición, en el ejemplo lo hará mientras la variable i (que comienza siendo 3) sea menor o igual que la variable max (10 porque no me apetece sacar más de 10 números de Fibonacci). Además el ejemplo sirve para ver como se hacen operaciones aritméticas en bash n=$((${n_2} + ${n_1})) i=((${i}+1)) Si no utilizasemos los dobles paréntesis bash no sabría que querriamos hacer una suma y lo que haría es concatenar los valores como si de una cadena de texto se tratase, n valdría 1+1 en la primera iteración (no 2) e i valdría 3+1 (no 4).
Monta un servidor web en Ubuntu con Apache El servidor web Apache es el servidor web más implantado entre los diferentes servidores que ofertan sitios web en Internet. Es software libre, de código abierto y se encuentra disponibles para plataformas Unix (BSD, GNU/Linux,etc.), Windows y Macintosh. En 2005, Apache fue el servidor web más usado, siendo el servidor empleado en el 48% de los sitios web en el mundo (información extraída de la Wikipedia). Veamos a continuación como montar y configurar un servidor web en Ubuntu.** Instalación de Apache Para instalar Apache simplemente tendremos que abrir el terminal (Aplicaciones/Accesorios/Terminal) y escribir: * sudo apt-get install apache2 Arranque y parada de Apache Para arrancar o reiniciar Apache escribiremos el siguiente comando en la consola: * sudo /etc/init.d/apache restart Para parar el servidor web escribiremos el siguiente comando: * sudo /etc/init.d/apache stop Comprobando el servidor web Para comprobar que el servidor web funciona correctamente, abrimos cualquier navegador y escribimos lo siguiente en la barra de direcciones: * http://localhost Debe aparecer una página como la siguiente. Comprobando el servidor web También podemos escribir http://ip_del_servidor. Incluso tenemos la posibilidad de editar el archivo /etc/hosts y escribir en él la siguiente línea: * direccion_ip_servidor www.prueba.com cambiando direccion_ip_servidor por la dirección IP que tenga el servidor. Esto lo tendremos que hacer para cada uno de los ordenadores de la red local que quieran acceder al servidor. De esta manera podremos acceder al servidor web escribiendo www.prueba.com en la barra de direcciones del navegador. Por defecto, la carpeta raíz del servidor web es /var/www. Es en ese directorio donde iremos creando las diferentes páginas que formarán nuestra página web. Para hacer pruebas, lo primero que haremos será modificar el fichero index.html que se encuentra en ese directorio. Hay diversas formas de hacerlo, una de ellas es abriendo el terminal y escribiendo: * sudo gedit /var/www/index.html Vamos a crear una página muy sencilla que simplemente muestre el texto “Hola, me llamo Alejandro”. Así pues, borramos todo el contenido del archivo y escribimos el siguiente contenido. Ahora abrimos de nuevo el navegador y escribimos: http://localhost (también podemos poner http://ip_del_servidor). Tendremos que ver la siguiente página. Como ven, el servidor web asume que el documento que debe mostrar por defecto es el index.html, así que no es necesario poner http://localhost/index.html. Si no existe el fichero index.html, busca el fichero index.htm, y si éste tampoco existe, busca el fichero index.php. Espacio web para cada usuario Cada usuario puede disponer de su propio espacio web que se almacena en una carpeta llamada public_html que se encuentra en el directorio /home del usuario. Por ejemplo, si tenemos en el sistema un usuario llamado pepe, podemos acceder a la página del usuario pepe escribiendo: * http://ip_servidor/~pepe/ El carácter ~ se obtiene pulsando Alt Gr + 4 Como ya he dicho anteriormente, el usuario debe crear una carpeta llamada public_html en su directorio personal (/home/nombre_usuario/) y guardar en ese directorio los archivos que formarán parte de su página web. Para que cada usuario tenga su propio espacio personal, debemos activar el módulo de Apache userdir. Para ello abrimos la consola y escribimos: * sudo a2enmod userdir Una vez que hayamos activado el módulo, tendremos que reiniciar el servidor web con sudo /etc/init.d/apache2 restart. Si queremos desactivar el módulo userdir tendremos que escribir: * sudo a2dismod userdir y reiniciar a continuación el servidor.
¿Qué es Wake on LAN? Wake on Lan, en adelante WOL, es una tecnología mediante la cual una computadora que este apagada puede ser encendida desde otro PC de la LAN. ¿Cuál es su funcionamiento exacto? Cuando el sistema esta apagado, la tarjeta de red usa una fuente de alimentación alternativa para monitorizar la red y esperar el envío de un paquete desde el servidor, esta energía es proporcionada por la placa base a la tarjeta a través del propio cable. La tensión proporcionada por la fuente de alimentación es de 5V y de bajo amperaje cuando se sitúa en modo stand-by. Una vez que recibe este paquete, la tarjeta de red alerta al sistema para que se encienda. En resumen, para poner este sistema en funcionamiento, debes disponer de una placa base ATX que soporte esta función, ya que los ordenadores con placas AT, una vez que están apagados no pueden encenderse remotamente, porque no se quedan en modo stand-by. Bueno, vamos al grano . Lo primero que tenemos que hacer es entrar al BIOS de la máquina remota (la que queremos encender) , y habilitamos la opcion Wake on Lan . Guardamos y salimos . Necesitaremos de la MAC para poder hacer esto . En Windows la podemos obtener ejecutando en linea de comando ipconfig /all , en linux con ifconfig . Una vez hecho esto instalamos la aplicación etherwake en nuestra maquina con ubuntu : $ sudo apt-get install etherwake y luego ejecutamos la aplicación : $ sudo etherwake MAC (donde MAC es el numero que obtuvimos en la maquina remota) ej : sudo etherwake 00:0a:2f:0e:7a:f6 Listo ahi tendria que prender la maquina remota al toque . En que se puede aplicar esto ? Las utilidades son cualquiera que se pueda ocurrir. Yo lo veo útil por ejemplo: - si ienes un Cyber o una PYME, podes encender todas las maquinas a la vez, y no ir una por una. - dejar una tarea que encienda la PC a una hora determinada e incluso dejar otra en la PC encendido para que se ponga a hacer cualquier tipo de operación. - Y bue , lo que se les ocurra - Espero que les sirva che . Comenten !!!

Bueno gente este es mi primer post, aca les voy a explicar como bajar videos de youtube a travez de la consola de Ubuntu . Lo bueno de esto es que podemos bajar una lista de links de un saque , sin tener que hacerlo uno por uno. Primero hay que instalar una aplicación que se llama clive : sudo apt-get install clive una vez instalada creamos un archivo de texto con el nombre que querramos , por ejemplo : lista.txt Dentro del archivo mandamos uno debajo del otro , los links de los videos que queremos bajar . Una vez hecho esto y guardado el archivo , escribimos en la consola : cat lista.txt | clive el comando cat lista el contenido del archivo lista.txt y la barra (|) redirecciona esa salida a la aplicacion clive . Bueno eso es todo , ahi ya comienza a bajar todo lo que mandamos en el archivito . Ok , reitero , es mi primer post asi que espero que les haya servido de algo , y manden algunos puntines