Documentos de Académico
Documentos de Profesional
Documentos de Cultura
“LICENCIATURA EN INGENIERÍA EN
SISTEMAS COMPUTACIONALES”.
Matrícula: 146037
Grupo: K093
1
Esta actividad deberás realizarla en una máquina virtual que tenga instalada cualquier
distribución del sistema operativo GNU/Linux, o en caso de no desear utilizar máquina
virtual, tendrás que tener instalada en tu computadora cualquier distribución, para poder
realizar lo siguiente:
2
e. Descripción del funcionamiento de cada programa realizando alguna prueba,
dependiendo del programa; por ejemplo, para el entorno gráfico de desarrollo escribir
algún programa tipo “Hola mundo”, mostrando su funcionamiento, para el sistema gestor
de base de datos diseñando alguna base de datos y mostrando la creación de una tabla.
3
Instalación
2. Seguir con los pasos del asistente de instalación y no olvidarse la clave asignada al
superusuario
root. Una vez instalado el servidor MySQL verificamos que el servidor se haya
levantado a
4
través del siguiente comando:
1sudo netstat -tap | grep mysql
Y colocar la IP asignada al servidor, esto sirve para que el servidor acepte conexiones de
clientes
externos. Por ejemplo:
1bind-address = 192.168.90.100
4. Reiniciar el servidor MySQL usando el comando:
sudo /etc/init.d/mysql
1
restart
1mysql -u root -p
5
mysql>GRANT ALL PRIVILEGES ON *.* TO admin@"%" IDENTIFIED BY 'manager' WIT
2
H GRANT OPTION;
3
mysql>FLUSH PRIVILEGES;
4
mysql>QUIT;
NOTA: en este caso la contraseña para el usuario creado es manager, de preferencia
cambiarla
a una más segura.
7. Instalar un cliente de administración gráfico para conectarse al servidor MySQL con el
usuario
creado en el paso 6. En mi caso instalé la versión para Windows de la
herramienta MySQL GUI
Tools descargando la aplicación del siguiente link:
http://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-gui-tools-5.0-r17-win32.msi/
from/pick
6
2host='%' WHERE user='nombreUsuario';
3mysql>FLUSH PRIVILEGES;
4mysql>QUIT;
7
/etc/apache2/apache2.conf
...
ServerName dominio_del_servidor_o_IP
Guarde y cierre el archivo cuando termine.
Después, revise los errores de sintaxis escribiendo:
sudo apache2ctl configtest
Puesto que hemos añadido la directiva global ServerName, todo lo que debe ver es:
Output
Syntax OK
Reinicie Apache para implementar los cambios:
sudo systemctl restart apache2
Ahora puede comenzar a ajustar el firewall.
Ajustar el Firewall para Permitir el Tráfico Web
Ahora, asumiendo que ha seguido las instrucciones iniciales de configuración del servidor
para habilitar el firewall UFW, asegúrese de que el firewall permita el tráfico HTTP y
HTTPS. Puede asegurarse de que UFW tiene un perfil de aplicación para Apache así:
sudo ufw app list
Output
Available applications:
Apache
Apache Full
Apache Secure
OpenSSH
Si observa el perfil Apache Full, debería mostrar que habilita el tráfico a los puertos 80 y
443:
sudo ufw app info "Apache Full"
Output
Profile: Apache Full
Title: Web Server (HTTP,HTTPS)
Description: Apache v2 is the next generation of the omnipresent Apache web
server.
8
Ports:
80,443/tcp
Permitir el tráfico entrante para ese perfil:
sudo ufw allow in "Apache Full"
Usted puede hacer un chequeo inmediato para verificar que todo salió según lo planeado
visitando la dirección IP pública de su servidor en su navegador web (vea la nota en el
siguiente encabezado para averiguar cuál es su dirección IP pública si no tiene esta
información ya):
http://la_ip_de_su_servidor
Verá la página web predeterminada de Apache y Ubuntu 16.04, que está disponible para
fines informativos y de prueba. Debe ser algo como esto:
9
10
Si usted ve esta página, entonces su servidor web está correctamente instalado y
accesible a través del firewall.
11
Después de esto, tenemos que reiniciar el servidor web Apache para que nuestros
cambios sean reconocidos. Puede hacerlo hacerlo ejecutando esto:
sudo systemctl restart apache2
También podemos comprobar el estado del servicio de apache2 a través de systemctl:
sudo systemctl status apache2
Sample Output
● apache2.service - LSB: Apache2 web server
Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled)
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
Active: active (running) since Wed 2016-04-13 14:28:43 EDT; 45s ago
Docs: man:systemd-sysv-generator(8)
Process: 13581 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCESS)
Process: 13605 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS)
Tasks: 6 (limit: 512)
CGroup: /system.slice/apache2.service
├─13623 /usr/sbin/apache2 -k start
├─13626 /usr/sbin/apache2 -k start
├─13627 /usr/sbin/apache2 -k start
├─13628 /usr/sbin/apache2 -k start
├─13629 /usr/sbin/apache2 -k start
└─13630 /usr/sbin/apache2 -k start
12
Instalación de Módulos de PHP
Para mejorar la funcionalidad de PHP, podemos instalar opcionalmente algunos módulos
adicionales.
Para ver las opciones disponibles para los módulos de PHP y bibliotecas, se puede
canalizar los resultados de la búsqueda apt-cache dentro de less, un localizador que le
permite desplazarse a través de la salida de otros comandos:
apt-cache search php- | less
Use las teclas de flecha para desplazarse hacia arriba y hacia abajo, y q para salir.
Los resultados son todos los componentes opcionales que se pueden instalar. Se le dará
una breve descripción de cada uno:
libnet-libidn-perl - Enlaces de Perl para GNU Libidn
php-all-dev - Paquete que depende de todos los paquetes de desarrollo de PHP
soportados
php-cgi - Del lado del servidor, lenguaje de scripting embebido en HTML (CGI binario)
(Por defecto)
php-cli - Intérprete de línea de comandos para el lenguaje de scripting PHP (Por defecto)
php-common - Archivos comunes para paquetes construidos desde fuente PHP
php-curl - Módulo CURL para PHP [Por defecto]
php-dev - Archivos para el módulo de desarrollo PHP (Por defecto)
php-gd - Módulo GD para PHP [Por defecto]
php-gmp - Módulo GMP para PHP [Por defecto]
…
:
Con el fin de probar que nuestro sistema se ha configurado correctamente para PHP,
podemos crear un script PHP muy básico.
Vamos a llamar a este script info.php. Para que Apache pueda buscar el archivo y lo
trabaje correctamente, se debe guardar en un directorio muy específico, al cual se le
conoce como "raíz".
En Ubuntu 16.04, este directorio se encuentra en /var/www/html/. Podemos crear el
archivo en esa ubicación ejecutando:
sudo nano /var/www/html/info.php
Esto abrirá un archivo en blanco. Queremos poner el texto siguiente, que es el código
PHP válido, dentro del archivo:
info.php
13
<?php
phpinfo();
?>
Cuando haya terminado, guarde y cierre el archivo.
Ahora podemos probar si nuestro servidor web puede visualizar correctamente el
contenido generado por un script PHP. Para probar esto, sólo tenemos que visitar esta
página en nuestro navegador web. De nuevo necesitará la dirección IP pública del
servidor.
La dirección que desea visitar será:
http://dirección_IP_del_servidor/info.php
La página que verá debe ser algo como esto:
14
Esta página básicamente le da información sobre el servidor desde la perspectiva de
PHP. Es útil para la depuración y para asegurarse de que los ajustes se están aplicando
correctamente.
Si esto fue un éxito, entonces su PHP está funcionando como se esperaba.
h. Entorno gráfico de desarrollo web: Monodevelop
15
Click para agrandar
De todos los archivos creados son 2 los más importantes, Main.cs y MainWindow.cs estos
se pueden ver en la ventana solución
Para empezar a trabajar con el trabajo de diseño, se debe hacer doble click sobre
MainWindow.cs y seleccionar ‘diseñador’ que se encuentra en la parte inferior. De esta
manera podremos ver la ventana sobre la cual podremos empezar a trabajar
16
Click para agrandar
A lo que me refiero es que los controles o componentes deben estar dentro de alguno de
estos u otros contenedores. Para ser más gráfico, en este ejemplo quiero usar dos
controles; un “Label” y un “Button” y quiero que al pulsar sobre el botón aparezca en la
etiqueta un “Hola Mundo”. Por lo tanto, necesito pensar en el orden en que estarán los
controles, por lo que para esta pequeña prueba solo necesito una tabla de una columna y
dos filas usando el “VBox” y después incluyendo los controles en su fila correspondiente.
17
Para el “button”
Widget name: boton
Buton Type: Text and Icon
Icon: gtk-yes
Label: Aceptar
El siguiente paso a seguir es declarar la acción del botón, que cuando se dé un click este
haga algo, para realizar esta declaración es necesario seleccionar el botón y después ir a
la pestaña “señales” en las “Propiedades del componente”. Ahí podremos ver un listado
de comportamientos de control, buscamos el que se usa al pulsar el botón que se llama
“Clicked”. Al lado de este evento veremos un mensaje que dice “Click here to add a new
handler”, así que le hago caso y le doy un click para ponerle un nombre… se me ocurre,
por ejemplo: “boton_Clicked”, ósea “botón” ya que es el nombre del control y agregarle el
sufijo del nombre del evento, para que nuestro código tenga coherencia.
trabajamos sobre el código pulsando sobre el botón “Código Fuente” del “MainWindow.cs”
y veremos lo siguiente:
using System;
using Gtk;
public partial class MainWindow: Gtk.Window
{
public MainWindow (): base (Gtk.WindowType.Toplevel)
{
Build ();
}
protected void OnDeleteEvent (object sender, DeleteEventArgs a)
{
Application.Quit ();
18
a.RetVal = true;
}
protected virtual void boton_Clicked (object sender, System.EventArgs e)
{
}
}
Vemos ahora que hay una función llamada boton_Clicked que MonoDevelop agrego
automáticamente, y ahora vamos a agregar el código bendito para que se muestre un
“Hola Mundo” en el label, seria asi:
texto. Text=” Hola Mundo!!”;
Ya quedó, eso fue todo, solo un consejo que quiero darles es que se fijen que es
‘texto.Text’ y no ‘texto.text’, estamos hablando de C# y este es case sensitive. Podemos
probar como funciona nuestra aplicación de forma rápida, pulsando sobre el icono de
ejecutar.
Queda asi:
abrimos una terminal (en modo gráfico), o hacemos un Ctrl-ALT-F2 por ejemplo, para
irnos a una de las consolas, y nos conectarnos:
como root, si podemos o
con nuestro usuario, y luego desde linea de comando tecleamos “su” y tecleamos
la contraseña de root
Ahora ya estamos en una terminal con permisos, de forma que instalamos el entorno de
desarrollo Java
apt-get install openjdk-7-jdk
19
Nos instalara el entorno de desarrollo java (la versión Open, si no, debes descargarla
desde Oracle)
A continuación, vas a la página de descargas de Eclipse
http://www.eclipse.org/downloads/?osType=linux
y te descargas la versión que te interese (32 o 64 bits) y dejas el fichero en tu directorio de
trabajo. En el momento de escribir esto, lo podrías hacer con un:
~# wget http://eclipse.ialto.com/technology/epp/downloads/release/kepler/SR2/eclipse-
standard-kepler-SR2-linux-gtk.tar.gz
Ahora ya podemos descomprimir con el consabido
:~# tar -xzvf eclipse-standard-kepler-SR2-linux-gtk.tar.gz
Esto nos generará una carpeta “eclipse” que pasaremos a mover bajo el directorio /opt
:~# mv eclipse /opt/
Y para esta primera fase, solo nos queda crear el lanzador, por lo que primero creamos el
fichero con nano:
nano /usr/share/applications/eclipse.desktop
y tecleamos dentro:
[Desktop Entry]
Name=Eclipse
Type=Application
Exec=/opt/eclipse/eclipse
Terminal=false
Icon=/opt/eclipse/icon.xpm
Comment=Entorno de Desarrollo integrado (Eclipse)
NoDisplay=false
Categories=Development;IDE
Name[en]=eclipse.desktop
Ya puedes volver al entorno gráfico, abrir el navegador de archivos, ir
hasta /usr/share/applications/ y arrastrar eclipse.desktop hasta la barra de “unity” para
dejar accesible y comodo tu nuevo IDE
Al empezar, nos preguntará por el área de trabajo, y nos sugiere una carpeta llamada
workspace justo debajo de nuestra “home“;
20
Lo primero que hacemos a continuaciones instalar el plugin de Aptana Studio, ya que nos
aporta mejoras para la programación de PHP, y la conexión por FTP
Para ello, nos vamos al Menú Help, y escogemos “Install New Software”
21
En la pantalla que aparece
22
Añadiremos un repositorio a Eclipse, para eso:
1. Pulsamos “Add”
2. En “Name” podemos indicar por ejemplo “Aptana Studio”
3. y en Location pondremos: http://download.aptana.com/studio3/plugin/install
4. Por ultimo pulsamos OK
Como resultado, nuestra maquina se intentará conectar al nuevo repositorio; cuando lo
consiga nos mostrara una lista de los módulos disponibles:
23
Podemos utilizar el Select All, y pulsar en Next
24
25
Con lo que nos mostrará todos los módulos que va a instalar; un nuevo “Next”
26
Hasta que vemos aparecer esta pantalla, que nos indica que hemos finalizado la
instalación de Aptana Studio, y debemos reiniciar Eclipse, pues un “Yes” lo hará
Otro plugin que puede ser interesante instalar es el que nos permite intercambiar temas, y
así cambiar los colores de la pantalla. Para poder manejar esos temas cómodamente hay
un plugin, y ahora que ya sabemos instalarlo, será un momento.
Vamos a Help->Install New Software y le añadimos un repositorio, como hemos hecho
antes, esta vez, en Nombre, podemos indicar “Gestor de Temas” y en dirección:
“http://eclipse-color-theme.github.com/update”, repetimos el proceso anterior para
descargar e instalar el plugin, y una vez esté instalado, podemos ir
a Windows > Preferences y en la sección General > Appearance >Color Theme.
27
tendremos un montón de temas que podemos ir seleccionando para ver su aspecto, y
cuando encontremos el que nos gusta, pulsamos OK
UMLet, está disponible para Linux, Windows y Mac. Su versión más reciente se puede
descargar desde aquí. También se puede instalar desde los repositorios oficiales de las
distribuciones más populares.
En Debian/Ubuntu y derivados:
sudo apt-get install umlet
En Arch y derivados:
sudo pacman -S umlet
UMLet, como su nombre indica es una herramienta para la creación de Diagramas UML.
Está basada en Java y es distribuida bajo la licencia GPL3.
28
UMLet tiene una interfaz gráfica muy simple y utiliza un lenguaje de marcado para la
creación y edición de los elementos UML, lo cual permite una ventaja para el Modelado
avanzado.
Por ejemplo, para cambiar el color de un elemento UML, dando clic elemento y editar en
el área de Propiedades:
bg = cyan
Use Case 1
El resultado sería el siguiente:
29
Otra característica de UMLet es la gran cantidad de formatos que soporta para la
exportación de sus diagramas.
k. Software de animación: Blender
Lo primero de todo será agregar los repositorios de la aplicación:
sudo add-apt-repository ppa:irie/blender
30
Referencias
Jesús, C. (2001). “¿Qué es un sistema operativo?" en Sistemas operativos. Una visión
aplicada. España: McGraw-Hill.
Jesús, C. (2001). “Componentes y estructura del sistema operativo” en Sistemas
operativos. Una visión aplicada. España: McGraw-Hill.
Stallings, W. (2000). ”Introducción a los Sistemas Operativos” en Sistemas operativos.
España: Prentice-Hall.
Tenenbaum, A., & Woodhull, A. (1999). “Introducción” en Sistemas operativos: Diseño e
implementación. México: Prentice-Hall.
31