Ubuntu Virtual EPS 2022 (VDI)

Durante el verano de 2022, y con la mirada puesta en el Curso 2022/23, se ha procedido a la actualización de la distribución Ubuntu de los laboratorios y Aulas de la EPS.

Pasamos de la versión Ubuntu 20.04.3 LTS a Ubuntu 20.04.4 LTS.

El nuevo VDI contiene el siguiente listado de SW de la imagen de Ubuntu 20.04.4 LTS de las Aulas/Laboratorios de la EPS:

7z (7-Zip) 16.02 
Adminer (4.8.1) 
angular CLI (12.0.5) 
apache-tomcat-9.0.53 
apache2 (2.4.41) 
apache2-common (2.4.41) 
apio-0.7.6 para python 3.8 
apt (2.0.9) 
Axis2-1.8.0 
bash-5.0.17 
bd-dss_user-dss 
bison-3.5.1 
bower-1.8.12 
C/C++ Tools (v1.10.8) (VSCode) 
Chromium Browser (85.0.4183.83) 
clang (10.0.0-4) 
CMake Tools v1.11.26 (VSCode) 
cmake-3.16.3 
composer (2.2.4) 
containerd (1.5.9) 
ddd (3.3.12-5.2) 
ddd-doc (3.3.12-5.2) 
distcc (3.3.3) 
dlib-19.12 
docker (1.5-2) 
docker-compose (1.25.0-1) 
docker-image-node10-node10-alpìne 
docker-image-nodered/node-red:latest 
docker-images-mysql-domingogallardo-playframework 
docker-swift (latest) 
docker.io (20.10.12-0) 
DotENV (1.0.1) Plugin para VSCode 
Driver Asus AC56 USB-Wifi rtl8812au (4.3.8.12175) 
Driver Asus AC56 USB-Wifi rtl8812au (v5.6.4.2) 
Eclipse C/C++ IDE for Linux Developers 2022-06-R 
Eclipse Java IDE for Linux Developers 2022-06-R 
Eclipse JEE IDE for Linux Developers 2022-06-R 
editores de texto 
Emacs26 (26.3+1) 
evince (3.36.10-0) 
exfat-fuse (1.3.0-1) 
exfat-utils (1.3.0-1) 
expo-cli (4.12.8) 
ffmpeg (4.2.7-0) 
Filezilla (3.46.3-1) 
Firefox (102.0) 
flex (2.6.4-6.2) 
fpga-alhambra-icezum 
g++ (9.4.0-1) 
g++-9-arm-linux-gnueabihf 
g++-9-multilib 
g++-9-multilib-arm-linux-gnueabihf 
g++-9-riscv64-linux-gnu 
gawk (5.0.1) 
gcc (9.4.0-1) 
gcc-9-arm-linux-gnueabihf 
gcc-9-arm-linux-gnueabihf-base 
gcc-9-cross-base 
gcc-9-multilib 
gcc-9-multilib-arm-linux-gnueabihf 
gcc-9-riscv64-linux-gnu 
gcc-9-riscv64-linux-gnu-base 
gcc-msp430 (4.6.3) 
gdb-9.2-0 
gdm3 (3.36.3-0) 
geany-1.36-1 
gedit-3.36.2-0 
generator-jhipster-7.1.0 
gfortran (9.4.0-1) 
ghostscript (9.50) 
Gimp (2.10.18-1) 
git (2.25.1-1) 
Gnome (3.36) 
Google Chrome 103.0.5060.114-1 (64 bits) 
graphviz (2.42.2-3) 
grunt-cli-1.4.3 
GTK2 (2.24.32) 
GTK3 (3.24.20) 
gtkwave (3.3.103) 
gulp-4.0.2 
gulp-cli-2.3.0 
intelliJ-IDEA-Ultimate (2022.1.3) 
jdk1.8.0 Update 333 (64 bits) 
jdk1.8.0 Update 333 APIdocs 
jhipster-0.0.2 
jhipster-uml (2.0.3) 
jmeter-junit (2.13-4) 
joe (4.6-1) 
junit-3.8.2-9 
junit4 (4.12-8) 
kate-19.12.3 
Kernel 5.10.0-1058-oem-x86_64 
konsole-19.12.3 
libapache2-mod-php8.1 (8.1.8-1) 
libfl-dev (2.6.4-6.2) 
libfreetype-dev (2.10.1-2) 
libfreetype6 (2.10.1-2) 
libice-dev (1.0.10) 
libice6 (1.0.10-0) 
libjna-java (4.5.2-1) 
libjna-jni (4.5.2-1) 
libjna-platform-java (4.5.2-1) 
libmariadb-java (2.5.3-1) 
libmysqlclient-dev (8.0.29-0) 
libmysqlclient21 (8.0.29-0) 
libmysqlcppconn-dev (1.1.12-4) 
libmysqlcppconn7v5 (1.1.12-4) 
libntfs-3g883 (2017.3.23AR.3-3) 
libogre-1.9-dev (1.9.0) 
libogre-1.9.0v5 
libopencv-core4.2 (4.2.0) 
libopenmpi-dev (4.0.3) 
libopenmpi3 (4.0.3-0) 
libpam0g-dev (1.3.1-5) 
libsfml-dev-2.5.1 
libsm-dev (1.2.3-1) 
libsm6 (1.2.3-1) 
libssl-dev (1.1.1f) 
libssl1.1 (1.1.1f) 
libx11-6 (1.6.9-2) 
libx11-xcb-dev (1.6.9-2) 
libxt-dev (1.1.5-1) 
libxt6 (1.1.5-1) 
Mars4_5 
mongodb (3.6.9) 
mongodb-clients (3.6.9) 
mongodb-server (3.6.9) 
mongodb-server-core (3.6.9) 
mpich (3.3.2-2) (distrib focal) 
mpich-3.4.3 (compilado aparte para DSAP y CAP) 
mysql-client (8.0.29-0) 
mysql-server (8.0.29-0) 
mysql-server-core-8.0 (8.0.29-0) 
mysql-workbench-community (8.0.23-1) 
nemiver (0.9.6-1.2) 
Netbeans-14.0 
node-v16.16.0 (nodejs-v16.16.0) 
nodejs 
nodemon (2.0.19) 
npm-7.18.1 
ntfs-3g (2017.3.23AR.3-3) 
NVIDIA 340 (340.108) 
OpenCV (4.2.0) 
opencv-data (4.2.0) 
OpenJDK (11.0.15+10.0) 
openmpi-bin (4.0.3-0) 
openmpi-common (4.0.3-0) 
OpenSSH_8.2p1-4 
openssl (1.1.1f-1) 
pa-2022-23_VM 
Paquetes parche CVE-2021-4034 polkit-1 (pwnkit.c) 
PCL-1.10.0 
PHP Intelephense (1.8.2) Plugin para VSCode 
php-7.4-bcmath (7.4.30-3) 
php-7.4-bz2 (7.4.30-3) 
php-7.4-cli (7.4.30-3) 
php-7.4-common (7.4.30-3) 
php-7.4-curl (7.4.30-3) 
php-7.4-dev (7.4.30-3) 
php-7.4-gd (7.4.30-3) 
php-7.4-json (7.4.3-4) 
php-7.4-mbstring (7.4.30-3) 
php-7.4-mysql (7.4.30-3) 
php-7.4-opcache (7.4.30-3) 
php-7.4-readline (7.4.30-3) 
php-7.4-sqlite (7.4.30-3) 
php-7.4-xml (7.4.30-3) 
php-7.4-zip (7.4.30-3) 
php-7.4.3-4 (7.4.30-3) 
php8.1 (8.1.8-1) 
php8.1-bcmath (8.1.8-1) 
php8.1-curl (8.1.8-1) 
php8.1-gd (8.1.8-1) 
php8.1-mbstring (8.1.8-1) 
php8.1-mysql (8.1.8-1) 
php8.1-xml (8.1.8-1) 
pip3 (22.0.3) de python3.8 
pip3 h5py (2.10.0) 
pip3 ipython (7.24.1) 
pip3 jupyter (1.0.0) 
pip3 jupyterlab (3.0.16) 
pip3 Keras (2.2.4) 
pip3 matplotlib (3.1.2) 
pip3 numpy (1.19.5) 
pip3 opencv-contrib-python (4.5.1.48) 
pip3 pandas (1.3.5) 
pip3 scikit-image (0.18.1) 
pip3 scikit-learn (0.22.2.post1) 
pip3 scipy (1.3.3) 
pip3 sklearn (0.0) 
pip3 tensorflow (2.4.1) 
pip3 tensorflow-estimator (2.4.0) 
pip3 theano (1.0.4) 
pip3 virtualenv (20.0.17-1) 
Postman (7.36.5) 
pvm (3.4.6-2) 
pvm-dev (3.4.6-2) 
python3 (3.8.10) 
python3-dev (3.8.10-0) 
python3-mysql.connector (8.0.15-2) 
python3-opencv (4.2.0) 
python3-pymysql (0.9.3-2) 
python3-rosbag (1.14.3) 
python3-rosboost-cfg (1.14.7) 
python3-rosclean (1.14.7) 
python3-roscpp-msg (1.14.3) 
python3-roscreate (1.14.7) 
python3-rosdep (0.22.1-1) 
python3-rosdep-modules (0.22.1-1) 
python3-rosdistro (0.9.0-100) 
python3-rosdistro-modules (0.9.0-100) 
python3-rosgraph (1.14.3) 
python3-rosgraph-msgs (1.11.2-10) 
python3-rosinstall (0.7.8-4) 
python3-rosinstall-generator (0.1.22-1) 
python3-roslaunch (1.14.3) 
python3-roslib (1.14.7) 
python3-roslz4 (1.14.3) 
python3-rosmake (1.14.7) 
python3-rosmaster (1.14.3) 
python3-rosmsg (1.14.3) 
python3-rosnode (1.14.3) 
python3-rosparam (1.14.3) 
python3-rospkg (1.4.0-100) 
python3-rospkg-modules (1.4.0-100) 
python3-rospy (1.14.3) 
python3-rosservice (1.14.3) 
python3-rostest (1.14.3) 
python3-rostopic (1.14.3) 
python3-rosunit (1.14.7) 
python3-roswtf (1.14.3) 
python3-rviz (1.13.7) 
python3-tf2-ros (0.6.6-1) 
python3.8 (3.8.10-0) 
python3.8-dev (3.8.10) 
qemu-4.2-3 
qemu-block-extra-4.2-3 
qemu-efi-aarch64 (20191122) 
qemu-efi-arm (20191122) 
qemu-guest-agent-4.2-3 
qemu-kvm (4.2-3) 
qemu-slof (20191209) 
qemu-system (4.2-3) 
qemu-system-arm (4.2-3) 
qemu-system-common (4.2-3) 
qemu-system-data (4.2-3) 
qemu-system-gui (4.2-3) 
qemu-system-mips (4.2-3) 
qemu-system-misc (4.2-3) 
qemu-system-ppc (4.2-3) 
qemu-system-s390x (4.2-3) 
qemu-system-sparc (4.2-3) 
qemu-system-x86 (4.2-3) 
qemu-system-x86-microvm (4.2-3) 
qemu-user (4.2-3) 
qemu-user-static (4.2-3) 
qemu-utils (4.2-3) 
Qt Creator (4.11.0) 
qt5-default (5.12.8) 
qtbase5-dev (5.12.8) 
Racket-8.5 
resolvconf (1.82) 
ROS Noetic (ros-noetic-desktop-full) (1.5.0-1) 
ros-noetic-effort-controllers (0.20.0-1) 
ros-noetic-pcl-conversions (1.7.4-1) 
ros-noetic-pcl-msgs (0.3.0-1) 
ros-noetic-pcl-ros (1.7.4-1) 
ros-noetic-perception-pcl (1.7.4-1) 
ros-noetic-pybind11-catkin (2.5.0-1) 
ros-noetic-pyquaternion (0.9.6-1) 
ros-noetic-python-qt-binding (0.4.4-1) 
ros-noetic-rospy-tutorials (0.10.2-1) 
ros-noetic-rosserial-python (0.9.2-1) 
ros-noetic-rviz (1.14.14-1) 
ros-noetic-rviz-python-tutorial (0.11.0-1) 
ros-pcl-msgs (0.2.0-10) 
rviz (1.13.7) 
samba (4.13.17) 
samba-common (4.13.17) 
samba-dev (4.13.17) 
samba-libs (4.13.17) 
scp 
smbclient (4.13.17) 
SMC 2.5 
snapd (2.55.5+20.04) 
SoapUI-5.6.0 
Spanish Language Pack for Visual Studio Code 
Spring Tool Suite (4.11.0) 
squashfs-tools (4.4-1) 
Sublime Text 3.2.2 (Build 3211) 
Sublime Text 4 (Build 4126) 
swi-prolog (7.6.4) 
Thonny(3.3.13)+pygame+thinter-math+Tensorflow 
thunderbird (91.11.0) 
Turtlebot 2 (tb2_ws) (ROS Noetic) 
Turtlebot 3 (ROS Noetic) 
Ubuntu 20.04.4 LTS x86_64 (64 bits) 
Ubuntu-Virtual-STR21 
ufw (0.36) 
Unity (7.5.1) 
valgrind (3.15.0-1) 
veyon-service (4.6.0) 
vim (8.1.2269-1) 
VirtualBox (6.1.32_Ubuntu r149290)+Oracle Ext Pack 
Visual Studio Code - VSCode (1.69.1) 
vue/cli (4.5.13) 
winXP-SP3-Requisite_VM 
ws_rviz_new (1.14.9) 
X11 entorno gráfico (7.7+8) 
xorg (7.7+19) 
xorg-dev (7.7+19) 
xserver-xorg-dev (1.20.13-1) 
yarn-1.22.10 
Yeoman (yo) 4.2.0 

Poner en marcha el VDI es muy sencillo y requiere de los siguientes pasos:

1. Instalar/actualizar la plataforma VirtualBox descargando de https://www.virtualbox.org/

Las pruebas del VDI las hemos hecho con la versión 6.1.32 de VirtualBox, con las Guest Additions de esta versión instaladas en dicho VDI.

En un anfitrión Linux Ubuntu 20.04, por ejemplo, se puede instalar la plataforma, una vez descargado el paquete .deb, así:

dpkg -i virtualbox-6.1_6.1.32-149290_Ubuntu_focal_amd64.deb

En un anfitrión Windows habrá que descargar el paquete correspondiente e instalarlo.

2. Descargar el VDI desde esta URL de OneDrive de Microsoft:

https://unialicante-my.sharepoint.com/:u:/g/personal/azureeps_mscloud_ua_es/EWcKqnEFJttHqpAFO8R-ugUBvdEZt-ZI7-Jwi6SW0Y0E4w

Veremos que nos aparece una página así:

¡¡Hay que pulsar el botón Descargar!!


NOTA: Ha habido que cambiar el alojamiento del fichero VDI de Google Drive a OneDrive pues Google establece una cuota límite de descarga de 15GB por usuario que impedía la descarga del fichero de la máquina virtual por superar dicho tamaño.


3. Crear la máquina virtual:

Botón Nueva
Nombre: VDIUbuntuEPS2022
Sistema Operativo:  Ubuntu (64 bits)
Memoria: 4096 MB (mínimo 2048 MB).
El disco duro que utilizaremos ya estará creado y almacenado en nuestro equipo pues previamente lo habremos descargado y tendrá como nombre: VDIUbuntuEPS2022.vdi

4. Configuramos la máquina virtual (Menú Configuración):

  • Sistema -> Placa base -> Memoria 4096 MB
  • Sistema -> Orden de arranque -> Disco Duro (primera opción y marcar sólo ésta)
  • Sistema -> Chipset -> PIIX3
  • Sistema -> Dispositivo apuntador -> Tableta USB
  • Sistema -> Características extendidas -> Marcar Habilitar I/O APIC
  • Sistema -> Características extendidas -> Marcar Reloj hardware en tiempo UTC

  • Sistema -> Procesador -> 3 o 4 (dependiendo del nº de CPUs que tengamos)
  • Sistema Límite de Ejecución -> 100%

  • Sistema -> Aceleración -> Interfaz de paravirtualización -> Predeterminado
  • Sistema -> Aceleración -> Hardware de virtualización -> Marcar Habilitar Paginación Anidada.

  • Pantalla -> Memoria de vídeo 128 MB
  • Pantalla -> Controlador gráfico -> VMSVGA
  • Pantalla  -> Habilitar Aceleración 3D

  • Almacenamiento -> Controlador IDE -> (tendremos un CD vacío)

Cuando haya que instalar las GuestAdditions (porque la versión del estudiante no sea la misma que la que lleva de Additions el VDI), habrá que añadir un CD adicional y seleccionar el archivo VBoxGuestAdditions.iso

  • Almacenamiento -> Controlador SATA -> (aparecerá el VDI descargado ya con el Attach hecho)

Como comentábamos, si la versión de la plataforma es la 6.1.32 y es igual a la del alumno, no habrá que añadir temporalmente la ISO de las Additions ni instalarlas posteriormente cuando arranquemos la máquina virtual.

  • Audio -> Dejamos todo por defecto como esté
  • Red -> Dejamos por defecto
  • Puertos serie -> Dejamos por defecto
  • USB -> Habilitar controlador USB 3.0 y crear un filtro vacío si queremos que el virtual pueda acceder a memorias externas USB.
  • Carpetas compartidas -> Dejamos por defecto
  • Interfaz de usuario -> Dejamos por defecto

Ya queda configurada la nueva máquina virtual VDIUbuntuEPS2022

5. Lanzamos la máquina virtual (botón Iniciar estando el foco sobre la misma).

Veremos que aparece muy brevemente un gestor de arranque GRUB con GNU/Linux con Kernel 5.14.0-1042-oem con muy poco tiempo de espera y que empieza a cargar Ubuntu 20.04 LTS con una animación.

Dependiendo del tipo de disco duro, si es SSD o si es mecánico, tardará entre 40 segundos y un par de minutos en arrancar.

Una vez arranque, cargará directamente el Escritorio con Autologin al usuario alumno y veremos algo parecido a esto en Modo Ventana:

El usuario podrá, al abrir una terminal de texto dentro del entorno gráfico, pasar a ser root, así:

sudo su

No pedirá contraseña, pero si la pidiera, la contraseña es también: alumno

La contraseña de root, también es, igualmente: alumno

La seguridad en cuanto a control de accesos y usuarios del sistema es mínima porque el VDI se enfoca a un uso personal en casa o en el portátil del alumno para hacer sus prácticas.  Está todo configurado para ello.

Si el alumno hace mal algo, borra o inutiliza el sistema parcial o totalmente, bien para arrancar, bien para ejecutar cualquier programa o, por apagarla mal, corrompe el VDI, deberá descargárselo de nuevo.

Recomendación

Se recomienda, sobre todo si el fichero VDI contuviera más adelante datos, código, programas, proyectos o documentación importante para el usuario (alumno o profesor), que se haga periódicamente una COPIA de SEGURIDAD del mismo.

Tanto en un anfitrión Windows como en un anfitrión GNU/Linux, es muy sencillo guardar una copia de seguridad de nuestro VDI para evitar que, si se nos corrompe o queda inutilizado, perdamos todo lo nuestro relevante que tuviéramos en él.

Caso de tener un incidente en el VDI actual, partiendo de la última copia de seguridad del mismo, podríamos restaurar nuestra máquina virtual al estado que tenía en ese momento y, aunque pudiera haber una pérdida parcial de archivos nuestros desde el momento de dicha copia hasta el momento actual, ésta no sería total.


Opcional

(Sólo si la versión de la plataforma VirtualBox del estudiante no fuera la misma que incluimos en las Guest Additions del VDI)

Por defecto, hemos incluido las Additions de la versión 6.1.32 de VirtualBox.

Para instalar otra versión de VirtualBox Guest Additions distinta de la ya instalada, tenemos dos opciones:

  • Máquina virtual ya encendida y funcionando:

Menú Dispositivos -> Insertar imagen de CD de las “Guest Additions”…

Esto, insertará en la unidad de CD del equipo, estemos en Windows o en Ubuntu como anfitrión, el CD de las Additions.

En anfitriones Windows, nos dará mediante un menú de instalación amigable, la posibilidad de instalar las Additions de nuestra versión de VirtualBox instalada. En el caso de que hubiera otra versión ya antes, ofrecerá desinstalarla previamente.

En anfitriones GNU/Linux, nos dará también la oportunidad de Ejecutar desde un menú amigable aunque, particularmente, prefiero como root, lanzar el script VBoxLinuxAdditions.run así:

cd /media/alumno/VBox_GAs_6.1.32 
./VBoxLinuxAdditions.run

(y ejecutar la instalación de las Guest Additions)

  • Máquina virtual apagada:

Situamos el foco sobre ella, Menú Configuración -> Almacenamiento -> Controlador IDE -> Añadir CD y seleccionar el archivo VBoxGuestAdditions.iso

Dependiendo de si el anfitrión es Windows 10 o Ubuntu, el archivo estará en distintas ubicaciones.

En Windows 10 estará en el directorio de instalación de VirtualBox y en anfitriones GNU/Linux estará en /usr/share/virtualbox

Guardamos, iniciamos el virtual y, cuando lleguemos a este punto, veremos el attach del CD de las Guest Additions realizado en la parte inferior izquierda:

Entonces, abrimos una terminal de texto como indicamos y lanzamos las Additions como en la imagen anterior.

Una vez instaladas, cerramos la terminal (salimos de root con el comando exit y otra vez salimos del usuario alumno con el comando exit).

Entonces, nos colocamos con el ratón sobre el CD de la parte inferior izquierda, y le damos a Expulsar (para que no se nos quede eternamente metido el CD de las Guest Additions en la máquina virtual).

Tomemos el método que tomemos, ya tendremos instaladas en nuestro VDI las Guest Additions de la versión de nuestra plataforma anfitriona VirtualBox.

Ubuntu Virtual EPS 2021 (VDI) (Actualización 2º cuatrimestre curso 2021/22)

Con la llegada del 2º cuatrimestre, fruto de las peticiones de SW del mismo, tenemos programas nuevos de Ubuntu 20.04 en las Aulas/Laboratorios de Informática la EPS.

Por tanto, se hace necesario publicar una versión completa y actualizada del mismo como es este caso.

Además, la idea también era aprovechar esta actualización para que el potencial espacio libre disponible en la partición /dev/sda2 del VDI fuera también mayor (si en el 1º cuatrimestre era de unos 27GB, ahora ese espacio libre aumenta hasta los 77 GB). Esto se ha conseguido ampliando el tamaño máximo del disco de 100GB (con 95GB para /dev/sda2) a 150GB (con 145GB para esa misma partición).

El fichero VDI final a descargar ocupa 92,08 GB reales y, como es un disco dinámico, puede aumentar su tamaño, como hemos comentado antes, hasta 150 GB.

En la partición /dev/sda2 hay ocupados por defecto unos 65 GB como se observa en la imagen adjunta:

Listado particiones y sistemas de archivos montados en VDI Ubuntu EPS 2021 2º cuat
Listado particiones y sistemas de archivos montados en VDI Ubuntu EPS 2021 2º cuat

Este fichero VDI contiene el mismo SW que en el publicado el 29 de noviembre de 2021 pero, además, tenemos como SW nuevo:

Adminer (4.8.1)
BD MySQL para DSS con usuario dss
C/C++ Tools (v1.4.1) (VSCode)
clang (10.0.0-4)
CMake Tools v1.9.2 (VSCode)
cmake-3.16.3 
composer (2.2.4)
DotENV (1.0.1) Plugin for Visual Studio Code
dlib-19.12 (dlib.net)
Filezilla (3.46.3)
Firefox (96.0)
flex (2.6.4)
gfortran-9.3.0
Google Chrome (98.0.4758.80-1)
GuestAdditions(6.1.32 r149290)
libfreetype-dev (2.10.1)
libfreetype6 (2.10.1)
libice-dev (1.0.10)
libice6 (1.0.10)
libsfml-dev (2.5.1)
libsm-dev (1.2.3-1)
libsm6 (1.2.3-1)
libxt-dev (1.1.5-1)
libxt6 (1.1.5-1)
Mars4_5
mpich-3.4.3 (compilado e instalado desde los fuentes)
mysql-client-8.0.28 
mysql-server-8.0.28 
mysql-server-core-8.0 (8.0.28) 
OpenCV (4.2.0)
OpenSSH_8.2p1
PCL-1.10.0
PHP Intelephense (1.8.0) Plugin for Visual Studio Code 
php8.1 (8.1.2-1) 
php8.1-bcmath (8.1.2-1) 
php8.1-curl (8.1.2-1) 
php8.1-gd (8.1.2-1) 
php8.1-mbstring (8.1.2-1) 
php8.1-mysql (8.1.2-1) 
php8.1-xml (8.1.2-1) 
pvm (3.4.6)
python3-rosbag (1.14.3),
python3-rosboost-cfg (1.14.7)
python3-rosclean (1.14.7)
python3-roscpp-msg (1.14.3)
python3-roscreate (1.14.7)
python3-rosdep
python3-rosdep-modules (0.21.0-1)
python3-rosdistro (0.8.3-100)
python3-rosdistro-modules (0.8.3-1)
python3-rosgraph (1.14.3)
python3-rosgraph-msgs (1.11.2-10)
python3-rosinstall (0.7.8-4)
python3-rosinstall-generator (0.1.22-1)
python3-roslaunch (1.14.3)
python3-roslib (1.14.7)
python3-roslz4 (1.14.3)
python3-rosmake (1.14.7)
python3-rosmaster (1.14.3)
python3-rosmsg (1.14.3)
python3-rosnode (1.14.3)
python3-rosparam (1.14.3)
python3-rospkg (1.3.0-100)
python3-rospkg-modules (1.3.0-1)
python3-rospy (1.14.3)
python3-rosservice (1.14.3)
python3-rostest (1.14.3)
python3-rostopic (1.14.3)
python3-rosunit (1.14.7)
python3-roswtf (1.14.3)
python3-rviz (1.13.7)
python3-tf2-ros (0.6.6)
ROS Noetic (ros-noetic-desktop-full) (1.5.0-1)
ros-noetic-pcl-conversions (1.7.3)
ros-noetic-pcl-msgs (0.3.0)
ros-noetic-pcl-ros (1.7.3)
ros-noetic-perception-pcl (1.7.3)
ros-noetic-pybind11-catkin (2.5.0)
ros-noetic-pyquaternion (0.9.6)
ros-noetic-python-qt-binding (0.4.4)
ros-noetic-rospy-tutorials (0.10.2)
ros-noetic-rosserial-python (0.9.2)
ros-noetic-rviz-python-tutorial (0.11.0)
ros-pcl-msgs (0.2.0-10)
OpenCV (4.2.0)
PCL-1.10.0 
pip3 open3d (0.13.0)
Qt Creator(4.11.0)
Racket-8.3
Spanish Language Pack for Visual Studio Code 
Visual Studio Code - VSCode (1.64)  

El enlace de descarga del fichero VDI es éste:

https://drive.google.com/uc?id=1Amr86ksDUezFh6TQlcojzvF5eK2e09Wm&export=download

Es fundamental para la descarga que el usuario o usuaria que quiera descargarlo, esté validado previamente en Google con su cuenta de GCloud (@gcloud.ua.es). De no ser así, tendrá problemas o, directamente, no podrá descargarlo.

Si, desde el 1º cuatrimestre hasta la fecha, hemos actualizado la versión de nuestra plataforma VirtualBox, es conveniente reinstalar las Guest Additions del propio VDI a dicha nueva versión que tengamos instalada.  Por ejemplo, en el 1º cuatrimestre teníamos la 6.1.30 y ahora, al haber actualizado la plataforma de virtualización a la 6.1.32, pues es conveniente actualizar las Additions instaladas en el VDI a las de dicha versión como ya vienen instaladas en el propio VDI.

La creación y configuración de la máquina virtual con este nuevo fichero VDI es similar a la indicada en el artículo del Blog referente a la instalación del Ubuntu Virtual EPS 2021 del 1º cuatrimestre:

Ubuntu Virtual EPS 2021 (VDI)

Una vez configurada la nueva máquina virtual con el nuevo VDI y arrancada ésta en Modo Ventana, obtendremos como imagen del Escritorio de Ubuntu algo similar a esto:

Escritorio Ubuntu Virtual EPS 2021 2º cuatrimestre
Escritorio Ubuntu Virtual EPS 2021 2º cuatrimestre

Ha entrado automáticamente, por autologin, con el usuario alu.

El usuario puede pasar a ser root desde una terminal de modo gráfico tecleando:

sudo su

En cualquier momento, si se estima oportuno, se puede pasar la máquina virtual a Modo Pantalla Completa (“Host+F“, siendo Host, normalmente por defecto, la tecla “Ctrl derecho”).


Por último, indicamos el SW incompatible no instalado en la máquina virtual por diversas razones:

  • XAMPP-8.0.0-3  (con Apache2 + Adminer(4.8.1) + PHP 8.1):  Si instalamos juntos, ni funciona bien XAMPP ni tampoco funciona Adminer (ni siquiera se lanza).
  • Máquinas virtuales de los laboratorios de la EPS (PPSS-2021-22, PA-2019-20, str21 y winXP-SP3-Requisite): como consecuencia del gran espacio que ocupan y que lanzar una máquina virtual desde dentro de otra  máquina virtual, aunque factible, puede hacer que la primera ya no funcione con la debida fluidez.

¡¡Esperamos que esta versión del nuevo fichero VDI de Ubuntu Virtual EPS 2021 os pueda ayudar en vuestras prácticas del 2º cuatrimestre!!

Ubuntu Virtual EPS 2021 (VDI)

Con la llegada del curso 2021/22 y el cambio de distribución de GNU/Linux en los laboratorios de la EPS, se hacía necesaria una versión del VDI completamente nueva, de imagen diferente y con los programas de las peticiones de SW de este curso completamente actualizados a octubre/noviembre de 2021.

El nuevo VDI contiene el siguiente listado de SW de la base de Ubuntu 20.04.3 LTS:

angular CLI (12.0.5) 
apache2 (2.4.41) 
apache2-common (2.4.41) 
apio-0.7.6 para python 3.8 
apt (2.0.6) 
bash-5.0.17 
bison++ (1.21.11) 
bower-1.8.12 
Chromium Browser (85.0.4183.83) 
composer-1.10.1 
containerd (1.5.2) 
ddd (3.3.12-5) 
ddd-doc (3.3.12-5) 
docker (1.5-2) 
docker-compose (1.25.0) 
docker-image-node10-node10-alpìne 
docker-image-nodered/node-red:latest 
docker-images-mysql-domingogallardo-playframework 
docker-swift (latest) 
docker.io (20.10.2) 
Driver Asus AC56 USB-Wifi rtl8812au (4.3.8.12175) 
Driver Asus AC56 USB-Wifi rtl8812au (v5.6.4.2) 
editores de texto 
Emacs26 (26.3) 
evince (3.36.7-0) 
exfat-fuse (1.3.0-1) 
exfat-utils (1.3.0-1) 
expo-cli (4.12.8) 
ffmpeg (4.2.4-1) 
Firefox (91.0.2) 
fpga-alhambra-icezum 
g++-9-arm-linux-gnueabihf 
g++-9-multilib 
g++-9-multilib-arm-linux-gnueabihf 
g++-9-riscv64-linux-gnu 
g++-9.3.0 
gawk (5.0.1) 
gcc-9-arm-linux-gnueabihf 
gcc-9-arm-linux-gnueabihf-base 
gcc-9-cross-base 
gcc-9-multilib 
gcc-9-multilib-arm-linux-gnueabihf 
gcc-9-riscv64-linux-gnu 
gcc-9-riscv64-linux-gnu-base 
gcc-9.3.0 
gcc-msp430 (4.6.3) 
gdb-9.2-0 
gdm3 (3.36.3-0) 
geany-1.36-1 
gedit-3.36.2-0 
generator-jhipster-7.1.0 
ghostscript (9.50) 
Gimp (2.10.18-1) 
git (2.25.1-1) 
Gnome (3.36) 
Google Chrome 94.0.4606.71-1 (64 bits) 
graphviz-2.42.2 
grunt-cli-1.4.3 
GTK2 (2.24.32) 
GTK3 (3.24.20) 
gulp-4.0.2 
gulp-cli-2.3.0 
intelliJ-IDEA-Ultimate (2021.1.3) 
jhipster-0.0.2 
jhipster-uml (2.0.3) 
jmeter-junit (2.13-4) 
joe-4.6 
junit-3.8.2-9 
junit4 (4.12-8) 
kate-19.12.3 
Kernel 5.10.0-1049-oem-x86_64 
konsole-19.12.3 
libjna-java (4.5.2) 
libjna-jni (4.5.2) 
libjna-platform-java (4.5.2) 
libmariadb-java (2.5.3-1) 
libmysqlclient-dev (8.0.26) 
libmysqlclient21 (8.0.26) 
libmysqlcppconn-dev (1.1.12-4) 
libmysqlcppconn7v5 (1.1.12-4) 
libntfs-3g883 (2017.3.23AR.3-3) 
libogre-1.9-dev (1.9.0) 
libogre-1.9.0v5 
libopenmpi-dev (4.0.3) 
libopenmpi3 (4.0.3) 
libpam0g-dev (1.3.1) 
libssl-dev (1.1.1f) 
libssl1.1 (1.1.1f) 
libx11-6 (1.6.9-2) 
libx11-xcb-dev (1.6.9-2) 
mongodb (3.6.9) 
mongodb-clients (3.6.9) 
mongodb-server (3.6.9) 
mongodb-server-core (3.6.9) 
mysql-client-8.0.26 
mysql-server-8.0.26 
mysql-server-core-8.0 (8.0.26) 
mysql-workbench-community (8.0.23-1) 
nemiver-0.9.6 
node-v16.10.0 (nodejs-v16.10.0) 
nodejs 
nodemon-2.0.7 
npm-7.18.1 
ntfs-3g (2017.3.23AR.3-3) 
NVIDIA 460 
OpenJDK 11.0.11 
openmpi-bin (4.0.3) 
openmpi-common (4.0.3) 
openssl (1.1.1f) 
php-7.4-bcmath (7.4.3-4) 
php-7.4-bz2 (7.4.3-4) 
php-7.4-cli (7.4.3-4) 
php-7.4-common (7.4.3-4) 
php-7.4-curl (7.4.3-4) 
php-7.4-dev (7.4.3-4) 
php-7.4-gd (7.4.3-4) 
php-7.4-json (7.4.3-4) 
php-7.4-mbstring (7.4.3-4) 
php-7.4-mysql (7.4.3-4) 
php-7.4-opcache (7.4.3-4) 
php-7.4-readline (7.4.3-4) 
php-7.4-sqlite (7.4.3-4) 
php-7.4-xml (7.4.3-4) 
php-7.4-zip (7.4.3-4) 
php-7.4.3-4 
pip3 (21.1.2) de python3.8 
pip3 h5py (3.1.0) 
pip3 jupyter (1.0.0) 
pip3 jupyterlab (3.0.16) 
pip3 Keras (2.2.4) 
pip3 matplotlib (3.1.2) 
pip3 numpy (1.19.5) 
pip3 opencv-contrib-python (4.5.1.48) 
pip3 pandas (0.25.3) 
pip3 scikit-image (0.18.1) 
pip3 scikit-learn (0.22.2.post1) 
pip3 scipy (1.3.3) 
pip3 sklearn(0.0) 
pip3 tensorflow-estimator (2.5.0) 
pip3 tensorflow-gpu (2.5.0) 
pip3 theano (1.0.4) 
pip3 virtualenv (20.0.17-1) 
Postman (7.36.5) 
python3 (3.8.2) 
python3-dev (3.8.2) 
python3-mysql.connector (8.0.15-2) 
python3-pymysql (0.9.3-2) 
python3-rviz (1.13.7) 
python3.8 (3.8.10) 
python3.8-dev (3.8.10) 
qemu-4.2-3 
qemu-block-extra-4.2-3 
qemu-efi-aarch64 (20191122) 
qemu-efi-arm (20191122) 
qemu-guest-agent-4.2-3 
qemu-kvm (4.2-3) 
qemu-slof (20191209) 
qemu-system (4.2-3) 
qemu-system-arm (4.2-3) 
qemu-system-common (4.2-3) 
qemu-system-data (4.2-3) 
qemu-system-gui (4.2-3) 
qemu-system-mips (4.2-3) 
qemu-system-misc (4.2-3) 
qemu-system-ppc (4.2-3) 
qemu-system-s390x (4.2-3) 
qemu-system-sparc (4.2-3) 
qemu-system-x86 (4.2-3) 
qemu-system-x86-microvm (4.2-3) 
qemu-user (4.2-3) 
qemu-user-static (4.2-3) 
qemu-utils (4.2-3) 
qt5-default (5.12.8) 
qt5-qmake (5.12.8) 
qtbase5-dev (5.12.8) 
resolvconf (1.82) 
ROS Noetic (ros-noetic-desktop-full) (1.5.0-1) 
ros-noetic-effort-controllers 
ros-noetic-rviz (1.14.9) 
rviz (1.13.7) 
snapd-2.51.1+20.04 
squashfs-tools (4.4-1) 
Sublime Text 3.2.2 (Build 3211) 
Sublime Text 4 (Build 4107) 
swi-prolog (7.6.4) 
thunderbird (78.0.3) 
Turtlebot 2 (tb2_ws) (ROS Noetic) 
Turtlebot 3 (ROS Noetic) 
Ubuntu 20.04 LTS x86_64 (64 bits) 
Unity (7.5.0) 
valgrind-3.15.0 
veyon-service 
vim (8.1.2269) 
VirtualBox (6.1.26_Ubuntu r145957)+Oracle Ext Pack 
Visual Studio Code - VSCode (1.60.2) 
vue/cli (4.5.13) 
X11 entorno gráfico (7.7+8) 
xorg (7.7+19) 
xorg-dev (7.7+19) 
xserver-xorg-dev (1.20.11) 
yarn-1.22.10 
Yeoman (yo) 4.2.0 

Además, como programas adicionales, contiene los siguientes:

Apache Tomcat (9.0.53)
Axis2 (1.8.0)
Eclipse C++ (2021-09-R)
Eclipse Java (2021-09-R)
Eclipse JEE (2021-09-R)
JDK 1.8.0 Update 291
JDK 1.8.0 Update 291 APIdocs
Netbeans (12.0)
SoapUI (5.6.0)
SolR (8.5.2)
STS (4.11.0)
Thonny (3.3.11)

Poner en marcha el VDI es muy sencillo y requiere de los siguientes pasos:

1. Instalar/actualizar la plataforma VirtualBox descargando de https://www.virtualbox.org/

Las pruebas las hemos hecho con varias versiones: 6.1.12, 6.1.28 y 6.1.30.

Finalmente, hemos dejado la 6.1.30 y hemos instalado en el VDI las VirtualBox Guest Additions de dicha versión.

En un anfitrión Linux Ubuntu 20.04, por ejemplo, se puede instalar la plataforma, una vez descargado el paquete .deb, así:

dpkg -i virtualbox-6.1_6.1.30-148432_Ubuntu_focal_amd64.deb

2. Descargar el VDI desde esta URL de Google Drive:

https://drive.google.com/uc?id=1fzJeCRRo1ZvnFVYlZk0iM57XCtZzjBWi&export=download

Es aconsejable estar validado en el navegador con el usuario de GCloud (gcloud.ua.es) para que no haya problemas para la descarga.  En caso de no disponer de cuenta GCloud (@gcloud.ua.es), puedes crearte una de la UA con espacio ilimitado siguiendo las instrucciones indicadas en:

https://si.ua.es/es/manuales/uacloud/uacloudse/servicios-externos.html.

3. Crear la máquina virtual:

    • Botón Nueva
    • Nombre: UbuntuVirtualEPS2021
    • Sistema Operativo:  Ubuntu (64 bits)
    • Memoria: 4096 MB (mínimo 2048 MB).
    • El disco duro que utilizaremos ya estará creado y almacenado en nuestro equipo pues previamente lo habremos descargado y tendrá como nombre: Ubuntu-VDI-EPS-20_04_3-2021.vdi

4. Configuramos la máquina virtual (Menú Configuración):

    • Sistema -> Placa base -> Memoria 4096 MB
    • Sistema -> Orden de arranque -> Disco Duro (primera opción y marcar sólo ésta)
    • Sistema -> Chipset -> PIIX3
    • Sistema -> Dispositivo apuntador -> Tableta USB
    • Sistema -> Características extendidas -> Marcar Habilitar I/O APIC
    • Sistema -> Características extendidas -> Marcar Reloj hardware en tiempo UTC

    • Sistema -> Procesador -> 4
    • Sistema Límite de Ejecución -> 100%

    • Sistema -> Aceleración -> Interfaz de paravirtualización -> Predeterminado
    • Sistema -> Aceleración -> Hardware de virtualización -> Marcar Habilitar Paginación Anidada.

    • Pantalla -> Memoria de vídeo 128 MB
    • Pantalla -> Controlador gráfico -> VMSVGA

    • Almacenamiento -> Controlador IDE -> (tendremos un CD vacío)

Cuando haya que instalar las GuestAdditions (porque la versión del estudiante no sea la misma que la que lleva de Additions el VDI), habrá que añadir un CD adicional y seleccionar el archivo VBoxGuestAdditions.iso

    • Almacenamiento -> Controlador SATA -> (aparecerá el VDI descargado ya con el Attach hecho)

Como comentábamos, si la versión de la plataforma es la 6.1.30 y es igual a la del alumno, no habrá que añadir temporalmente la ISO de las Additions ni instalarlas posteriormente cuando arranquemos la máquina virtual.

    • Audio -> Dejamos todo por defecto como esté
    • Red -> Dejamos por defecto
    • Puertos serie -> Dejamos por defecto
    • USB -> Habilitar controlador USB 3.0 y crear un filtro vacío si queremos que el virtual pueda acceder a memorias externas USB.
    • Carpetas compartidas -> Dejamos por defecto
    • Interfaz de usuario -> Dejamos por defecto

Ya queda configurada la nueva máquina virtual UbuntuVirtualEPS2021

5. Lanzamos la máquina virtual (botón Iniciar estando el foco sobre la misma).

Veremos que aparece muy brevemente un gestor de arranque LILO trivial con GNU/Linux sin ningún tiempo de espera y que empieza a cargar Ubuntu 20.04 LTS con una animación.

Dependiendo del tipo de disco duro, si es SSD o si es mecánico, tardará entre 40 segundos y un par de minutos en arrancar.

Una vez arranque, cargará directamente el Escritorio con Autologin al usuario alu y veremos algo parecido a esto en Modo Ventana:

Con Host + F (siendo Host la tecla Ctrl Derecha), podemos pasar a Pantalla Completa y se verá, en un monitor panorámico de 22″ y con capacidad para mostrar en una resolución de 1920×1080, de esta forma:

El usuario podrá, al abrir una terminal de texto dentro del entorno gráfico, pasar a ser root, así:

sudo su

No pedirá contraseña, pero si la pidiera, la contraseña es también: alu

La contraseña de root, también es, igualmente: alu

La seguridad en cuanto a control de accesos y usuarios del sistema es mínima porque el VDI se enfoca a un uso personal en casa o en el portátil del alumno para hacer sus prácticas.  Está todo configurado para ello.

Si el alumno hace mal algo, borra o inutiliza el sistema parcial o totalmente, bien para arrancar, bien para ejecutar cualquier programa o, por apagarla mal, corrompe el VDI, deberá descargárselo de nuevo.


Opcional

Si la versión de la plataforma VirtualBox del estudiante no fuera la misma que incluimos en las Guest Additions del VDI).

Por defecto, hemos incluido las Additions de la versión 6.1.30 de VirtualBox.

Para instalar otra versión de VirtualBox Guest Additions distinta de la ya instalada, tenemos dos opciones:

    • Máquina virtual ya encendida y funcionando:

Menú Dispositivos -> Insertar imagen de CD de las “Guest Additions”…

Esto, insertará en la unidad de CD del equipo, estemos en Windows o en Ubuntu como anfitrión, el CD de las Additions.

En anfitriones Windows, nos dará mediante un menú de instalación amigable, la posibilidad de instalar las Additions de nuestra versión de VirtualBox instalada. En el caso de que hubiera otra versión ya antes, ofrecerá desinstalarla previamente.

En anfitriones Linux, nos dará también la oportunidad de Ejecutar desde un menú amigable aunque, particularmente, prefiero como root, lanzar el script VBoxLinuxAdditions.run así:

cd /media/alu/VBox_GAs_6.1.30

./VBoxLinuxAdditions.run

(y ejecutar la instalación de las Guest Additions)

    • Máquina virtual apagada:

Situamos el foco sobre ella, Menú Configuración -> Almacenamiento -> Controlador IDE -> Añadir CD y seleccionar el archivo VBoxGuestAdditions.iso

Dependiendo de si el anfitrión es Windows 10 o Ubuntu, el archivo estará en distintas ubicaciones. En Windows 10 estará en el directorio de instalación de VirtualBox y en anfitriones Linux estará en /usr/share/virtualbox

Guardamos, iniciamos el virtual y, cuando lleguemos a este punto, veremos el attach del CD de las Additions realizado en la parte inferior izquierda:

Entonces, abrimos una terminal de texto como indicamos y lanzamos las Additions.

Una vez instaladas, cerramos la terminal (salimos de root con el comando exit y otra vez salimos de alu con el comando exit).

Entonces, nos colocamos con el ratón sobre el CD de la parte inferior izquierda, y le damos a Expulsar (para que no se nos quede eternamente metido el CD de las Guest Additions en la máquina virtual).

Tomemos el método que tomemos, ya tendremos instaladas en nuestro VDI las Guest Additions de la versión de nuestra plataforma anfitriona VirtualBox.

Virtual Ubuntu EPS 2020 (VDI) (Actualización 2º cuatrimestre curso 2020/21)

Con la llegada del 2º cuatrimestre y aunque el volumen de peticiones de SW nuevo recibido ha sido menor que en comienzos de 2º cuatrimestre de cursos anteriores, sí ha habido peticiones de programas nuevos que, dada la situación actual, convenía instalar (o actualizar) en el VDI que lanzamos este curso, por dos veces, en el mes de noviembre (una primera versión sin ROS-Kinetic y una segunda con dicho programa y su actualización de julio de 2020).

Este VDI contiene el mismo SW que en el VDI del 25 de noviembre pasado pero, además, añade:

  • Una nueva versión de Sublime Text 3:   3.2.2 Build 3211.
  • XAMPP 8.0.0-3 para lanzar o parar servicios como MySQL, ProFtpd y Web server.
  • Actualización de Qt 5.12.3 (x86_64).
  • Actualización menor de sqlitebrowser (3.7.0-1).
  • Inclusión de paquetes: clang-3.8 y libsfml-dev-2.3.2
  • Añadir a Visual Studio Code 1.48.2 los plugins:  vscode: * @id:ms-vscode.cpptools+ * @id:vector-of-bool.cmake-tools
  • Algunas actualizaciones de seguridad (probablemente las últimas ya pues Ubuntu 16.04 LTS dejará de tener soporte el próximo 30 de abril).
Escritorio VDI Virtual Ubuntu EPS 2020 (2º cuatrimestre curso 2020/21)
Escritorio VDI Virtual Ubuntu EPS 2020 (2º cuatrimestre curso 2020/21)

Esta máquina virtual, dada la situación actual, es un poco especial pues, con la docencia online y la próxima docencia híbrida (donde también dominará, de momento, el modelo online), puede ser una herramienta muy interesante para que los alumnos puedan desarrollar sus prácticas de la forma más parecida a si lo hicieran en los Laboratorios de la EPS.

Para la obtención del fichero VDI, deberemos descargarlo de Google Drive, para lo que tendremos que haber iniciado sesión, preferiblemente, en GCloud/Google Drive. En caso de no disponer de cuenta GCloud (@gcloud.ua.es), puedes crearte una de la UA con espacio ilimitado siguiendo las instrucciones indicadas en:

https://si.ua.es/es/manuales/uacloud/uacloudse/servicios-externos.html.

El enlace para la descarga del VDI es el siguiente:

https://drive.google.com/uc?id=1ujESLiQbzTNI9h7x3f7yJvPVAfgbqsbR&export=download

Si, por cualquier causa, todavía no se ha iniciado sesión, arriba a la derecha aparecerá un enlace para iniciar sesión en Gmail/GCloud/Google Drive.

Remarcamos que es MUY importante esto último y que la cuenta con la que entremos sea, preferiblemente, la de GCloud (@gcloud.ua.es) pues, si no, es muy probable que tengamos problemas y que no se pueda descargar el fichero.

Desde ella, pincharemos en el enlace que aparece para proceder a la descarga del fichero Ubuntu-VDI-EPS-16_04-2020.vdi

Habrá que darle dos veces para que nos salga el cuadro de descarga del fichero.

El archivo ocupa alrededor de 79 GB (el tamaño apenas crece respecto al cuatrimestre anterior).

Por tanto, donde descarguemos el mismo, hemos de estar seguros de disponer de algo más de ese tamaño (preferiblemente unos 85-90 GB como mínimo). La duración de la descarga dependerá de la conexión a Internet que tengamos. Con una conexión relativamente modesta, en algo menos de 6 horas debería estar descargado.

Para dicha descarga, aparte de una buena conexión a Internet, quizá pueda ser interesante instalarse un gestor de descargas (pues con el que incorporan por defecto los navegadores es fácil que se corte y se haga imposible descargar el fichero).

Sugiero utilizar JDownloader2 aunque pueden usarse otros gestores.

Eso sí, lo complejo quizás sea el configurar JDownloader2 para que descargue enlaces de Google Drive (por defecto no funciona la descarga desde dichos enlaces y toca seguir unos pasos para que efectivamente funcione).

En este vídeo explica cómo hacer esto (configurar el gestor de descargas JDownloader2 para poder descargar ficheros de Google Drive):

https://www.youtube.com/watch?v=-4OB_oPc4wI

Esperamos que este nueva versión del VDI sea de utilidad 🙂

Por supuesto, para el que no quiera la actualización, el enlace de descarga del fichero VDI del cuatrimestre anterior (y que aparece en la entrada del Blog referente al fichero del primer cuatrimestre):

Virtual Ubuntu EPS 2020 (VDI)

Sigue activo aunque el fichero que descarguemos veremos que se llamará ahora:

Ubuntu-VDI-EPS-16_04-2020-1c.vdi

 

Virtual Ubuntu EPS 2020 (VDI)

Con el comienzo del nuevo curso académico 2020/21, en un contexto de pandemia global, con docencia mixta (presencial y no presencial) y teniendo en cuenta las nuevas peticiones de software de los laboratorios (con nuevas aplicaciones y/o nuevas versiones de programas respecto de los del curso pasado), procede actualizar el fichero VDI asociado a la máquina virtual del curso anterior:

Virtual Ubuntu EPS 2019 (VDI)

Al nuevo virtual le llamaremos Virtual Ubuntu EPS 2020.

Esta máquina virtual, dada la situación actual, es un poco “especial” respecto a las de cursos anteriores, pues crece significativamente en el tamaño del fichero VDI a descargar (unos 37GB mayor, prácticamente el doble, que la versión del curso pasado).

Para la obtención del mismo, deberemos descargarlo de Google Drive, para lo que tendremos que haber iniciado sesión en Gmail/Google Drive. En caso de no disponer de cuenta, puedes crearte una de la UA con espacio ilimitado siguiendo las instrucciones indicadas en https://si.ua.es/es/manuales/uacloud/uacloudse/servicios-externos.html.

El enlace para la descarga del VDI es el siguiente (arriba a la derecha aparece un enlace para iniciar sesión en Gmail/Google Drive):

https://drive.google.com/uc?id=1s7fvCf7r9LBS_Y-G1piGRdKFYmv8V1XW&export=download

Desde ella, pincharemos en el enlace que aparece para proceder a la descarga del fichero Ubuntu-VDI-EPS-16_04-2020.vdi

El archivo ocupa alrededor de 79 GB. Es decir, donde descarguemos el mismo, hemos de estar seguros de disponer de algo más de ese tamaño (preferiblemente unos 85 GB como mínimo). La duración de la descarga dependerá de la conexión a Internet que tengamos. Con una conexión relativamente modesta, en algo menos de 6 horas debería estar descargado.

Sigue estando basado en Ubuntu 16.04 LTS x86_64 (64 bits) pero con las actualizaciones pertinentes, añadiendo los nuevos programas y versiones del nuevo curso así como eliminando algunos programas cuyas versiones ya eran  antiguas (años 2017-2018) y que habían quedado obsoletas.

Al arrancar, lo hace en modo ventana pero, si queremos trabajar con más comodidad, podemos optar por cambiar a pantalla completa (desde el menú Ver, en la parte superior de la máquina virtual).

Una vez casi ha terminado de arrancar, primeramente nos aparecerá un login en modo texto temporal en vt1 (que dura entre unos segundos y un minuto, dependiendo de la velocidad del anfitrión y la configuración HW de la máquina virtual). No hay que hacer nada, sólo esperar a que salga el modo gráfico.

Una vez arrancado el modo gráfico, dependiendo del modo en que arranquemos inicialmente el virtual, puede ser que, una vez acabado el proceso de arranque, los iconos que aparezcan en el Escritorio, no salgan correctamente ordenados (sino superpuestos o desordenados). Esto se soluciona fácilmente con el ratón pinchando con el botón derecho sobre el tapiz del Escritorio y seleccionando la opción “Organizar el escritorio por nombre“.

La nueva imagen del Escritorio, en modo ventana y con los iconos correctamente ordenados, queda así:

Escritorio Ubuntu VDI EPS 2020

El tiempo total de arranque, desde que le damos a Iniciar en la plataforma de virtualización hasta que sale el Escritorio definitivamente, ronda los 2-3 minutos como máximo. El de apagado es bastante más rápido (a veces tarda algo más, pero es casi inmediato).

El usuario con el que hace autologin es:   alu

Con contraseña:   alu

En la versión 2020, la hemos modificado para que al abrir una terminal de texto y teclear el comando:

sudo su

Entre directamente como superusuario root y ya no pida contraseña.

Igualmente, en el caso de dicho usuario root, la contraseña es (también):   alu

Cambios realizados y listado de SW nuevo

El SW que aparece en esta máquina virtual es, en un 99%,  el que hay disponible para GNU/Linux en los laboratorios de la EPS (entre los de Politécnica I, Politécnica IV, laboratorio LTV, laboratorio LELEC y laboratorio LROB1). Además, es muy similar también al que se puede encontrar en los ordenadores del Aula de Acceso Libre (L04A y L04D).

El que no sea el 100% atiende a razones de no generar problemas entre ciertas librerías y programas muy particulares pero, sobre todo, a que hay aplicaciones que tienen sentido tenerlas en los laboratorios pero que, para en un uso en casa (o fuera de los laboratorios de la EPS), no tienen mucha utilidad, por ejemplo iTalc o máquinas virtuales que sí existen en los laboratorios pero que ponerlas, a su vez, dentro de otro virtual, además de cargar demasiado éste, se ejecutarían muy ralentizadas, y tampoco tiene mucho sentido (pues pueden funcionar, de manera independiente, en cualquier arquitectura nativa de GNU/Linux, Windows y Macintosh que tenga instalada la plataforma VirtualBox).

La lista de programas y librerías nuevos (añadidos a otros del curso pasado), sería la siguiente:

  • Apache Solr-8.5.2
  • Eclipse Java IDE 2020-06-R
  • Google Chrome Stable 85.0.4183.10 (reemplaza la versión 69.0.3497.100) con los 3 plugins nuevos (parte superior derecha, a la derecha del campo de entrada de URL):
    • Awesome Screenshot: capturar pantalla y video de pantalla.
    •  Meet Grid View ICE:  para ver a todos los participantes en una videoconferencia de Meet.
    • Meet Breakout: para crear subsalas en una videoconferencia (breakout rooms)
  • jupyter-1.0.0 + jupyterlab-1.1.1 + Google-colab
  • Mozilla Firefox 80.0.1 (reemplaza la obsoleta versión 62.0.3)
  • nodemon-2.0.4
  • npm-6.14.6 (reemplaza npm-6.10.2)
  • pandas + numpy + scipy + keras + sklearn + mathplotlib + tensorflow-gpu
  • pip3-20.2.3
  • python-3.6.9
  • Qemu + riscv64 + gcc/g++-riscv64 + gcc/g++-riscv32
  • qt-opensource-linux-x64-5.12.3 (con QtCreator 4.9.0).
  • Ros-Kinetic que incluye, además los nuevos paquetes:
    • ros-kinetic-ros-control
    • ros-kinetic-ros-controllers
    • ros-kinetic-gazebo-ros-pkgs
    • ros-kinetic-gazebo-ros-control
    • ros-kinetic-joint-state-controller
    • ros-kinetic-effort-controllers
    • ros-kinetic-position-controllers
  • Virtualbox-6.1.12-13918
  • Visual Studio Code 1.48.2 (reemplaza la versión 1.30.2)
  • vue/cli (4.4.6)

Por razones de insuficiente soporte gráfico (falta de aceleración 3D, soporte CUDA, memoria de vídeo insuficiente de sólo 128 MB y falta de capacidad de procesamiento gráfico)  NO se incluye:

  • cuda-10.0-nvidia-410.48
  • nvidia-cuda-toolkit

Aspectos a tener en cuenta para la puesta en marcha de la máquina virtual

Básicamente, son los mismos que para el VDI del curso anterior:

  • Habilitar el bit de virtualización en la BIOS del equipo anfitrión.
  • Configuración HW similar con estas particularidades:
    • Al menos 2 Procesadores (CPUs o núcleos de procesamiento). Generalmente, las máquinas actuales, tienen 4-6-8 e incluso algunos más. Hasta la mitad de ellos, es buena idea dar. Es decir, en una máquina con 4 núcleos, daremos 2 al virtual, en una de 6, podemos dar 3, y en una de 8, podremos dar hasta 4 núcleos de procesamiento a la misma.
    • Al menos 2048 MB de RAM (e, idealmente, 3072-4096 MB).
    • Al menos 128MB de Memoria de vídeo.
    • Arranque sólo disco duro (ni red ni CD ni disquete).
    • Recomendable utilizar VirtualBox 5.2 o superior (con la rama 5.1 ya no la hemos testado este año pues es demasiado antigua).  En este caso, hemos hecho pruebas con la 5.2.44 que es la versión más reciente, de 14 de julio de 2020, de la rama 5.2 de VirtualBox. De hecho, las VBoxGuestAdditions incluidas son de esa versión y va bien. También funcionará, probablemente mejor en cuestiones gráficas y de procesamiento 3D, con las versiones 6.0 y 6.1 de VirtualBox (la más reciente es la 6.1.16).
    • Usando las versiones recomendadas de VirtualBox, podremos habilitar soporte para USB 3.0 (xHCI) creando, en el apartado USB, un filtro vacío para admitir dispositivos USB 3.0.
  • Instalar Oracle VM VirtualBox Extension Pack (si no lo teníamos ya instalado en nuestra versión instalada de la plataforma VirtualBox).
  • Instalar las Guest Additions en la máquina virtual para la versión de VirtualBox que tengamos instalada. Esto ya se explicaba en este mismo apartado para el Virtual Ubuntu EPS 2018.

Bug resuelto en relación a la instalación de las VirtualBox Guest Additions desde entorno gráfico

En relación al último apartado (GuestAdditions), añadir que en esta nueva versión 2020, hemos solucionado un bug que había en las anteriores versiones del VDI a la hora de instalar dichas Additions desde el entorno gráfico (que lo impedía y sólo permitía, como mostrábamos en el enlace del anterior apartado, la instalación desde una terminal de texto como root).

Ahora ya podemos ir a desplegar el Menú Dispositivos, opción Añadir CD de las “Guest Additions”  (la de más abajo) y, desde el mismo entorno gráfico, cuando abra la aplicación y pida la contraseña de Administrador para proceder a la instalación, introducir la contraseña:

alu

De esta forma, abrirá el mismo sistema una terminal y empezará a lanzar automáticamente el fichero ejecutable correcto de las Guest Additions para nuestra versión de VirtualBox.

Tendremos que esperar entre 1-2 minutos a su instalación completa. Cuando acabe, bastará con pulsar la tecla INTRO para que dicha terminal se cierre y ya tendremos las Guest Additions de nuestra versión de VirtualBox instaladas en el fichero VDI de nuestra máquina Virtual Ubuntu EPS 2020.

Actualización de ROS-Kinetic con paquetes de julio 2020

Debido a unos problemas que hubo en el laboratorio LROB1 respecto al SW Ros-Kinetic sobre Ubuntu 16.04 LTS, se ha procedido a una actualización masiva de dicho SW con versiones  de paquetes más recientes del mismo (liberadas en julio de 2020).

En total, se han actualizado 360 paquetes relacionados con ros-kinetic e instalado algún paquetes nuevo como python-catkin-pkg.

El procedimiento seguido, como root, para dicha actualización, ha sido el siguiente:

1. Modificar repositorio de ROS en:

/etc/apt/sources.list.d/ros-latest.list

asegurándonos que contiene esta línea:

deb http://packages.ros.org/ros/ubuntu xenial main amd64 Packages

2. Borrar información del repositorio de ROS-Kinetic antigua: IMPORTANTE

rm -f /var/lib/apt/lists/packages.ros.org_ros_ubuntu_dists_xenial_*

Si no hacemos esto, aunque hagamos:

apt-get update

apt-get upgrade

Nunca actualizará nada (y se empeñará en traerse paquetes antiguos que ya no existen en el repositorio de ROS).

3. Actualizamos, una vez más, información de repositorios:

apt-get update

Ahora, ya sí, se trae la información actualizada de paquetes de ros-kinetic (paquetes de julio de 2020).

4. Actualizamos, ahora ya sí (360 paquetes de ROS, 91,5 MB de descarga y 8573 KB de espacio ocupado):

apt-get upgrade

5. Instalar también los paquetes:  catkin y/o python-catkin-pkg

apt install catkin
apt-get update && apt-get install --only-upgrade python-catkin-pkg

Prueba de ROS-Kinetic

Esta asignatura se imparte en el laboratorio LROB1 del edificio Politécnica III de la EPS.

Para la prueba vamos a seguir parte del guión de la Práctica 3 de la asignatura IC.

1. Obtener una copia limpia del directorio  ~/catkin_ws /src/gazebo_ros_demos :

cd ~/catkin_ws/src
rm -fr gazebo_ros_demos
git clone https://github.com/ros-simulation/gazebo_ros_demos.git

2. Regenerar “limpios” los directorios ~/catkin_ws/build y ~/catkin_ws/devel:

cd ..
rm -fr build devel
catkin_make

Este último paso fallará si en el laboratorio o en el VDI de Ubuntu, está instalado python-3.6  (3.6.2) y tenemos estos enlaces simbólicos:

/usr/local/bin/python → /usr/bin/python3.6
/usr/local/sbin/python → /usr/bin/python3.6

La razón es que ROS-Kinetic y catkin_make no funcionan bien con python3 y requieren de Python-2.7 (el que contiene en /opt/ros/kinetic o el propio de Ubuntu 16.04).

Para ello, habrá que renombrar (o borrar) dichos enlaces simbólicos anteriores.

3. Regenerar limpio el directorio ~/catkin_ws/src/my_robot_control:

cd ~/catkin_ws/src
rm -fr my_robot_control
catkin_create_pkg my_robot_control

4. Dentro de la carpeta ~/catkin_ws/src/my_robot_control ejecutar:

cd my_robot_control
mkdir config
cd config

5. Crear un fichero llamado my_robot_control.yaml, escribiendo la siguiente estructura en dicho fichero:

rrbot:
        joint_state_controller:
            type: joint_state_controller/JointStateController
            publish_rate: 50

        joint1_position_controller:
            type: effort_controllers/JointPositionController
            joint: joint1
            pid: {p: 100.0, i: 0.01, d: 10.0}

        joint2_position_controller:
            type: effort_controllers/JointPositionController
            joint: joint2
            pid: {p: 100.0, i: 0.01, d: 10.0}

6. Dentro de la carpeta ~/catkin_ws/src/my_robot_control ejecutar:

cd ..
mkdir launch 
cd launch

7. Crear un fichero llamado my_robot_control.launch y escribir el siguiente contenido en dicho fichero:

<launch>
<rosparam file="$(find my_robot_control)/config/my_robot_control.yaml" command="load"/>
<node name="controller_spawner" pkg="controller_manager" type="spawner" respawn="false"
output="screen" ns="/rrbot" args="joint1_position_controller
joint2_position_controller joint_state_controller"/>
<node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" respawn="false" output="screen">
<remap from="/joint_states" to="/rrbot/joint_states" />
</node>
</launch>

8. Desde la misma terminal de comandos del usuario, ejecutar la simulación del robot RR con los siguientes comandos:

cd ~/catkin_ws
source ./devel/setup.bash
roslaunch rrbot_gazebo rrbot_world.launch

Esperar a que Gazebo termine de abrir completamente (y aparezca el brazo robótico).

Nota: Si al arrancar, falla y da error de red (como que no puede hacer ping a sí mismo), hay que editar /etc/hosts y comprobar que la dirección IP del host es correcta y existe (vale perfectamente poner 127.0.0.1 en caso de no tener otra IP válida y real disponible).

 

9. Abrimos una segunda terminal de comandos del usuario y cargamos los controladores de las dos articulaciones ejecutando fichero my_robot_control.launch que hemos creado previamente:

cd ~/catkin_ws
source ./devel/setup.bash
roslaunch my_robot_control my_robot_control.launch

10. Si todo se ha realizado correctamente y sin errores, abrimos una tercera terminal y ejecutamos:

cd ~/catkin_ws
setup ./devel/setup.bash
rostopic list

En la salida, entre varias líneas de rutas, deben aparecer los siguientes topics:

/rrobot/join1_position_controller/command
/rrobot/joint1_position_controller/pid/parameter_descriptions
/rrobot/joint1_position_controller/pid/parameter_updates
/rrobot/joint1_position_controller/state
/rrobot/joint2_position_controller/command
/rrobot/joint2_position_controller/pid/parameter_descriptions
/rrobot/joint2_position_controller/pid/parameter_updates
/rrobot/joint2_position_controller/state
/rrobot/joint_states

Estos son los topics que se han creado por el fichero launch que se ha ejecutado, más concretamente, por el nodo controller_spawner.

Los command topics permitirán enviar referencias a las articulaciones, mientras que el topic joint_states proporciona información acerca del estado actual de las articulaciones.

11. Probaremos los controladores publicando en los correspondientes ”command topics”, por ejemplo:

rostopic pub -1 /rrbot/joint1_position_controller/command std_msgs/Float64 "data: 1.5"

rostopic pub -1 /rrbot/joint2_position_controller/command std_msgs/Float64 "data: 1.0"

Con esto conseguimos enviar, como referencias articulares, los valores en radianes 1.5 y 1.0 a las articulaciones 1 y 2, respectivamente, quedando el brazo robótico como se muestra en la imagen siguiente:

Ros-Kinetic-Gazebo
Ros-Kinetic-Gazebo

Virtual Ubuntu EPS 2019 (VDI)

Un año más, con el comienzo del nuevo curso académico 2019/20, las nuevas peticiones de software de los laboratorios (con nuevas aplicaciones y/o nuevas versiones de programas del curso pasado), procede actualizar el fichero VDI asociado a la máquina virtual del curso anterior:

Virtual Ubuntu EPS 2018 (VDI)

Al nuevo virtual le llamaremos Virtual Ubuntu EPS 2019.

Para la obtención del mismo, deberemos descargarlo de Google Drive, para lo que tendremos que haber iniciado sesión en Gmail/Google Drive. En caso de no disponer de cuenta, puedes crearte una de la UA con espacio ilimitado siguiendo las instrucciones indicadas en https://si.ua.es/es/manuales/uacloud/uacloudse/servicios-externos.html.

El enlace para su la descarga del VDI es el siguiente (arriba a la derecha aparece un enlace para iniciar sesión en Gmail/Google Drive):

https://drive.google.com/uc?id=1fG-JbIlqZnfuD-HZpwu03GPqsNaXH0HG&export=download

Desde ella, pincharemos en el enlace que aparece para proceder a la descarga del fichero Ubuntu-VDI-EPS-16_04-2019.vdi

El archivo ocupa alrededor de 42 GB. Es decir, donde descarguemos el mismo, hemos de estar seguros de disponer de algo más de ese tamaño (preferiblemente unos 50 GB). La duración de la descarga dependerá de la conexión a Internet que tengamos. Con una conexión relativamente modesta, en menos de 3 horas debería estar descargado.

Sigue estando basado en Ubuntu 16.04 LTS x86_64 (64 bits) pero con las actualizaciones pertinentes, añadiendo los nuevos programas y versiones del nuevo curso así como eliminando algunos programas cuyas versiones ya eran muy antiguas (años 2016-2017) y que habían quedado obsoletas.

Al arrancar, en esta ocasión ofrece: bien en modo ventana o bien en pantalla completa (recomendado este último pues, de otra forma, muchos iconos del Escritorio, no se verán bien).

Dependiendo del modo en que arranquemos inicialmente el virtual, puede ser que, una vez acabado el proceso de arranque, los iconos que aparezcan en el Escritorio, no salgan correctamente ordenados (sino superpuestos). Esto se soluciona fácilmente con el ratón pinchando con el botón derecho sobre el tapiz del Escritorio y seleccionando la opción “Organizar el escritorio por nombre“.

La nueva imagen del Escritorio, a pantalla completa y con los iconos correctamente ordenados, queda así:

 

Cambios realizados y listado de SW nuevo

El SW que aparece en esta máquina virtual es, en un 95%, el que hay disponible para GNU/Linux en los laboratorios de la EPS (entre los de Politécnica I, Politécnica IV, laboratorio LTV, laboratorio LELEC y laboratorio LROB1). Además, es muy similar también al que se puede encontrar en los ordenadores del Aula de Acceso Libre (L04A y L04D).

El que no sea el 100% atiende a razones de no generar problemas entre ciertas librerías y programas muy particulares pero, sobre todo, a que hay aplicaciones que tienen sentido en los laboratorios pero que en un uso en casa (o fuera de los laboratorios de la EPS), no tienen mucha utilidad, por ejemplo iTalc o máquinas virtuales que sí existen en los laboratorios pero que ponerlas, a su vez, dentro de otro virtual, además de cargar demasiado éste, se ejecutarían muy ralentizadas, y tampoco tiene mucho sentido (pues pueden funcionar, de manera independiente, en cualquier arquitectura nativa de GNU/Linux, Windows y Macintosh que tenga instalada la plataforma VirtualBox).

La lista de programas y librerías nuevos (añadidos a otros del curso pasado), sería la siguiente:

  • alliance-5.1.1.1.1
  • angular-cli-7.3.5
  • autopoint-0.19.7
  • CodeBlocks-13.12
  • docker-ce-19.03.0
  • docker-compose-1.24.1
  • Eclipse Java IDE 2019-06-R
  • electric-9.07
  • freeglut3
  • freeglut3-dev
  • ghdl-0.36-dev
  • gnat-5.4.0
  • IntelliJ Idea IU 2019 Ultimate Edition
  • Incubating Netbeans-11.0 IDE
  • iverilog-0.9.7-1
  • Java3D-1.5.1
  • JDK 1.8.0 Update 212
  • JDK 1.8.0 Update 212 APIdocs
  • json-server-0.15.0
  • magic-8.0.210.2
  • node-v10.15.3
  • npm-6.10.2
  • opencv-3.4.6 (+ dependencias asociadas)
  • opencv_contrib-3.4.6
  • ruby-dev-2.3
  • Spring Boot 2.1.6

Otros programas que por razones de insuficiente soporte gráfico (memoria y capacidad de procesamiento) y la falta de aceleración 3D de la máquina virtual (da problemas si se habilita dicha aceleración), NO se incluyen son:

  • Anaconda3-2018.12-x86_64
  • nvidia-cuda-toolkit
  • qt-opensource-linux-x64-5.12.3
  • ROS Kinetic

Particularidades de algunos programas:

  • Navegador google-chrome-stable-69.0.3497.100:  Se ha resuelto el problema que había el curso pasado, en el cuál, al arrancar, nos pedía, en un asunto relacionado con el almacén de claves de sesión,  un usuario y contraseña. Ya no pide nada.

Aspectos a tener en cuenta para la puesta en marcha de la máquina virtual

Básicamente, son los mismos que para el VDI del curso anterior:

  • Habilitar el bit de virtualización en la BIOS del equipo anfitrión
  • Configuración HW similar con estas particularidades:
    • Al menos 2 Procesadores (CPUs o núcleos de procesamiento). Generalmente, las máquinas actuales, tienen 4-6-8 e incluso algunos más. Hasta la mitad de ellos, es buena idea dar. Es decir, en una máquina con 4 núcleos, daremos 2 al virtual, en una de 6, podemos dar 3, y en una de 8, podremos dar hasta 4 núcleos de procesamiento a la misma.
    • Al menos 2048 MB de RAM.
    • Al menos 128MB de Memoria de vídeo.
    • Arranque sólo disco duro (ni red ni CD).
    • Imprescindible utilizar versiones 5.1 ó 5.2 de VirtualBox. Por compatibilidad con VDIs de cursos anteriores, NO se recomienda todavía la versión 6.0 (pues no la hemos testado suficientemente con el VDI actual y el del curso anterior).
    • Usando las versiones recomendadas de VirtualBox, podremos habilitar soporte para USB 3.0 (xHCI) creando, en el apartado USB, un filtro vacío para admitir dispositivos USB 3.0.
  • Instalar Oracle VM VirtualBox Extension Pack (si no lo teníamos ya instalado en nuestra versión instalada de VirtualBox).
  • Instalar las Guest Additions en la máquina virtual para la versión de VirtualBox que tengamos instalada. Esto ya se explicaba en este mismo apartado para el Virtual Ubuntu EPS 2018.

 

 

Virtual Ubuntu EPS 2018 (VDI)

Con el comienzo del nuevo curso académico 2018/19, las nuevas peticiones de software de los laboratorios (con nuevas aplicaciones y/o nuevas versiones de programas del curso pasado), procede actualizar el fichero VDI asociado a la máquina virtual del curso anterior:

Virtual Ubuntu EPS 2017 (VDI)

Al nuevo virtual le llamaremos Virtual Ubuntu EPS 2018.

Para la obtención del mismo, tendremos que realizar su descarga accediendo a esta URL (nos pedirá previamente, aceptar el certificado y luego introducir el usuario y contraseña de la EPS):

https://maktub.eps.ua.es/ubuntuepsvirtual/Ubuntu-VDI-EPS-16_04-2018.vdi

Desde ella, pincharemos en el enlace que aparece para proceder a la descarga del fichero Ubuntu-VDI-EPS-16_04-2018.vdi

El archivo ocupa alrededor de 36 GB. Es decir, donde descarguemos el mismo, hemos de estar seguros de disponer de algo más de ese tamaño (preferiblemente unos 40 GB). La duración de la descarga dependerá de la conexión a Internet que tengamos. Con una conexión relativamente modesta, en menos de 2 horas debería estar descargado.

Sigue estando basado en Ubuntu 16.04 LTS x86_64 (64 bits) pero con las actualizaciones pertinentes y añadiendo los nuevos programas y versiones del nuevo curso.

Al arrancar, en esta ocasión ofrece: bien en modo ventana o bien en pantalla completa (recomendado este último pues, de otra forma, muchos iconos del Escritorio, no se verán bien).

La nueva imagen del Escritorio es ésta:

 

Cambios realizados y listado de SW nuevo

El SW que aparece en esta máquina virtual es, en un 95%, el que hay para GNU/Linux en los laboratorios de la EPS (entre los de Politécnica I, Politécnica IV, laboratorio LTV, laboratorio LELEC y laboratorio LROB1).

El que no sea el 100% atiende a razones de no generar problemas entre ciertas librerías y programas muy particulares pero, sobre todo, a que hay aplicaciones que tienen sentido en los laboratorios pero que en un uso en casa (o fuera de los laboratorios de la EPS), no tienen mucha utilidad, por ejemplo iTalc o máquinas virtuales que sí existen en los laboratorios pero que ponerlas, a su vez, dentro de otro virtual, además de cargar demasiado éste, se ejecutarían muy ralentizadas, y tampoco tiene mucho sentido (pues pueden funcionar, de manera independiente, en cualquier arquitectura nativa de GNU/Linux, Windows y Macintosh que tenga instalada la plataforma VirtualBox).

La lista de programas y librerías nuevos (añadidos a otros del curso pasado), sería la siguiente:

  • adobe-air
  • appinventor2-setup-2.3
  • blender-2.76
  • cryptsetup-bin
  • Eclipse Java 4.7 Oxygen (versión no JEE)
  • Eclipse JEE 4.8 Photon
  • exfat, fuse-utils-1.2.3-1
  • firefox-63.0.1
  • gcc-5.4.0, g++-5.4.0
  • gcc-msp430
  • gitkraken
  • go 1.7.4
  • google-chrome-stable-69.0.3497.100
  • ipython-2.4.1-1
  • kernel 4.4.0-98-generic-x86_64 (vmlinuz-4.4.0-98-generic , initrd-4.4.0-98-generic)
  • libsqlite3-dev-3.11.0
  • meson-0.29
  • memtester-4.3.0-3
  • monodevelop, nunit-5.10.0.871-2
  • ninja-1.5.1
  • node-8.11.1
  • nodemon-1.18.4
  • npm-5.8.0, angular_cli-6.0.0
  • npm-6.4.1
  • obs-studio-20.1.0
  • opencv-3.4.3 (+ dependencias asociadas)
  • octave-4.0.0 (icono de Escritorio)
  • qemu-2.5.0
  • qtcreator
  • qt5-default
  • scratch-2-offline-i386
  • smartmontools-6.4
  • swift-3.1
  • sysbench-0.4.12
  • vim-gtk
  • vlc-2.2.2-5
  • xmpi-2.2.3b8-13.2

Otros programas que por razones de insuficiente soporte gráfico (memoria y capacidad de procesamiento) y la falta de aceleración 3D de la máquina virtual, NO se incluyen son:

  • nvidia-cuda-toolkit
  • ROS Kinetic

Particularidades de algunos programas:

  • google-chrome-stable-69.0.3497.100:  Al arrancar, nos pedirá con un cuadro un usuario y contraseña en un asunto relacionado con el almacén de claves de sesión. Pasa también en los laboratorios de la EPS. Dándole 3 veces a cancelar (pues saldrá hasta 3 veces), se soluciona y se puede continuar funcionando normalmente con el navegador.

Aspectos a tener en cuenta para la puesta en marcha de la máquina virtual

Básicamente, son los mismos que para el VDI del curso anterior:

  • Habilitar el bit de virtualización en la BIOS del equipo anfitrión
  • Configuración HW similar con estas particularidades:
    • Arranque sólo disco duro (ni red ni CD).
    • (2048 MB de RAM o, si se añade más, mejor)
    • Si utilizamos la versión 5.0 (o superior)  de VirtualBox , podremos habilitar soporte para USB 3.0 (xHCI) creando, en el apartado USB, un filtro vacío para admitir dispositivos USB 3.0.
  • Instalar Oracle VM VirtualBox Extension Pack (si no lo teníamos ya instalado en nuestra versión instalada de VirtualBox).
  • Instalar las Guest Additions en la máquina virtual para nuestra misma versión de VirtualBox que tengamos instalada (es decir, si el año pasado teníamos la 5.1.26 y este año tenemos la 5.1.38, deberíamos de instalar la de la 5.1.38). Esto ya se explicaba en este mismo apartado para el Virtual Ubuntu EPS 2017.

 

Virtual Ubuntu EPS 2017 (VDI)

Con el comienzo del nuevo curso académico 2017/18, las nuevas peticiones de software de los laboratorios (con nuevas aplicaciones y/o nuevas versiones de programas del curso pasado), procede actualizar el fichero VDI asociado a la máquina virtual del curso anterior:

Virtual Ubuntu EPS 2016 (VDI) (y 2)

Al nuevo virtual le llamaremos Virtual Ubuntu EPS 2017.

Para la obtención del mismo, tendremos que realizar su descarga accediendo a esta URL (nos pedirá previamente, aceptar el certificado y luego introducir el usuario y contraseña de la EPS):

https://maktub.eps.ua.es/ubuntuepsvirtual/Ubuntu-VDI-EPS-16_04-2017.vdi

Desde ella, pincharemos en el enlace que aparece para proceder a la descarga del fichero Ubuntu-VDI-EPS-16_04-2017.vdi

El archivo ocupa 25.8 GB. Es decir, donde descarguemos el mismo, hemos de estar seguros de disponer de algo más de esos casi 26 GB. La duración de la descarga dependerá de la conexión a Internet que tengamos. Con una conexión relativamente modesta, en poco más de 1 hora debería estar descargado.

Sigue estando basado en Ubuntu 16.04 LTS x86_64 (64 bits) pero con las actualizaciones pertinentes (en él hemos eliminado programas que ya no se han solicitado, versiones obsoletas y añadido programas y versiones nuevas acorde con el nuevo curso que comienza).

La nueva imagen del Escritorio es ésta:

Escritorio de VDI Ubuntu EPS 2017 (Ubuntu 16.04 LTS x86_64)

 

Cambios realizados y listado de SW

El SW que aparece en esta máquina virtual es, en un 90%, el que hay para GNU/Linux en los laboratorios de la EPS (entre los de Politécnica I, Politécnica IV, laboratorio LTV, laboratorio LELEC y laboratorio LROB1).

El que sea un 90% atiende a razones de no generar problemas entre ciertas librerías y programas muy particulares pero, sobre todo, a que hay aplicaciones que tienen sentido en los laboratorios pero que en un uso en casa (o fuera de los laboratorios de la EPS), no tienen mucho sentido, por ejemplo iTalc o máquinas virtuales que sí existen en los laboratorios pero que ponerlas, a su vez, dentro de otro virtual, además de cargar demasiado éste, se ejecutarían muy ralentizadas, y tampoco tiene mucho sentido (pues pueden funcionar, de manera independiente, en cualquier arquitectura nativa de GNU/Linux, Windows y Macintosh que tenga instalada la plataforma VirtualBox).

La lista (resumida) de programas y librerías, sería la siguiente:

  • ansible-2.0.0.2
  • atom-1.18.0-1
  • bison++-1.21.11-3.1
  • bower-1.8.0
  • caffe-master (1.0.0)
  • cmake-3.5-1
  • composer
  • docker-ce-17.06.0
  • docker-compose-1.15.0
  • Eclipse C++ 4.6 Neon, Eclipse C++ 4.7 Oxygen
  • Eclipse JEE 4.6 Neon, Eclipse JEE 4.7 Oxygen
  • firefox-47.0
  • flex-2.6.0
  • freeglut3 (2.8.1-2), freeglut3-dev (2.8.1-2)
  • gawk-4.1.3
  • gcc-5.3.1, g++-5.3.1
  • gulp-cli
  • g++-arm-linux-gnueabihf, gcc-arm-linux-gnueabihf, gdb-multiarch, pip matplotlib
  • heroku-6.13.1
  • JDK-1.8.0 Update 131, JDK-1.8.0 Update 131 APIDocs
  • jhipster-4.6.2
  • joe-4.1-2
  • laravel-5.4
  • libasound2-dev-doc-1.1.0
  • libsfml-dev-2.3.2
  • libsvm-3.22
  • make-4.1-6
  • MySQL-Server-5.7.11, MySQL-Common-5.7.11, MySQL-Connector-Java-CPP-Python
  • Netbeans-8.2
  • nlwrap-0.41
  • nodejs-4.8.4, nodejs-6.9.4, nodejs-legacy-4.2.6
  • npm-2.15.11, npm-3.10.10
  • opencv-3.3 (+ dependencias asociadas)
  • php7.0, php7.0-mysql
  • postman (5.2.1)
  • robo3t-1.1.1
  • python-2.7.11+, python-3.5.2, python-3.6
  • qemu, qemu-system-arm, qemu-user, qemu-user-static
  • ruby-dev (2.3)
  • valgrind-3.11.0
  • VirtualBox-5.1.24-117012
  • vscode-1.15.1
  • sqlitebrowser-3.7.0-1
  • sts-3.9.0
  • sublime-text-3126-prolog
  • swi-prolog-7.2.3
  • yarn-0.27.5
  • yo (yeoman) 2.0.0

 

Aspectos a tener en cuenta para la puesta en marcha de la máquina virtual

Se crea de forma similar a la descrita para el VDI del curso anterior (que, de momento, mantendremos también descargable durante un tiempo). Más que sustituir la máquina del curso pasado, es recomendable mantener aquélla y, para la de este curso, crear una máquina virtual totalmente nueva.

– Habilitar bit de Virtualización en la BIOS:

Muchos portátiles y PCs, tienen deshabilitado, por defecto, en la BIOS, el bit de Virtualización (VTx). Es fundamental que esté HABILITADO (Enabled) pues, de lo contrario, aunque podamos instalar la plataforma VirtualBox en nuestro equipo, al intentar lanzar cualquier máquina virtual, nos dará un error.

 

– Configuración al crear la máquina virtual  (a tener muy en cuenta):

  • Memoria RAM: mínimo 2048MB.
  • Memoria de vídeo: 128 MB.
  • NO habilitar la aceleración 3D (ya que ello provocaría que los paquetes de OpenGL instalados no funcionaran bien y que programas como Postman no funcionaran correctamente).
  • NO habilitar la aceleración 2D.

 

– Instalar Oracle VM VirtualBox Extension Pack:

Cuando instalemos la plataforma VirtualBox (actualmente en su versión 5.1.28 y descargable desde la página https://www.virtualbox.org/wiki/Downloads), no debemos olvidar, una vez instalado, descargar el paquete de extensiones Oracle VM VirtualBox Extension Pack. Una vez descargado, abriremos la plataforma VirtualBox, iremos al menú Archivo -> Preferencias -> Extensiones y añadiremos a la plataforma el fichero con extensión vbox-extpack.

Sin estas extensiones, no podremos conectar ni hacer attach de dispositivos USB a mayor velocidad que marca el estándar 1.1 (muy poco actualmente, donde lo normal son dispositivos estándar 2.0 y, sobre todo, 3.0).

Instalación de Oracle VM VirtualBox Extension Pack

 

– Instalar las Guest Additions en la máquina virtual:

Una vez lancemos el virtual y éste esté funcionando, si la versión de VirtualBox nuestra no coincide con la de las Guest Additions del VDI, tendremos que instalar las Guest Additions de nuestra versión de VirtualBox (en dicho VDI).

Para ello, ya con el virtual arrancado y viendo el escritorio de Ubuntu, iremos al menú Dispositivos de la ventana de VirtualBox y seleccionaremos la opción de más abajo donde pone “Imagen CD Guest Additions“. Con esto, haremos attach de dicha imagen al VDI (como si metiéramos un CD físico en la unidad de CD de la máquina virtual) y podremos proceder a instalar las citadas Additions en el virtual.

Podremos funcionar sin las Additions, pero el funcionamiento del virtual no será tan bueno y la fluidez de paso del foco de ratón y el teclado entre el virtual y el anfitrión y viceversa, será bastante menos eficiente.

Dicha instalación puede realizarse de forma gráfica desde el citado menú, para lo cual se nos solicitará la contraseña de root (que es “alu” sin las comillas) y seguiremos los pasos pertinentes:

Añadir Guest Additions método GUI

O bien, también es posible realizarlo desde una terminal de root (accesible con el comando sudo su y poniendo la contraseña alu) siempre que antes hayamos hecho attach del CD desde el menú Dispositivos del virtual.

Una vez alcanzada la terminal de root ejecutaremos estos comandos:

# cd /media/alu/VBOXADDITIONS_5.1.26_117224

# ./VBoxLinuxAdditions.run

Ejecutar VBoxLinuxAdditions.run desde terminal de texto
Ejecución de VBoxLinuxAdditions.run desde terminal de texto
Ejecutada la instalación de las Guest Additions desde terminal de texto

 

Problema con módulo mei_me en Ubuntu 16.04 LTS

La semana pasada, en el laboratorio L13, tuvimos problemas con el arranque de los equipos clL13-8, clL13-10 y clL13-20 que tienen relación con el módulo Intel Management Engine Interface (Intel MEI).

 

 

Este módulo aparece documentado en https://www.kernel.org/doc/Documentation/misc-devices/mei/mei.txt

Por alguna razón (pensamos que de algún glitch del HW de determinados equipos), lo que antes no causaba problemas con dicho driver mei_me (tal como lo carga el kernel de Ubuntu), empezó a darlos. Por lo que parece, tiene relación con el acceso a los puertos SATA de los discos, hasta el punto de bloquear el PC sin que éste haya terminado el proceso de arranque (lo que supone que ya, en ningún momento, nos aparezca la interfaz gráfica lightdm para validación de usuarios).

Además, son problemas aleatorios, que en el clL13-20, hemos visto que a veces (casi siempre) se daban y a veces no (alguna vez), no.

Ante esto y, después de haber consultado el mismo problema (o asociado al mismo) en varios foros de Ubuntu y Debian:

parece ser que, la mejor solución (si no queremos tener que ir cambiando placas base por un fallo, además intermitente y de aparente y sobrevenida incompatibilidad del chipset del equipo con el módulo mei_me), es deshabilitar dicho módulo al inicio para que el kernel nunca llegue a cargarlo.

Esto lo llevamos a cabo añadiendo al fichero /etc/modprobe.d/blacklist-watchdog.conf la siguiente línea final:

blacklist    mei_me

De esta forma, al reiniciar el equipo, veremos cómo ya no muestra errores relacionados con esto, ya no se congela el equipo durante el arranque, y aparecerá bien la interfaz gráfica lightdm de Ubuntu solicitando el usuario y contraseña de la EPS.

Además, verificamos que el módulo ya no está cargado, utilizando el comando:

lsmod | grep mei

(no debe dar nada como salida)

De momento, este problema sólo ha sucedido con equipos del modelo HW APD0912.

Esperemos no se vaya extendiendo a más equipos pues, de lo contrario, supondría poner, generalizadamente, este módulo en blacklist para todos los laboratorios (o, al menos, en todos los laboratorios con máquinas del modelo APD0912).

 

Guardar

Virtual Ubuntu EPS 2016 (VDI) (y 2)

Para la obtención del fichero VDI del modelo de laboratorio de la EPS (Virtual Ubuntu EPS 2016) con el que poder crear nuestra máquina virtual, tendremos que realizar la descarga del mismo accediendo antes a esta URL (nos pedirá previamente, aceptar el certificado y luego introducir el usuario y contraseña de la EPS):

https://maktub.eps.ua.es/ubuntuepsvirtual/Ubuntu-VDI-EPS-16_04-2016.vdi

Desde ella, pincharemos en el enlace que aparece para proceder a la descarga del fichero Ubuntu-VDI-EPS-16_04-2016.vdi

El archivo ocupa 24 GB. Es decir, donde descarguemos el mismo, hemos de estar seguros de disponer de 24 GB (la mayoría de pendrives actuales ya tienen 32GB o más y la inmensa mayoría de ordenadores y discos duros externos también dispondrán de espacio para ello). La tardanza en la descarga dependerá de la conexión a Internet. Con una conexión relativamente modesta, en 1 hora aproximadamente (o menos) debería estar descargado.

Una vez descargado, deberemos, si no lo tenemos ya instalado, descargar e instalar VirtualBox (http://www.virtualbox.org) para el Sistema Operativo anfitrión en el que estemos (Windows, MacOS o GNU/Linux). La última versión de la plataforma de virtualización, a día de hoy, es la 5.1.14 (también es importante, además, instalar la parte de VirtualBox Oracle VM VirtualBox Extension Pack)

Una vez instalado, abriremos la plataforma VirtualBox y seguiremos los siguientes pasos:

  • Nueva (máquina virtual) donde nos pedirá el nombre de la misma, qué Sistema Operativo va a ser (Linux) y, dentro de Linux, le diremos en el desplegable Ubuntu 64 bits.

 

paso1-crearvirtual

 

  • Seguidamente nos pedirá la memoria RAM de la que dispondrá: pondremos 2048 MB, pero como mínimo, aconsejo que nunca sean menos de 1024 MB. Hay que tener en cuenta que la memoria dedicada a la máquina virtual no debería exceder en más del 50% a la memoria física que tengamos en nuestro equipo.

 

paso2-crearvdi-ram

  • Luego nos solicitará si deseamos: No agregar un disco duro a la máquina virtual, Crear un disco duro vacío o Usar un archivo de disco duro virtual existente. Optaremos por esta última y seleccionaremos nuestro VDI.

 

paso3-discoduro

 

paso4-seleccionvdi

 

paso5-seleccionvdi

 

La máquina virtual se proporciona ya con las VBOXGuestAdditions para Ubuntu instaladas en el VDI (lo que permite una mejor integración del ratón en el paso entre anfitrión y virtual y mejoras en la resolución potencial del mismo).

La máquina virtual, por defecto, se proporciona a una resolución de 1024×768 (4:3) pero si se quiere, desde dentro de la misma, en Configuración (rueda dentada), opción Monitores, se puede cambiar a resoluciones mayores y relaciones de aspecto distintas (generalmente 16:9 con monitores panorámicos).

También puede, desde VirtualBox, habilitarse Ver en Pantalla Completa, Ajustada o tenerla (por defecto), en modo Ventana.

 

paso7-previoconfigurarsistema

 

Una vez agregada, configuraremos lo siguiente:

  • Sistema: Aquí deshabilitaremos lo relativo a Disquete y CD/DVD como métodos de arranque (es decir, que la máquina arranque directa de disco duro). Aquí podríamos modificar la memoria RAM dada en la creación de la máquina virtual. También podemos añadir 1-2 procesadores (en función del equipo que tengamos) en la pestaña Procesadores.

 

paso8-configuradosistema

  • Pantalla: Aquí es fundamental elevar de 12MB a 128MB la memoria de vídeo (si no, irá fatal el virtual a nivel gráfico). NO HABILITAR la Aceleración 3D ya que con las GuestAdditions no va bien y generará problemas (desaparecerá el ratón al introducirnos en el área de la máquina virtual). Monitores, en principio, dejaremos 1 (aunque podríamos poner 2, en cuyo caso, luego dentro de Ubuntu 16.04 Virtual, podríamos configurar dichos monitores en Escritorio Extendido o Espejado).

 

paso9-configurarvideo

 

  • Red: Comprobaremos que la red está configurada como NAT.

 

Ya podremos lanzar la máquina virtual desde el botón Iniciar.

 

paso13-lanzandovdi

 

Veremos que empezará con el gestor de arranque LILO mostrando como único Sistema Operativo GNU/Linux. Podremos entrar ó, si no, en pocos segundos él solo cargará el kernel de GNU/Linux. Para facilitar las cosas, el sistema hace autologin del usuario alu (cuya contraseña es también alu). Está configurado para poder trabajar así. Sin embargo, si se quiere acceder como root, se puede usando el comando, desde una terminal gráfica de texto:

sudo su

(contraseña alu)

 

paso14-vdilanzadoyvalidadoconalu

paso15-vdi-pasaraluaroot

 

Desde root ya tendríamos el control total del sistema, podríamos instalar paquetes, actualizar, etc…

Aunque nuestra recomendación final es no tocar demasiado si no se sabe bien lo que se va a hacer (o bien, al menos, hacer algún tipo de copia de seguridad previa del VDI original para evitar que, toqueteando, hagamos, por error, el sistema inoperativo y perdamos todo lo que tuviéramos en el VDI -lo que, además, obligaría a una nueva descarga del mismo-).

 

Cambiar la resolución de la máquina virtual Virtual Ubuntu EPS 2016

Si se requiriera cambiar la resolución por defecto (1024×768, 4:3) de la máquina virtual, procederíamos, desde dentro de ella, de la siguiente manera:

  • Clic a Configuración (icono de Unity de la rueda dentada y llave inglesa).
  • Clic apartado Hardware.
  • Clic en Monitores.
  • Desde dentro de dicha opción, cambiar la resolución y relación de aspecto a la que mejor nos convenga.
  • Luego nos preguntará si Mantener o no dicha configuración y, si lo vemos oportuno, diremos que sí.

 

paso16-cambiarresolucionvdi

 

Guardar

Guardar