RSS

Archivo de la etiqueta: Ubuntu

Para que los estudiantes vean la pantalla del docente

Comparto un script que me resulta útil en la escuela en donde trabajo.
Sirve para que todos los estudiantes puedan ver la pantalla del docente, de tal manera que pueda mostrarse algún procedimiento complejo.
Los supuestos son los siguientes:

  • Todas las máquinas están corriendo un GNU/Linux
  • Las máquinas de los alumnos tienen un cliente VNC llamado “vinagre” (la mayoría de las distros derivadas de Debian lo traen por defecto).
  • Las máquinas tienen ip fija y correlativa (en este ejemplo, se supuso que están en el rango 192.168.10.2 a 192.168.10.25).
  • El usuario del docente tiene acceso por ssh sin contraseñas a las máquinas de los alumnos. (Aquí está explicado cómo se hace).

Sin más preámbulos, el script:
#!/bin/bash
echo "Ingrese el usuario: "
read usuario
com="export DISPLAY=:0.0 && vinagre -f vnc://192.168.10.99"
maquina=2
echo "Se abrirá una ventana. Marque:"
echo "\"Permitir a otros usuarios ver mi escritorio\""
echo "Pulse ENTER para continuar"
read algo
vino-preferences
echo "En unos instantes, todos verán esta pantalla..."
while [ $maquina -lt 26 ] ; do
ssh -p 1160 $usuario@192.168.10.$maquina "$com" &
let maquina=maquina+1
done

Hay que abrir un editor de textos y copiar y pegar este código. Luego, guardarlo con el nombre que se desee, supongamos “ver.sh”
Después, le damos permisos de ejecución, escribiendo en una terminal el comando chmod 744 ver.sh
Por último, lo ejecutamos, escribiendo desde la terminal ./ver.sh
Y allí podremos explicar el procedimiento, mientras todos los estudiantes ven nuestra pantalla.
Por último, para “devolverles” el control de sus máquinas, tenemos que ejecutar este otro script, del mismo modo que antes:
#!/bin/bash
echo "Ingrese el usuario: "
read usuario
com="killall vinagre"
maquina=2
while [ $maquina -lt 26 ] ; do
ssh -p 1160 $usuario@192.168.10.$maquina "$com" &
let maquina=maquina+1
done

Espero que les sea útil. Si hay algo que no expliqué con claridad, pueden dejar un comentario.

Anuncios
 
Deja un comentario

Publicado por en 17/05/2013 en Educación, Utilidades

 

Etiquetas: , , , , , ,

Ubuntu 12.04: Pantalla oscura en la notebook

Instalé la semana pasada Ubuntu 12.04 en mi notebook “Emachines”, y ocurre un desagradable problema con el brillo de la pantalla, en donde parece que no “levantara” video, pero en realidad es que tiene el brillo demasiado bajo. La solución a este problema (que, por lo que he leído, pasa en varias marcas de notebooks) está publicada en varios lados en la Web, pero me gusta reproducirlo también acá, por si alguna vez hace falta, para mí o para quien lea esto.

El brillo es apto sólo para lechuzas…

Vamos al grano:

  1. Instalar Ubuntu desde el CD “alternate”.
  2. Finalizada la instalación, reiniciará el equipo. En ese momento, notaremos que no tenemos video (si te fijás bien, algo se ve, pero apenas se distingue).
  3. “A ciegas”, presionamos Alt+Ctrl+F1 simultáneamente. Eso nos llevará a una terminal (tty1).
  4. De nuevo a ciegas, escribimos ahí nuestro usuario y pulsamos Enter
  5. Otra vez a ciegas, escribimos nuestra contraseña, y pulsamos Enter. Hemos ingresado al sistema, pero todavía no se ve nada.
  6. Escribimos el siguiente comando:
    sudo setpci -s 00:02.0 f4.B=60
    Pulsamos Enter
  7. Volvemos a escribir nuestra contraseña y pulsamos Enter. Instantáneamente, debería comenzarse a ver la pantalla normalmente.
  8. Presionamos Ctrl+D para cerrar la sesión en el terminal, y luego Alt+Ctrl+F7 para volver al modo gráfico. Ingresamos a Ubuntu con nuestro usuario y contraseña de manera normal.
  9. Nos resta ver cómo hacemos para no tener que repetir los pasos anteriores en cada arranque del equipo. Ya en el modo gráfico, abrimos una terminal. Allí escribimos sudo gedit /etc/rc.local e ingresamos la contraseña.
  10. Se abrirá un editor de textos, editando un archivo cuyas líneas están todas comentadas, excepto la última que dice exit 0. Antes de esa última línea, agregamos la siguiente:
    sudo setpci -s 00:02.0 f4.B=60
    Guardamos y salimos. (Si se fijan bien, la línea que hay que agregar es el mismo comando que ejecutamos “a ciegas”. Se ejecutará cada vez que inicie el equipo. El número 60 mide el brillo, puede cambiarse por otro que resulte más cómodo.)
  11. ¡Listo! Ya podemos configurar el sistema a nuestro gusto.

Espero que haya servido. Ante cualquier duda, dejen un comentario.

Fuente de la imagen

 
35 comentarios

Publicado por en 23/07/2012 en Utilidades

 

Etiquetas: , , ,

Bloqueo de pantalla por ssh

Comparto con ustedes una solución que apliqué en el laboratorio de informática de la escuela en donde trabajo.
Muchas veces el docente quiere solicitar la atención de los estudiantes que están trabajando en las computadoras. Casi siempre se logra, por lo general insistiendo un par de veces. Pero hay ocasiones (sobre todo con los pibes más chicos) en las que puede ser necesario “bloquear” por unos instantes el uso de la computadora, para que no se pierdan una explicación importante. Esto es un poco violento para mi gusto, particularmente yo lo uso cuando se va un grupo y llega otro. Los chicos encuentran las máquinas “bloqueadas”, y saben que no se “desbloquean” hasta que la actividad no ha sido planteada.
Concretamente, lo que me habían pedido era un script que bloqueara la pantalla, el teclado y el ratón, y otro que revirtiera este efecto.
No sabía cómo hacerlo, así que escribí a la lista del Grupo de Usuarios de Software Libre de Rosario (LUGRo), y me dieron varias sugerencias (Aprovecho para agradecer a Adrián, Omar, Emiliano, Martín, y especialmente a Víctor, que me propuso esta solución). Reconozco que es muy específico lo que aquí comparto, pero me parece que puede ser que en otra escuela resulte útil. (Además, anotarlo acá es una buena manera de tenerlo a mano la próxima vez que lo necesite).
Paso 1: Las máquinas deben tener ip fijas. No es necesario que sean correlativas, pero en mi caso es así, lo que facilita un poco las cosas. (Aquí hay una explicación de cómo poner ip fijas en Ubuntu 10.04).
Paso 2: Debe estar instalado el openssh-server en las máquinas de los estudiantes. Si no está instalado, hay que escribir en un terminal (en cada una de las máquinas):
sudo apt-get install openssh-server
Paso 3: Permitir loguearse con el usuario root (Ubuntu no lo permite por defecto). Para eso, escribir en un terminal:
sudo passwd root
Nos pedirá una contraseña de root, y ya podremos ingresar con este usuario como en las otras distribuciones. (Conviene elegir una contraseña segura, y usar root solamente desde consola.)
Paso 4: Permitir el acceso sin contraseñas al usuario del docente, desde la máquina del mismo. (Aquí está explicado cómo se hace).
Paso 5: Por fin, hacemos el script para bloquear las máquinas:
Abrir un terminal. Escribir sudo gedit bloquear.sh
Se abrirá gedit, allí pegamos el siguiente código:

#!/bin/bash
# Suponiendo que las máquinas tienen ip correlativas de 192.168.0.2 a 192.168.0.16, 
# que el usuario que usan los estudiantes es "chicos", y que se usa gnome:
maquina=2
while [ $maquina -lt 17 ] ; do
  #bloqueamos la pantalla:
  ssh -X chicos@192.168.0.$maquina "export DISPLAY=:0;gnome-screensaver-command -l;"
  #inhabilitamos temporalmente el usuario:
  ssh root@192.168.0.$maquina "passwd -l usuario"
  let maquina=maquina+1 
done

Guardamos y salimos de gedit.

Paso 6: Le damos permiso de ejecución al archivo:
sudo chmod 744 bloquear.sh

Paso 7: Creamos ahora el script para desbloquear las máquinas.
sudo gedit desbloquear.sh
Y copiamos en gedit el siguiente código:

#!/bin/bash
# Con las mismas suposiciones que antes:
maquina=2
while [ $maquina -lt 17 ] ; do
  #rehabilitamos el usuario:	
  ssh root@192.168.0.$maquina "passwd -u usuario"
  #desbloqueamos la pantalla:
  ssh -X chicos@192.168.0.$maquina "export DISPLAY=:0;gnome-screensaver-command -d;"
  let maquina=maquina+1 
done

Una vez más, guardamos y salimos.

Paso 8: Igual que en el paso 6: sudo chmod 744 desbloquear.sh

Ahora, cada vez que queramos bloquear las máquinas, simplemente abrimos una terminal en la máquina del docente, y escribimos:
./bloquear.sh
Y cuando queramos devolverle el control a los usuarios, escribimos en la misma terminal:
./desbloquear.sh

 
3 comentarios

Publicado por en 10/03/2012 en Utilidades

 

Etiquetas: , , , , , ,

“Deep Freeze casero” para GNU/Linux

En un GNU/Linux basado en Debian (como Ubuntu), podemos crear un par de sencillos scripts para obtener una funcionalidad similar al conocido “Deep Freeze”: que la computadora vuelva a su estado original cada vez que se reinicia. Mejor aún: cada vez que se reinicia, o cuando nosotros queramos.
(Ya que estamos, tenía la duda: se dice queramos y no querramos. Fuente.) En fin, paso a explicar.
El abominable Tux de las nieves.

  1. Suponemos que hay un usuario “pruebas”, recién creado, cuyo “home” (/home/pruebas) queremos resguardar.
  2. Vamos a guardar el estado actual de /home/pruebas. Abrimos una terminal. Escribimos:
    sudo gedit /root/guardar.sh
    Eso nos abre el editor de textos, para que creemos el archivo guardar.sh que se guardará en /root (podría guardarse en otra carpeta). En este archivo escribimos:

    #!/bin/bash
    rm -f /root/respaldo.tar
    tar -cpPf /root/respaldo.tar /home/pruebas

    (La primera línea borra cualquier respaldo anterior si es que hubiera alguno. La segunda crea una copia).
    Guardamos y salimos. Luego le asignamos permiso de ejecución al archivo:
    sudo chmod 744 /root/guardar.sh
    De este modo cualquier usuario con permiso de hacer sudo podrá crear una copia de seguridad del estado actual del usuario “pruebas”, en el momento que desee.
  3. Ahora vamos a preparar el script que recuperará el estado original de la sesión del usuario “pruebas”. Desde la terminal:
    sudo gedit /root/recuperar.sh
    En ese archivo escribimos:

    #! /bin/bash
    rm -fR /home/pruebas
    tar -xpPf /root/respaldo.tar

    y de nuevo le esignamos permiso de ejecución, desde la terminal:
    sudo chmod 755 /root/recuperar.sh
  4. El script está listo. Cada vez que queramos volver al usuario “pruebas” a su estado original ejecutamos desde un terminal:
    sudo /root/recuperar.sh (El usuario “pruebas” no debe estar logueado).
  5. ¡Listo! Si queremos que funcione como el famoso Deep Freeze, solamente tenemos que hacer que se ejecute al iniciar GNU/Linux.

Fuentes: 1 2 Imagen

Aviso: Uso este script hace años en la escuela en donde trabajo, siempre con buenos resultados. Pero de ninguna manera me hago cargo de pérdidas de información u otros daños que su uso pudiera ocasionar.

 
16 comentarios

Publicado por en 24/04/2011 en Utilidades

 

Etiquetas: , , , ,

Script para bajar el programa de Dolina

En mi post anterior compartía algunos scripts que uso para escuchar radio. Como complemento, va este post, para escuchar en diferido el programa “La venganza será terrible”, de Alejandro Dolina, que a mi juicio es de lo mejor que existe en los medios argentinos.

¿Por qué en diferido? Sencillamente porque la mencionada audición va de 0 a 2, un horario un poquito inconveniente para quienes tenemos ciertas malas costumbres, como por ejemplo trabajar.
Todo esto es posible gracias al sitio Venganzas del pasado, que suben cada madrugada el programa que acaba de terminar.
Si aun existe alguien que no haya escuchado nunca este programa, larguen todo y vayan a escucharlo.
En fin, vamos a lo nuestro.
El script presupone:

  • Que estamos usando GNU/Linux
  • Que utilizamos el reproductor VLC
  • Que guardamos los programas descargados en una carpeta llamada “dolina” que está en nuestra home (~)
  • Que tenemos conexión a Internet

Vamos paso a paso:

  1. Abrimos una terminal (Aplicaciones –> Accesorios –> Terminal), si usan Ubuntu o Debian
  2. Escribimos gedit dolina.sh
  3. Se abrirá un editor de textos, allí pegamos el siguiente código:

  4. #!/bin/bash
    if [ "$3" == "b" ]
    then
    wget -O ~/dolina/lavenganza_2012-$2-$1.mp3 http://venganzasdelpasado.com.ar/2011/lavenganza_2012-$2-$1.mp3
    fi
    if [ "$3" == "e" ]
    then
    vlc ~/dolina/lavenganza_2012-$2-$1.mp3 &
    fi
    if [ "$3" == "be" ]
    then
    wget -O ~/dolina/lavenganza_2012-$2-$1.mp3 http://venganzasdelpasado.com.ar/2011/lavenganza_2012-$2-$1.mp3
    vlc ~/dolina/lavenganza_2012-$2-$1.mp3 &
    fi

  5. Guardamos y salimos del editor de texto
  6. Asignamos permisos de ejecución escribiendo en el terminal: chmod 744 dolina.sh
  7. Cerramos la terminal

Ahora, cada vez que queramos escuchar “el programa de anoche”, presionamos Alt+F2, y escribimos:
./dolina.sh DD MM op
donde “DD” es el día del mes en que fue emitido el programa “MM” es el número de mes, y “op” es la opción (“b” para bajarlo, “e” para escuchar un programa ya descargado, o “be” para bajar y escuchar un programa).
Por ejemplo, si quiero bajar y escuchar el programa de anoche, 19 de abril, presiono Alt+F2 y escribo:
./dolina.sh 19 04 be
Si quiero únicamente bajar el programa del primero de marzo, para escucharlo en otro momento, presiono Alt+F2 y escribo:
./dolina.sh 01 03 b
Más tarde, cuando quiera escuchar este programa ya descargado, presionaré Alt+F2 y escribiré:
./dolina.sh 01 03 e
En fin, eso es todo. Para los que somos oyentes asiduos del programa, ahorra bastante tiempo. Espero que les sirva.

 
4 comentarios

Publicado por en 20/04/2011 en Utilidades

 

Etiquetas: , , , , ,

Escuchar radio en GNU/Linux desde la terminal

A los que nos gusta la radio, sabemos que lo mejor es usar un receptor de los clásicos, al fin y al cabo Internet no se inventó para eso.
Pero a veces pasa que no tenemos un receptor a mano, o queremos escuchar una emisora que no tiene alcance en la zona en donde estamos.
Radio Spica
Entonces, recurrimos a los servicios de streaming. En este sentido, queremos que nuestra máquina use los recursos que necesita para escuchar la radio, pero ninguno más. Tener abierto un reproductor de audio o una pestaña del navegador es absolutamente innecesario.
Como prerrequisito, hay que tener instalado el reproductor vlc, que soporta la orden cvlc (sin interfaz). También podría usarse mplayer. (Para instalar vlc, escribimos desde una terminal sudo apt-get install vlc ).
Vamos a explicarlo con la Radio Pública, AM 870 de Buenos Aires, obviamente es similar con otras emisoras. Vamos paso a paso.

  1. Abrimos una terminal. (Aplicaciones –> Accesorios –> Terminal si estamos en Ubuntu).
  2. Escribimos gedit radionacional.sh (“radionacional.sh” puede reemplazarse por cualquier otro nombre.
  3. Se abre el editor de texto, y allí escribimos:
    #!/bin/bash
    cvlc http://208.85.241.150:8010 &
  4. Guardamos y salimos del editor de texto
  5. De vuelta en la terminal escribimos chmod 744 radionacional.sh para darle permiso de ejecución.
  6. Salimos de la terminal

Ahora, cada vez que queramos escuchar la radio, tocamos Alt+F2, y allí escribimos ./radionacional.sh
Y listo.
Para otras emisoras:
En el paso 2), tenemos que escribir gedit elnombrequevosquieras.sh (“.sh” es una convención, no es obligatorio).
En el paso 3), el segundo renglón sería:

Importante: Para “apagar la radio”, otra vez Alt+F2 y escribimos killall vlc
¿Otras emisoras? ¿Alguna sugerencia? ¡Espero comentarios!

Actualización: Algunos prefieren usar mplayer en lugar de vlc. Para ello, debemos seguir los pasos ya explicados, pero escribiendo mplayer en lugar de cvlc (o vlc).

Fuente de la imagen

 
10 comentarios

Publicado por en 17/04/2011 en Utilidades

 

Etiquetas: , , ,