<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ubuntu | ahierro.es</title>
	<atom:link href="https://blog.ahierro.es/tag/ubuntu/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.ahierro.es</link>
	<description>Un blog personal  donde compartir experiencias e inquietudes relacionadas con internet, tecnología y otros asuntos interesantes</description>
	<lastBuildDate>Tue, 05 Jan 2021 07:19:45 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.2</generator>

<image>
	<url>https://blog.ahierro.es/wp-content/uploads/2018/10/cropped-logo_small-1-2-32x32.png</url>
	<title>ubuntu | ahierro.es</title>
	<link>https://blog.ahierro.es</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Ubuntu en dispositivos táctiles</title>
		<link>https://blog.ahierro.es/ubuntu-en-dispositivos-tactiles/</link>
					<comments>https://blog.ahierro.es/ubuntu-en-dispositivos-tactiles/#respond</comments>
		
		<dc:creator><![CDATA[Andres]]></dc:creator>
		<pubDate>Wed, 14 Aug 2019 06:18:08 +0000</pubDate>
				<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ubuntu]]></category>
		<guid isPermaLink="false">https://blog.ahierro.es/?p=1562</guid>

					<description><![CDATA[<p>Desde hace varias semanas vengo probando como funciona Ubuntu Desktop 19.04 en un dispositivo táctil sin teclado. Os cuento como ha sido mi experiencia. El caso es que tengo un pc (o tablet) Microsoft Surface Pro 1 en el que tenía instalado Windows 10. La verdad es que esa combinación funciona muy bien para el &#8230; </p>
<p class="link-more"><a href="https://blog.ahierro.es/ubuntu-en-dispositivos-tactiles/" class="more-link">Continuar leyendo<span class="screen-reader-text"> "Ubuntu en dispositivos táctiles"</span></a></p>
La entrada <a href="https://blog.ahierro.es/ubuntu-en-dispositivos-tactiles/">Ubuntu en dispositivos táctiles</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></description>
										<content:encoded><![CDATA[<p>Desde hace varias semanas vengo probando como funciona Ubuntu Desktop 19.04 en un dispositivo táctil sin teclado. Os cuento como ha sido mi experiencia.</p>



<figure class="wp-block-image is-resized"><img fetchpriority="high" decoding="async" src="https://blog.ahierro.es/wp-content/uploads/2019/08/Ubuntu-Tablet-image.jpg.jpg" alt="Ubuntu en dispositivos táctiles" class="wp-image-1567" width="840" height="379"/></figure>



<span id="more-1562"></span>



<p>El caso es que tengo un pc (o tablet) Microsoft Surface Pro 1 en el que tenía instalado Windows 10. La verdad es que esa combinación funciona muy bien para el uso que hago de este dispositivo: consultas varias en internet, escribir este blog, sincronizar algún gadget, etc., en fin, un uso lúdico y poco intensivo. Pero desde hace ya algún tiempo rondaba por mi cabeza la idea de probar cómo iría con alguna distribución de Linux.</p>



<h2 class="wp-block-heading">Microsoft Surface Pro 1</h2>



<p>Para aquellos que no conozcan este dispositivo os dejo una pequeña presentación. El equipo tiene ya algunos añitos, concretamente 6, salio a la venta en 2012 pero yo lo adquirí en 2013. Tiene un procesador Intel Core I5-3317U con dos cores a 1.70GHz, 4GB de memoria RAM, 128GB de disco duro SSD y una pantalla de 10,6 pulgadas con una resolución de 1920&#215;1080.</p>



<p>En la practica es un equipo  pesado en relación a su tamaño, se calienta demasiado y su batería difícilmente duraba dos horas con Windows 8 o con Windows 10.</p>



<h2 class="wp-block-heading">Elección de distribución</h2>



<p>En mi ordenador personal utilizo Xubuntu, y estoy muy contento con esta distribución, de hecho me siento mucho más cómodo con su escritorio Xfce que con GNOME o KDE, así que fue mi primera opción. Pero tras probarlo desde un live usb lo descarté sobre la marcha, el teclado en pantalla no aparecía por defecto, y aunque sé que podría encontrar alguno en los repositorios, digamos que lo tomé como un presagio y no tenía ganas de buscarme complicaciones.</p>





<p>La segunda opción fue Ubuntu 19.04, también desde live usb. En este caso el teclado en pantalla apareció desde que situé el foco en un cuadro de texto. Y aunque en ese momento existían algunos detalles que no me convencían, la existencia de apartados dedicados a la configuración de accesibilidad para ratón y teclado, unido al teclado en pantalla me convencieron. Así que me despedí de Windows e instalé Ubuntu, un HD de 128GB no es territorio para que convivan dos sistemas operativos.</p>



<h2 class="wp-block-heading">Experiencia con Ubuntu en dispositivos táctiles</h2>



<p>Y ahora que ya os he soltado la chapa, vamos a revisar los aspectos que considero más relevantes de mi experiencia con Ubuntu en la tablet Microsoft Surface.</p>



<h3 class="wp-block-heading">Teclado en pantalla</h3>



<p>Ubuntu Desktop tiene el teclado en pantalla instalado por defecto, así que podremos utilizarlo tanto ejecutando la distro desde el live usb como en el proceso de instalación, y por supuesto una vez instalado en nuestro equipo.</p>



<p>El teclado en pantalla está estéticamente bien logrado y no me resulta nada intrusivo en el despliegue, es más estos dos puntos me parecen sensacionales. Su funcionamiento es bueno, salvo al escribir en la barra de direcciones de Firefox que tiene un comportamiento errático. Este problema no lo he notado en ningún otro programa.</p>



<p>El principal inconveniente con este teclado es que es excesivamente sencillo, no dispone de teclas de dirección, ni de teclas de función (F1, F2&#8230;), ni de teclas de control (Alt, Ctrl, Esc&#8230;). Parece pensado para utilizarse en una tablet tipo Android más que en un pc.</p>



<p>Esto me ha obligado a instalar un segundo teclado en palla para solventar las situaciones en las que necesito hacer uso de alguna de las teclas de las que no dispongo, algo que me resulta muy engorroso. </p>



<p>Este teclado auxiliar se llama Florence Virtual Keyboard, y está muy bien para salir del paso, pero personalmente no me convence como teclado principal. Si quieres instalarlo:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo apt-get update
sudo apt-get install florence
</pre></div>


<p>Afortunadamente este tipo de teclas, por el uso que hago del dispositivo, las utilizo poco. Pero si tú haces uso intensivo de ellas, el teclado en pantalla de Ubuntu se te quedará corto.</p>



<h3 class="wp-block-heading">Stylus</h3>



<p>La tablet Microsoft surface 1 viene con un lápiz o stylus con cuatro funciones principales: puntero, click izquierdo, click derecho y borrar. Mi stylus ha perdido esta última funcionalidad así que os hablaré de las otras tres.</p>



<p>El puntero funciona perfectamente, al igual que la simulación del click del botón izquierdo del ratón. La simulación del click derecho en cambio no funciona desde un principio, pero tras una sencilla búsqueda en internet pude solucionarlo. Tan solo tenemos que hacer que Ubuntu ejecute el siguiente comando tras el arranque:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
xmodmap -e &quot;pointer = 1 3 2 4 5 6 7 8 9 10&quot;
</pre></div>


<h3 class="wp-block-heading">Acciones táctiles</h3>



<p>El manejo de la tablet sin el lápiz está conseguido a medias. Si bien la respuesta a las acciones táctiles es buena, no he conseguido simular el click derecho del ratón de una forma satisfactoria. A pesar de que  en el apartado «Acceso Universal», dentro de la configuración de Ubuntu, existe un apartado para este propósito, el resultado no me ha convencido en absoluto. </p>



<h3 class="wp-block-heading">Rotación de pantalla</h3>



<p>La rotación de la pantalla es otra de las funcionalidades que vienen por defecto. Su funcionamiento es muy bueno, la respuesta al giro es adecuada y el escritorio y los programas se adaptan perfectamente a visualizaciones tanto horizontales como verticales. Además en las herramientas situadas en la esquina superior derecha podemos bloquear la rotación, algo muy de agradecer en un dispositivo de estas características.</p>



<h3 class="wp-block-heading">Duración de la batería</h3>



<p>Un aspecto que me ha sorprendido gratamente y que no me esperaba es la duración de la batería. Si con Windows 10 rara vez conseguía tener dos horas reales de uso de la tablet, con Ubuntu he conseguido duplicar esta autonomía. Evidentemente esto dependerá del uso que hagamos del dispositivo, y es posible que en usos más intensivos la diferencia entre los dos sistemas se reduzca.</p>





<p>Además, algo con un origen muy en relación a la duración de la batería, es que la tablet ahora se calienta menos que cuando tenía instalado Windows.</p>



<h2 class="wp-block-heading">Conclusión</h2>



<p>El uso de Ubuntu en dispositivos táctiles tiene sus luces y sus sombras. La experiencia de usuario está lejos de ser perfecta, pero aun así, para mi ha sido más que suficiente para decidirme a cambiar.</p>



<h2 class="wp-block-heading">Créditos, referencia y artículos relacionados</h2>



<ul class="wp-block-list"><li><a href="https://blog.ahierro.es/averiguar-que-version-de-linux-tengo-instalada/">Averiguar que versión de Linux tengo instalada</a>.</li><li><a href="https://blog.ahierro.es/como-instalar-linux-dentro-de-windows-10-utilizando-wsl-1/">Cómo instalar Linux dentro de Windows 10 utilizando WSL 1</a></li><li><a href="https://blog.ahierro.es/actualizacion-de-windows-10-machaca-el-gestor-de-arranque-de-linux/">Actualización de Windows 10 machaca el gestor de arranque de Linux</a></li></ul>La entrada <a href="https://blog.ahierro.es/ubuntu-en-dispositivos-tactiles/">Ubuntu en dispositivos táctiles</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></content:encoded>
					
					<wfw:commentRss>https://blog.ahierro.es/ubuntu-en-dispositivos-tactiles/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Habilitar módulos en Apache 2 sobre Ubuntu</title>
		<link>https://blog.ahierro.es/habilitar-modulos-en-apache-2-sobre-ubuntu/</link>
					<comments>https://blog.ahierro.es/habilitar-modulos-en-apache-2-sobre-ubuntu/#comments</comments>
		
		<dc:creator><![CDATA[Andres]]></dc:creator>
		<pubDate>Mon, 22 Jul 2019 06:39:40 +0000</pubDate>
				<category><![CDATA[Servicios]]></category>
		<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[Tips & Quick Wins]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ubuntu]]></category>
		<guid isPermaLink="false">https://blog.ahierro.es/?p=1491</guid>

					<description><![CDATA[<p>En realidad esta entrada iba a tratar sobre cómo habilitar el módulo mod_rewrite en Apache 2, cosa que no tiene mucho sentido pues ya (casi) siempre viene habilitado por defecto al instalar Apache. Así que puestos a escribir sobre habilitar módulos, y dado que es una tarea bastante habitual habitual cuando instalamos un nuevo servidor &#8230; </p>
<p class="link-more"><a href="https://blog.ahierro.es/habilitar-modulos-en-apache-2-sobre-ubuntu/" class="more-link">Continuar leyendo<span class="screen-reader-text"> "Habilitar módulos en Apache 2 sobre Ubuntu"</span></a></p>
La entrada <a href="https://blog.ahierro.es/habilitar-modulos-en-apache-2-sobre-ubuntu/">Habilitar módulos en Apache 2 sobre Ubuntu</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></description>
										<content:encoded><![CDATA[<p>En realidad esta entrada iba a tratar sobre cómo habilitar el módulo mod_rewrite en Apache 2, cosa que no tiene mucho sentido pues ya (casi) siempre viene habilitado por defecto al instalar Apache.</p>



<p>Así que puestos a escribir sobre habilitar módulos, y dado que es una tarea bastante habitual habitual cuando instalamos un nuevo servidor web, o incluso cuando instalamos algunos paquetes de software sobre un servidor web existente, decidí escribir esta entrada más generalista.</p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://blog.ahierro.es/wp-content/uploads/2019/07/habilitar.png" alt="Habilitar modulos Apache" class="wp-image-1493" width="840" height="330"/></figure>



<span id="more-1491"></span>



<p>Y es que en la actualidad, en una instalación estándar de Apache 2 sobre Ubuntu 18 se instalan más de 100 módulos, de los cuales sólo hay activos algo más de una veintena.</p>



<h2 class="wp-block-heading">Habilitar módulos</h2>



<p>Lejos quedan los tiempos en los que para habilitar módulos de Apache teníamos que editar el archivo <em>apache.conf</em>, tarea que generalmente no consistía más que en descomentar alguna línea. Hoy basta con ejecutar el comando <em>a2enmod</em> y reiniciar el servidor:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo a2enmod modulo
sudo service apache2 restart
</pre></div>


<p>Pero descubramos que hay detrás de de este comando.</p>



<p>Los módulos disponibles por Apache 2 se encuentran dentro del directorio <em>/etc/apache2/mods-available/</em>. Lo que quiere decir que si el módulo que queremos habilitar no se encuentra ahí tendremos que copiarlo  y asignarle los permisos adecuados.</p>





<p>Por otro lado, los módulos habilitados se encuentran en el directorio <em>/etc/apache2/mods-enabled/</em>. Pero en este caso en lugar de encontrar archivos, encontraremos enlaces simbólicos a los archivos situados en la carpeta <em>/etc/apache2/mods-available/</em>. Así que una alternativa al comando <em>a2enmod</em> es el comando <em>ln</em>:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; title: ; notranslate">
sudo ln -s /etc/apache2/mods-available/modulo /etc/apache2/mods-enabled/modulo
sudo service apache2 restart
</pre></div>


<h2 class="wp-block-heading">Deshabilitar módulos</h2>



<p> Y para deshabilitar módulos la operación es muy similar, con la salvedad de que en lugar de utilizar el comando <em>a2enmod</em> utilizaremos el comando <em>a2dismod</em>:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo a2dismod modulo
sudo service apache2 restart
</pre></div>


<p>O simplemente eliminaremos el enlace simbólico:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
sudo rm /etc/apache2/mods-enabled/modulo
sudo service apache2 restart
</pre></div>


<h2 class="wp-block-heading">Comprobaciones y logs de errores</h2>



<p>Podemos saber si un módulo se ha instalado correctamente revisando la salida de la función phpinfo() de php, en la sección apache2handler.</p>



<figure class="wp-block-image"><img decoding="async" width="943" height="334" src="https://blog.ahierro.es/wp-content/uploads/2019/07/phpinfo_apache_modules.png" alt="phpinfo Modulos de Apache" class="wp-image-1503" srcset="https://blog.ahierro.es/wp-content/uploads/2019/07/phpinfo_apache_modules.png 943w, https://blog.ahierro.es/wp-content/uploads/2019/07/phpinfo_apache_modules-300x106.png 300w, https://blog.ahierro.es/wp-content/uploads/2019/07/phpinfo_apache_modules-768x272.png 768w" sizes="(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px" /></figure>



<p>Y en caso de experimentar cualquier tipo de problema, el primer lugar dónde consultar qué está ocurriendo son los logs de error de Apache 2, en el archivo  <em>/var/log/apache2/error.log</em>.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
cat /var/log/apache2/error.log
</pre></div>


<h2 class="wp-block-heading">Créditos, referencias y artículos relacionados</h2>



<ul class="wp-block-list"><li>Imagen de portada por <a href="https://pixabay.com/users/stockertui-12831137/" target="_blank" rel="noreferrer noopener" aria-label=" (abre en una nueva pestaña)">Wichan Yodsawai</a>.</li><li><a href="https://blog.ahierro.es/servidor-web-en-raspberry-pi-y-ubuntu-mate/">Servidor Web en Raspberry PI y Ubuntu Mate</a>.</li><li><a href="https://blog.ahierro.es/como-configurar-virtual-hosts-en-apache-y-ubuntu/">Como configurar Virtual Hosts en Apache 2 y Ubuntu</a>.</li><li><a href="https://blog.ahierro.es/archivos-y-permisos-de-usuario-en-apache-y-linux/">Archivos y permisos de usuario en Apache 2 y Linux</a>.</li></ul>La entrada <a href="https://blog.ahierro.es/habilitar-modulos-en-apache-2-sobre-ubuntu/">Habilitar módulos en Apache 2 sobre Ubuntu</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></content:encoded>
					
					<wfw:commentRss>https://blog.ahierro.es/habilitar-modulos-en-apache-2-sobre-ubuntu/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Cómo instalar Linux dentro de Windows 10 utilizando WSL 1</title>
		<link>https://blog.ahierro.es/como-instalar-linux-dentro-de-windows-10-utilizando-wsl-1/</link>
					<comments>https://blog.ahierro.es/como-instalar-linux-dentro-de-windows-10-utilizando-wsl-1/#comments</comments>
		
		<dc:creator><![CDATA[Andres]]></dc:creator>
		<pubDate>Wed, 19 Jun 2019 07:00:59 +0000</pubDate>
				<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[kali linux]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[suse]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[windows]]></category>
		<guid isPermaLink="false">https://blog.ahierro.es/?p=1212</guid>

					<description><![CDATA[<p>En la entrada anterior escribía sobre la experiencia de utilizar Linux desde Windows con WLC. En esta ocasión me centraré en cómo instalar Linux dentro de Windows utilizando WSL 1, un contenido muy al hilo para complementar la entrada anterior y de seguro de gran utilidad para los que todavía no lo habéis probado. La &#8230; </p>
<p class="link-more"><a href="https://blog.ahierro.es/como-instalar-linux-dentro-de-windows-10-utilizando-wsl-1/" class="more-link">Continuar leyendo<span class="screen-reader-text"> "Cómo instalar Linux dentro de Windows 10 utilizando WSL 1"</span></a></p>
La entrada <a href="https://blog.ahierro.es/como-instalar-linux-dentro-de-windows-10-utilizando-wsl-1/">Cómo instalar Linux dentro de Windows 10 utilizando WSL 1</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></description>
										<content:encoded><![CDATA[<p>En la entrada anterior escribía sobre la <a href="https://blog.ahierro.es/ejecutar-linux-en-windows-10-con-wsl/">experiencia de utilizar Linux desde Windows con WLC</a>. En esta ocasión me centraré en cómo instalar Linux dentro de Windows utilizando WSL 1, un contenido muy al hilo para complementar la entrada anterior y de seguro de gran utilidad para los que todavía no lo habéis probado.</p>



<div class="wp-block-image"><figure class="aligncenter is-resized"><img loading="lazy" decoding="async" src="https://blog.ahierro.es/wp-content/uploads/2019/06/linux_en_windodws.png" alt="Linux en Windows" class="wp-image-1227" width="650" height="365" srcset="https://blog.ahierro.es/wp-content/uploads/2019/06/linux_en_windodws.png 650w, https://blog.ahierro.es/wp-content/uploads/2019/06/linux_en_windodws-300x168.png 300w" sizes="auto, (max-width: 650px) 100vw, 650px" /></figure></div>



<span id="more-1212"></span>



<p>La instalación es muy sencilla y no nos tomará más de 10 o 15 minutos, así que vamos al lío.<em> </em></p>



<h2 class="wp-block-heading">Requisitos para instalar Linux en Windows 10 con WSL 1</h2>



<p>Nuestro equipo debe cumplir básicamente dos requisitos:</p>



<ul class="wp-block-list"><li> Tener instalado Windows 10 con versión 16215.0 o posterior .</li><li>Que la instalación de Windows 10 sea de 64 bit.</li></ul>



<p>Además es recomendable disponer al menos de un Pentium 4 a 2.4 GHz o superior, 2 GB de memoria RAM o más y 5 GB de espacio libre en el disco o más.</p>



<h2 class="wp-block-heading">Instalar WSL 1</h2>



<p>El primer paso será instalar el paquete Windows Subsystem for Linux. La forma más sencilla es abrir PowerShell como administrador y ejecuta la siguiente instrucción.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
</pre></div>




<p>La alternativa gráfica pasa por:</p>



<ol class="wp-block-list"><li>Abrir el <em>Panel de Control</em>.</li><li>Acceder al grupo <em>Programas</em>.</li><li> Abrir la ventana para <em>Activar o desactivar las características de Windows</em>.</li><li>Marcar la opción  Subsistema de Windows para Linux y aceptar.</li></ol>



<p>Con cualquiera de las dos opciones nos pedirá reiniciar.</p>



<h2 class="wp-block-heading">Elegir e instalar una distro Linux</h2>



<p>Con WSL instalado es hora de elegir la distribución que queremos instalar de las disponibles en la tienda de Microsoft. A continuación te dejo una lista de las principales:</p>



<ul class="wp-block-list"><li><a rel="noreferrer noopener" aria-label=" (abre en una nueva pestaña)" href="https://www.microsoft.com/es-es/p/debian-gnu-linux/9msvkqc78pk6?activetab=pivot%3Aoverviewtab" target="_blank">Debian GNU/Linux</a></li><li> <a rel="noreferrer noopener" aria-label=" (abre en una nueva pestaña)" href="https://www.microsoft.com/es-es/p/ubuntu-1604-lts/9pjn388hp8c9?rtc=1" target="_blank">Ubuntu 16.04 LTS</a> </li><li><a rel="noreferrer noopener" aria-label=" (abre en una nueva pestaña)" href="https://www.microsoft.com/es-es/p/ubuntu-1804-lts/9n9tngvndl3q?rtc=1" target="_blank">Ubuntu 18.04 LTS</a></li><li><a rel="noreferrer noopener" aria-label=" (abre en una nueva pestaña)" href="https://www.microsoft.com/es-es/p/opensuse-leap-15/9n1tb6fpvj8c?rtc=1" target="_blank">OpenSUSE Leap 15</a></li><li><a rel="noreferrer noopener" aria-label=" (abre en una nueva pestaña)" href="https://www.microsoft.com/es-es/p/opensuse-leap-42/9njvjts82tjx?rtc=1" target="_blank">OpenSUSE Leap 42</a></li><li><a rel="noreferrer noopener" aria-label=" (abre en una nueva pestaña)" href="https://www.microsoft.com/es-es/p/suse-linux-enterprise-server-12/9p32mwbh6cns?rtc=1" target="_blank">SUSE Linux Enterprise Server 12</a></li><li><a href="https://www.microsoft.com/es-es/p/suse-linux-enterprise-server-15/9pmw35d7fnlx?rtc=1" target="_blank" rel="noreferrer noopener" aria-label=" (abre en una nueva pestaña)">SUSE Linux Enterprise Server 15</a></li><li><a aria-label=" (abre en una nueva pestaña)" rel="noreferrer noopener" href="https://www.microsoft.com/es-es/p/kali-linux/9pkr34tncv07?activetab=pivot:overviewtab" target="_blank">Kali Linux</a></li></ul>



<p>Y como comenté en la entrada  <a href="https://blog.ahierro.es/ejecutar-linux-en-windows-10-con-wsl/">Ejecutar Linux en Windows 10 con WSL</a>, existe una lista de distribuciones alternativas creadas específicamente para WSL:</p>



<ul class="wp-block-list"><li> <a rel="noreferrer noopener" aria-label=" (abre en una nueva pestaña)" href="https://www.microsoft.com/es-es/p/fedora-remix-for-wsl/9n6gdm4k2hnc?rtc=1" target="_blank">Fedora Remix for WSL</a></li><li> <a rel="noreferrer noopener" aria-label=" (abre en una nueva pestaña)" href="https://www.microsoft.com/es-es/p/pengwin/9nv1gv1pxz6p?rtc=1" target="_blank">WLinux</a></li><li> <a rel="noreferrer noopener" aria-label=" (abre en una nueva pestaña)" href="https://www.microsoft.com/es-es/p/pengwin-enterprise/9n8lp0x93vcp?rtc=1" target="_blank">WLinux Enterprise</a></li><li> <a href="https://www.microsoft.com/es-es/p/alpine-wsl/9p804crf0395?rtc=1" target="_blank" rel="noreferrer noopener" aria-label=" (abre en una nueva pestaña)">Alpine WSL</a> </li></ul>



<p>Es posible que con el paso del tiempo estas listas varíen, al final del artículo tienes un enlace a la documentación oficial de Microsoft dónde encontrarás la lista de distribuciones actualizada. </p>



<p>Una vez que la descarga y la instalación estén completadas ya podremos abrir nuestra flamante consola de Linux desde Windows! Solo deberemos buscar en el menú de inicio el icono de la distro que hayamos instalado y abrirla como cualquier otra aplicación.</p>



<p>En el primer arranque de nuestra consola notaremos que realiza algunas operaciones para finalizar la instalación y posteriormente nos pedirá que elijamos un nombre de usuario y una contraseña. Tal y como nos indica la consola no es necesario qué coincidan con los de Windows.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="650" height="365" src="https://blog.ahierro.es/wp-content/uploads/2019/06/ubuntu_primer_inicio-1.png" alt="Consola de Ubuntu en Windows" class="wp-image-1224" srcset="https://blog.ahierro.es/wp-content/uploads/2019/06/ubuntu_primer_inicio-1.png 650w, https://blog.ahierro.es/wp-content/uploads/2019/06/ubuntu_primer_inicio-1-300x168.png 300w" sizes="auto, (max-width: 650px) 100vw, 650px" /></figure>



<p>Y con esto hemos acabado. Si todavía no lo habéis probado os recomiendo una vez más, aún a riesgo de parecer pesado, el artículo <a href="https://blog.ahierro.es/ejecutar-linux-en-windows-10-con-wsl/">Ejecutar Linux en Windows 10 con WSL</a>, que estoy convencido de que os resultará de utilidad.</p>



<h2 class="wp-block-heading">Créditos y Referencias</h2>



<ul class="wp-block-list"><li><a rel="noreferrer noopener" aria-label="Documentación de Windows Subsystem for Linux (abre en una nueva pestaña)" href="https://docs.microsoft.com/en-us/windows/wsl/about" target="_blank">Documentación de Windows Subsystem for Linux</a></li><li><a href="https://blog.ahierro.es/ejecutar-linux-en-windows-10-con-wsl/">Ejecutar Linux en Windows 10 con WSL</a></li></ul>La entrada <a href="https://blog.ahierro.es/como-instalar-linux-dentro-de-windows-10-utilizando-wsl-1/">Cómo instalar Linux dentro de Windows 10 utilizando WSL 1</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></content:encoded>
					
					<wfw:commentRss>https://blog.ahierro.es/como-instalar-linux-dentro-de-windows-10-utilizando-wsl-1/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Ejecutar Linux en Windows 10 con WSL</title>
		<link>https://blog.ahierro.es/ejecutar-linux-en-windows-10-con-wsl/</link>
					<comments>https://blog.ahierro.es/ejecutar-linux-en-windows-10-con-wsl/#respond</comments>
		
		<dc:creator><![CDATA[Andres]]></dc:creator>
		<pubDate>Mon, 17 Jun 2019 22:16:32 +0000</pubDate>
				<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[kali linux]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[suse]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[windows]]></category>
		<guid isPermaLink="false">https://blog.ahierro.es/?p=1237</guid>

					<description><![CDATA[<p>Aprovechando que recientemente Microsoft ha lanzado la versión 2 de su WSL (Windows Subsystem for Linux), vamos a hablar sobre esta funcionalidad que personalmente me resulta de gran utilidad, y lo haremos abordándola desde un punto de vista principalmente práctico. Creo que todo usuario de Linux estará de acuerdo conmigo en que la mejor forma &#8230; </p>
<p class="link-more"><a href="https://blog.ahierro.es/ejecutar-linux-en-windows-10-con-wsl/" class="more-link">Continuar leyendo<span class="screen-reader-text"> "Ejecutar Linux en Windows 10 con WSL"</span></a></p>
La entrada <a href="https://blog.ahierro.es/ejecutar-linux-en-windows-10-con-wsl/">Ejecutar Linux en Windows 10 con WSL</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></description>
										<content:encoded><![CDATA[<p>Aprovechando que recientemente Microsoft ha lanzado la versión 2 de su WSL (Windows Subsystem for Linux), vamos a hablar sobre esta funcionalidad que personalmente me resulta de gran utilidad, y lo haremos abordándola desde un punto de vista principalmente práctico.</p>



<div class="wp-block-image"><figure class="aligncenter is-resized"><img loading="lazy" decoding="async" src="https://blog.ahierro.es/wp-content/uploads/2019/06/linux_en_windodws.png" alt="Linux en Windows" class="wp-image-1227" width="650" height="365" srcset="https://blog.ahierro.es/wp-content/uploads/2019/06/linux_en_windodws.png 650w, https://blog.ahierro.es/wp-content/uploads/2019/06/linux_en_windodws-300x168.png 300w" sizes="auto, (max-width: 650px) 100vw, 650px" /></figure></div>



<span id="more-1237"></span>



<p>Creo que todo usuario de Linux estará de acuerdo conmigo en que la mejor forma de instalar Linux es hacerlo de la forma tradicional, es decir, con sus correspondientes particiones, de forma que podamos encender nuestro PC directamente en nuestra distro preferida con el cien por cien de recursos y opciones disponibles.</p>





<p>Pero esto no es siempre posible, y aunque lo fuera tenemos múltiples opciones que podemos aprovechar en función de nuestras necesidades, como por ejemplo:</p>



<ul class="wp-block-list"><li>Ejecutar Linux en modo live USB o CD.</li><li>Crear una máquina virtual con la distro que elijamos.</li><li>Instalar Linux en un SBC (Single Board Computer) como puede ser una Raspberry Pi.</li><li>Instalar Linux dentro de Windows 10, como si de una aplicación más se tratase.</li></ul>



<p>Todas éstas son opciones muy válidas y tienen sus propias ventajas e inconvenientes con respecto a una instalación tradicional. Nosotros hoy, tal y como reza el título de esta entrada, nos centraremos en la última de ellas.</p>



<h2 class="wp-block-heading">Inconvenientes de ejecutar Linux desde Windows</h2>



<p>Puesto que de partida ya imaginamos que este sistema tendrá muchas limitaciones, hablaremos primero de ellas, para luego ver sus virtudes:</p>



<ul class="wp-block-list"><li>Solo podemos hacer uso de la consola, es decir, no tenemos disponible ningún sistema de escritorio.</li><li>La lista de distribuciones disponibles es muy limitada.</li><li>El rendimiento es bastante inferior a una instalación nativa. Por lo que he podido leer el rendimiento debería ser superior al de una máquina virtual, por mi experiencia con WSL 1 no pondría la mano en el fuego por ello.</li></ul>



<p>Seguro que tiene muchas más limitaciones, pero estas han sido para mi las más evidentes o las que más me han afectado mientras hago uso de este sistema, y son muchas menos de las que en un principio había esperado.</p>



<h2 class="wp-block-heading">Ventajas de ejecutar Linux desde Windows</h2>



<p>Y una vez vistas las desventajas, veamos ahora algunas de sus virtudes:</p>



<ul class="wp-block-list"><li>Disponer de toda la potencia de la consola de Linux sin necesidad de reiniciar, levantar una máquina virtual o conectar a un host Linux. Esto lo agradecerán sobre todo los usuarios más habituales y avanzados de Linux.</li><li>Reducir el número de reinicios para alternar entre sistemas operativos. Aunque esto no es más que una consecuencia del punto anterior.</li><li>Poder acceder a los archivos de Windows desde la consola de Linux, con lo que conseguimos utilizar la potencia de la consola de Linux en el propio sistema de ficheros de Windows.</li><li>Si eres desarrollador web y trabajas en Windows, podrás olvidarte de aplicaciones que seguro conoces como WAMP, XAMPP, Appserv, etc. Podrás tener un servidor LAMP dentro de Windows, con todos los beneficios que ello supone.</li></ul>



<p>Al igual que indiqué con los inconvenientes, parecen pocas ventajas y seguro que tiene muchas más, pero estas son las que hasta el momento más me han aportado a mi.</p>





<h2 class="wp-block-heading">¿Merece la pena instalar Linux dentro de Windows?</h2>



<p>Y una vez vistas las ventajas y los inconvenientes, la pregunta que surge automáticamente es si merece la pena instalar Linux dentro de Windows, y para mi la respuesta es un Si rotundo.</p>



<p>Evidentemente una instalación de estas características nunca podrá sustituir a una instalación tradicional, pero esta no es la intención de WSL. En cambio si la vemos como un complemento a nuestro sistema operativo Windows, es una funcionalidad que le hace ganar muchos puntos: podremos utilizar herramientas como VIM o Emacs, todos los comandos disponibles en Linux sobre los archivos de Windows, servidores como Apache, MySQL u Open SSH, etc.</p>



<p>Y lo mejor es que no tienes que elegir, es decir, yo en mi equipo tengo una instalación tradicional de Ubuntu y Windows 10 con Grub en la partición de arranque. Pero es que además dentro de Windows 10 tengo instalado otro Ubuntu con WSL que lo complementa y lo potencia, así que de nuevo la respuesta es Si.</p>



<h2 class="wp-block-heading">Distribuciones de Linux disponibles para instalar en Windows</h2>



<p>Ya lo adelantamos en el apartado de limitaciones, la lista de distribuciones de Linux disponibles para instalar es bastante limitada:</p>



<ul class="wp-block-list"><li>Debian</li><li>Ubuntu</li><li>Suse</li><li>openSuse</li><li>Kali Linux</li></ul>



<p>Y es que teniendo en cuenta la gran cantidad de distribuciones de Linux existentes es de esperar que muchos usuarios echen de menos su distribución preferida, pero si valoramos el uso que haremos de esta distro es posible que la oferta no esté nada mal. </p>



<p>También existen algunas distribuciones derivadas de las «originales» creadas específicamente para trabajar con WSL como son:</p>



<ul class="wp-block-list"><li>Fedora Remix for WSL</li><li>WLinux</li><li>WLinux Enterprise</li><li>Alpine WSL</li></ul>



<h2 class="wp-block-heading">Algunas cosas que te interesará saber</h2>



<p>Y a modo práctico, algunos tips variados que he creído que podrían resultar interesante y que no he podido encajar en ninguna otra parte de esta entrada son las siguientes:</p>



<ul class="wp-block-list"><li>Desde Linux tendrás acceso al sistema de archivos de Windows en la ruta /mnt/c. La «c» se corresponde con la letra de la unidad a la que queremos queremos acceder.</li><li>Aunque cierres la venta de tu Linux el sistema seguirá funcionando de fondo, por lo que podrás hacer pleno uso de servicios como Cron, Apache2, etc.</li><li> No podrás hacer uso de copiar y pegar como es habitual en un emulador de consola en el  escritorio de Linux o una sesión de SSH con Putty.</li><li>En un mismo SSOO Windows puedes instalar más de una distribución de Linux.</li><li>Aunque no lo he probado, puedes mantener varias instalaciones de SSOO Linux corriendo en versiones distintas de WSL.</li></ul>



<h2 class="wp-block-heading">Diferencias entre WSL 1 y WSL 2</h2>



<p>Y ya que abrimos el artículo haciendo referencia a las versiones de WSL, veamos cuales con las diferencias. WSL 1 y 2 ofrecen prácticamente la misma experiencia de usuario. Las mejoras de WSL 2 están enfocadas exclusivamente en el rendimiento, y focalizadas en dos puntos principales:</p>



<ol class="wp-block-list"><li> Mejora en el rendimiento del sistema de ficheros.</li><li>Mejora del rendimiento de las llamadas entre Windows y Linux mediante el sistema que han denominado Full System Call Compatibility.</li></ol>



<p>Pero como todavía no he probado WSL 2, de momento no puedo daros mi opinión al respecto.</p>



<h2 class="wp-block-heading">Créditos y Referencias</h2>



<ul class="wp-block-list"><li><a rel="noreferrer noopener" aria-label="Documentación de Windows Subsystem for Linux (abre en una nueva pestaña)" href="https://docs.microsoft.com/en-us/windows/wsl/about" target="_blank">Documentación de Windows Subsystem for Linux</a></li></ul>La entrada <a href="https://blog.ahierro.es/ejecutar-linux-en-windows-10-con-wsl/">Ejecutar Linux en Windows 10 con WSL</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></content:encoded>
					
					<wfw:commentRss>https://blog.ahierro.es/ejecutar-linux-en-windows-10-con-wsl/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Averiguar que versión de Linux tengo instalada</title>
		<link>https://blog.ahierro.es/averiguar-que-version-de-linux-tengo-instalada/</link>
					<comments>https://blog.ahierro.es/averiguar-que-version-de-linux-tengo-instalada/#comments</comments>
		
		<dc:creator><![CDATA[Andres]]></dc:creator>
		<pubDate>Mon, 10 Jun 2019 06:00:47 +0000</pubDate>
				<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[Tips & Quick Wins]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ubuntu]]></category>
		<guid isPermaLink="false">https://blog.ahierro.es/?p=1171</guid>

					<description><![CDATA[<p>A pesar de ser una tarea sumamente sencilla, conocer la versión de Linux que tenemos instalada es una cuestión recurrente, al menos para mi. Cada ciertos tiempo, sea por un motivo u otro, acabo necesitando conocer la versión del sistema sobre la qué estoy trabajando, y no sabéis la cantidad de veces que he realizado &#8230; </p>
<p class="link-more"><a href="https://blog.ahierro.es/averiguar-que-version-de-linux-tengo-instalada/" class="more-link">Continuar leyendo<span class="screen-reader-text"> "Averiguar que versión de Linux tengo instalada"</span></a></p>
La entrada <a href="https://blog.ahierro.es/averiguar-que-version-de-linux-tengo-instalada/">Averiguar que versión de Linux tengo instalada</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></description>
										<content:encoded><![CDATA[<p>A pesar de ser una tarea sumamente sencilla, conocer la versión de Linux que tenemos instalada es una cuestión recurrente, al menos para mi. Cada ciertos tiempo, sea por un motivo u otro, acabo necesitando conocer la versión del sistema sobre la qué estoy trabajando, y no sabéis la cantidad de veces que he realizado esta consulta en algún buscador.</p>



<figure class="wp-block-image is-resized"><img loading="lazy" decoding="async" src="https://blog.ahierro.es/wp-content/uploads/2019/06/version_linux.png" alt="" class="wp-image-1179" width="650" height="438" srcset="https://blog.ahierro.es/wp-content/uploads/2019/06/version_linux.png 650w, https://blog.ahierro.es/wp-content/uploads/2019/06/version_linux-300x202.png 300w" sizes="auto, (max-width: 650px) 100vw, 650px" /></figure>



<span id="more-1171"></span>



<p class="has-text-align-left">Además de la versión de Linux que tenemos instalada, existen otros aspectos relativos al sistema que guardan bastante relación cómo son la distribución, si es un sistema de 32 o de 64 bits o la versión del kernel. Estos datos son un buen complemento y pueden resultar de gran ayuda cuando buscamos la versión de Linux.</p>



<h2 class="wp-block-heading">Versión de Linux desde el terminal</h2>



<p>La forma más rápida y sencilla de averiguar sobre que versión de Linux estamos trabajando es mediante el terminal, desde dónde tendremos múltiples opciones.</p>





<h3 class="wp-block-heading">Comando lsb_release</h3>



<p>Es mi opción más habitual. Lsb son las siglas de Linux Standard Base, un dato que quizás como a mi te ayude a recordar mejor este comando:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
lsb_release -a
</pre></div>


<p>Y nos devolverá un resultado similar al siguiente, dónde además de la versión podemos ver la distro:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; gutter: false; title: ; notranslate">
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.6 LTS
Release:        16.04
Codename:       xenial
</pre></div>


<p>En caso de que el comando no te funcione, es decir, que no esté instalado por defecto, solo tendremos que instalarlo:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo apt-get update
sudo apt-get install lsb-release
</pre></div>


<h3 class="wp-block-heading">Comando hostnamectl</h3>



<p>Otra alternativa quizás menos específica pero que igualmente arrojará la información que buscamos es el comando <em>hostnamectl</em>. Este comando además nos devolverá información sobre la distribución, la versión del kernel, la arquitectura del procesador o la ID de la máquina:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
hostnametcl
</pre></div>


<p>En este caso el resultado seria algo así:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; gutter: false; title: ; notranslate">
   Static hostname: pcname
         Icon name: computer
        Machine ID: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
           Boot ID: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  Operating System: Ubuntu 16.04.6 LTS
            Kernel: Linux 4.4.38-v7+
      Architecture: arm
</pre></div>


<h3 class="wp-block-heading">/etc/*-release</h3>



<p>Otra alternativa aparentemente menos sofisticada pero igualmente válida es consultar la información de los archivos <em>/etc/os-release</em>, <em>/etc/lsb-release</em> o <em>/etc/*-release</em>. En función de nuestra distro la información se encontrará en uno o varios de estos archivos.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
cat /etc/os-release
</pre></div>


<p>Las salidas que obtendremos pueden variar ligeramente, pero básicamente serán parecidas a la que muestro. En esta ocasión también vemos que obtenemos el nombre de la distribución.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; gutter: false; title: ; notranslate">
NAME=&quot;Ubuntu&quot;
VERSION=&quot;16.04.6 LTS (Xenial Xerus)&quot;
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME=&quot;Ubuntu 16.04.6 LTS&quot;
VERSION_ID=&quot;16.04&quot;
HOME_URL=&quot;http://www.ubuntu.com/&quot;
SUPPORT_URL=&quot;http://help.ubuntu.com/&quot;
BUG_REPORT_URL=&quot;http://bugs.launchpad.net/ubuntu/&quot;
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial
</pre></div>


<h2 class="wp-block-heading">Versión de Linux desde el escritorio</h2>



<p>Desde el escritorio la cantidad de opciones se reduce, o no, pues mi recomendación, si sólo queremos conocer la versión de Linux sobre la que estamos trabajando es que presiones la combinación de teclas:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
Ctrl + Alt + t
</pre></div>


<p>Y una vez que se abra el terminal uses una de las opciones que acabamos de ver.</p>



<h3 class="wp-block-heading">Hardinfo</h3>



<p>Una alternativa sencilla y lijera para ver información sobre la versión de Linux desde el entorno gráfico es utilizar el programa Hardinfo. Es muy probable que no esté instalado por defecto, si así, como es habitual:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo apt-get update
sudo apt-get install hardinfo
</pre></div>


<p>La aplicación es muy sencilla de utilizar y solo deberemos desplazarnos hasta el apartado «Sistema Operativo». Como veis en la captura de pantalla, la aplicación tiene mucha información extra de gran utilidad:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="650" height="438" src="https://blog.ahierro.es/wp-content/uploads/2019/06/hardinfo.png" alt="Hardinfo" class="wp-image-2288" srcset="https://blog.ahierro.es/wp-content/uploads/2019/06/hardinfo.png 650w, https://blog.ahierro.es/wp-content/uploads/2019/06/hardinfo-300x202.png 300w" sizes="auto, (max-width: 650px) 100vw, 650px" /></figure>



<h2 class="wp-block-heading">Otra información Interesante</h2>



<p>Como comentamos al comienzo de la entrada existe cierta información que guarda mucha relación con la versión de Linux y que puede sernos muy útil. Veamos cómo obtener alguna de esta información.</p>



<h3 class="wp-block-heading">Averiguar si una instalación de Linux es de 32 o de 64 bits</h3>



<p>Es más que probable que en ciertas ocasiones quieras saber si tu instalación de Linux es de 32 o de 64 bits. Podemos averiguarlo utilizando alguno de los siguientes comandos:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
getconf LONG_BIT
</pre></div>


<p>O:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
uname -i
</pre></div>


<h3 class="wp-block-heading">Averiguar la versión del kernel de Linux</h3>



<p>Esta es otra duda muy relacionada que con el paso del tiempo y la sofisticación de Linux se ha vuelto algo menos común. De nuevo hacemos uso del comando <em>uname</em>: </p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
uname -r
</pre></div>


<p>Y la salida que nos devolverá será algo así:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
4.15.0-51-generic
</pre></div>


<h2 class="wp-block-heading">Créditos y referencias</h2>



<ul class="wp-block-list"><li>Imagen de portada: <a href="https://pixabay.com/users/qimono-1962238/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1872665" target="_blank" rel="noreferrer noopener" aria-label="Arek Socha (abre en una nueva pestaña)">Arek Socha</a></li></ul>La entrada <a href="https://blog.ahierro.es/averiguar-que-version-de-linux-tengo-instalada/">Averiguar que versión de Linux tengo instalada</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></content:encoded>
					
					<wfw:commentRss>https://blog.ahierro.es/averiguar-que-version-de-linux-tengo-instalada/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Acceder a Ubuntu por Hostname</title>
		<link>https://blog.ahierro.es/acceder-a-ubuntu-por-hostname/</link>
					<comments>https://blog.ahierro.es/acceder-a-ubuntu-por-hostname/#comments</comments>
		
		<dc:creator><![CDATA[Andres]]></dc:creator>
		<pubDate>Wed, 06 Feb 2019 07:30:31 +0000</pubDate>
				<category><![CDATA[Herramientas]]></category>
		<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[Tips & Quick Wins]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[raspberry pi]]></category>
		<category><![CDATA[servidor]]></category>
		<category><![CDATA[ubuntu]]></category>
		<guid isPermaLink="false">https://www.ahierro.es/?p=260</guid>

					<description><![CDATA[<p>Para el que está acostumbrado a trabajar con redes de equipos Windows acceder a un equipo mediante hostname es algo habitual. Por el contrario, el que suele trabajar con sistemas basados en Linux en una red local sabe que por defecto suele ser un asunto algo más laborioso. Avahi La mala noticia es que para &#8230; </p>
<p class="link-more"><a href="https://blog.ahierro.es/acceder-a-ubuntu-por-hostname/" class="more-link">Continuar leyendo<span class="screen-reader-text"> "Acceder a Ubuntu por Hostname"</span></a></p>
La entrada <a href="https://blog.ahierro.es/acceder-a-ubuntu-por-hostname/">Acceder a Ubuntu por Hostname</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></description>
										<content:encoded><![CDATA[<p>Para el que está acostumbrado a trabajar con redes de equipos Windows acceder a un equipo mediante hostname es algo habitual. Por el contrario, el que suele trabajar con sistemas basados en Linux en una red local sabe que por defecto suele ser un asunto algo más laborioso.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="650" height="365" src="https://blog.ahierro.es/wp-content/uploads/2019/02/hostname_broadcast.png" alt="Hostname broadcast" class="wp-image-509" srcset="https://blog.ahierro.es/wp-content/uploads/2019/02/hostname_broadcast.png 650w, https://blog.ahierro.es/wp-content/uploads/2019/02/hostname_broadcast-300x168.png 300w" sizes="auto, (max-width: 650px) 100vw, 650px" /></figure>



<span id="more-260"></span>



<h3 class="wp-block-heading">Avahi</h3>



<p>La mala noticia es que para lograr acceder por nombre a máquinas Linux en una red local con garantías la mejor solución es disponer de un servidor DNS (Bind es la opción Open Source más extendida), y en esta entrada no hablaremos sobre servidores DNS.</p>



<p>En esta entrada utilizaremos Avahi, una implementación gratuita de Zero-Configuration Networking que permite difundir y descubrir servicios y equipos en una red local. Quizás a alguno le resulte más familiar si citamos a Bonjour, que es la implementación propietaria que tiene Apple de esta tecnología.</p>





<p>Y en función de nuestras necesidades es posible que Avahi nos sirva o no (lógico). El principal motivo es que no basta con instalarlo en la máquina a la que queremos acceder por nombre (llamémosla máquina Destino), sino que cada equipo que quiera acceder por nombre a la máquina Destino debe poder trabajar con la tecnología Zero-Configuration Networking para interpretar la información publicada por nuestra máquina Destino.</p>



<h3 class="wp-block-heading">Máquinas Destino y Clientes</h3>



<p>Pongámonos en situación, de un lado tenemos una máquina corriendo Ubuntu, en mi caso es una Raspberry Pi corriendo la versión 16.0.4.2 de Ubuntu Mate. El hostname de esta máquina es «maquina1», su ip 192.168.1.15 y para agilizar la lectura, como ya hemos dicho, la llamaremos máquina «Destino». En esta máquina hemos instalado un servidor web y queremos acceder a ella mediante hostname.</p>



<p>Del otro lado tenemos una serie de equipos con distintos SSOO que son los que quieren consumir el servicio web accediendo por nombre. A estas máquinas las llamaremos «Clientes» y vamos a suponer que tenemos:</p>



<ol class="wp-block-list"><li>Cliente Linux, corriendo Ubuntu 18.</li><li>Cliente Windows, corriendo Windows 10.</li><li>Cliente Android, corriendo Android Oreo 8.1.</li></ol>



<p>Lo siento por los amantes de Apple pero no tengo ningún dispositivo de la manzanita para probar, aún así si eres uno de ellos sigue leyendo porque estoy convencido que te será de utilidad.</p>



<h3 class="wp-block-heading">Instalar y configurar Avahi</h3>



<p>Comenzaremos realizando las instalaciones necesarias en la máquina Destino. En función de vuestra distro es posible que todos o algunos de estos paquetes ya estén instalados.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo apt-get update
sudo apt-get install avahi-daemon
sudo apt-get install avahi-utils
sudo apt-get install libnss-mdns
</pre></div>


<p>Y acto seguido editaremos la configuración de Avahi. Es buena idea que antes de editar cualquier archivo de configuración guardéis una copia que os ayude a volver al punto inicial si fuera necesario, aunque vamos a tocar muy poca configuración.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
suco cp /ect/avahi/avahi-daemon.conf /etc/avahi/avahi-daemon.conf.bck
sudo vim /etc/avahi/avahi-daemon.conf
</pre></div>


<p>En el archivo de configuración nos centraremos primero en el nombre de la máquina y el dominio. Mi recomendación es que mantengáis la configuración por defecto, es decir ser coherentes y que el host-name coincida con el de la propia máquina y que el dominio sea «local». De esta forma accederemos a la máquina con maquina1.local.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
&#x5B;server]
host-name=maquina1
domain-name=local
</pre></div>


<p>Nos aseguraremos también de que las siguientes opciones se encuentren como mostramos:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
&#x5B;publish]
disable-publishing=no
disable-user-service-publishing=no
publish-addresses=yes
</pre></div>


<p>Reiniciamos el servicio y lo agregamos al arranque de nuestra máquina:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo service avahi-daemon restart
sudo update-rc.d avahi-daemon defaults
</pre></div>


<p>Y con esto hemos terminado con la máquina Destino.</p>



<h3 class="wp-block-heading">Maquinas Clientes</h3>



<p>Como ya mencionamos cada máquina cliente debe ser capaz de trabajar con la tecnología Zero-Configuration Networking para poder alcanzar la máquina Destino por nombre, así que veamos caso a caso.</p>





<h4 class="wp-block-heading">Desde Linux</h4>



<p>En cada equipo con sistema operativo Linux con el que queramos acceder por nombre a la máquina Destino deberemos instalar Avahi. Así que no tenemos más que repetir las instrucciones definidas en el apartado «Instalar y Configurar Avahi».</p>



<h4 class="wp-block-heading">Desde Windows</h4>



<p>Por defecto Windows no nos dejará acceder por hostname y por ahora no existe implementación de Avahi para este sistema operativo. En su defecto podemos instalar el programa «Servicios de impresión Bonjour para Windows», de Apple, que aunque está pensado para otro uso nos permitirá cubrir nuestra necesidad y alcanzar la máquina Destino por nombre.</p>



<h4 class="wp-block-heading">Desde Android</h4>



<p>Lamentablemente no he encontrado ninguna aplicación o demonio para Android que permita que cualquier aplicación que corra en este sistema operativo sea capaz de acceder por nombre a nuestra máquina Destino, una lástima. Si conoces alguna solución para ello estaría muy agradecido de que la compartas en un comentario.</p>



<h4 class="wp-block-heading">IOS y MacOSX</h4>



<p>Como he dicho no tengo ningún dispositivo de Apple para realizar pruebas, pero conociendo que tienen su propia implementación de de Zero-Configuration Networking (Bonjour), me atrevería a decir que podremos acceder por nombre a nuestra máquina Destino sin necesidad de instalar ningún software adicional.</p>



<h3 class="wp-block-heading">Comprobar el funcionamiento</h3>



<p>Aunque es de primero de pre-escolar (creo que ahora lo llaman infantil), me gusta comprobar las cosas, y la forma más sencilla de hacerlo es utilizar el comando ping. Si lo hemos conseguido obtendremos algo así:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
ping raspi.local
PING raspi.local (192.168..15) 56(84) bytes of data.
64 bytes from 192.168.1.15 (192.168.1.15): icmp_seq=1 ttl=64 time=6.68 ms
64 bytes from 192.168.1.15 (192.168.1.15): icmp_seq=2 ttl=64 time=4.61 ms

</pre></div>


<p>Y si algo no funciona como esperamos obtendremos algo así:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
ping maquina1.local
ping: maquina1.local: Nombre o servicio desconocido
</pre></div>


<p>Y como dijimos que en la máquina Destino teníamos un servidor web, al escribir maquina1.local en la barra de direcciones del navegador, obviamente, accederemos al contenido publicado.</p>





<h3 class="wp-block-heading">Conclusión</h3>



<p>Con Avahi podemos acceder por nombre a máquinas con sistema operativo Linux en nuestra red local. Su mayor limitación es que nos veremos obligado a que tanto la máquina a la que queremos acceder, como las máquinas con las que queremos acceder deben tener instalada una implementación de Zero-Configuration Networking.</p>



<p>Así que si bien resuelve ciertas situaciones y necesidades, si pensamos en una red de varias decenas de equipos con distintos sistemas operativos existen otras alternativas más escalables.</p>



<p>Como siempre me gustaría saber cómo cual es tu experiencia, ¿has usado Avahi? ¿accedes por ip? ¿utilizas otra tecnología u otros programas? Deja un comentario y danos tu opinión.</p>La entrada <a href="https://blog.ahierro.es/acceder-a-ubuntu-por-hostname/">Acceder a Ubuntu por Hostname</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></content:encoded>
					
					<wfw:commentRss>https://blog.ahierro.es/acceder-a-ubuntu-por-hostname/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Crear un repositorio remoto en Git desde archivos locales</title>
		<link>https://blog.ahierro.es/crear-un-repositorio-remoto-en-desde-con-archivos-locales/</link>
					<comments>https://blog.ahierro.es/crear-un-repositorio-remoto-en-desde-con-archivos-locales/#respond</comments>
		
		<dc:creator><![CDATA[Andres]]></dc:creator>
		<pubDate>Mon, 31 Dec 2018 06:55:49 +0000</pubDate>
				<category><![CDATA[Desarrollo Web]]></category>
		<category><![CDATA[Herramientas]]></category>
		<category><![CDATA[Tips & Quick Wins]]></category>
		<category><![CDATA[control de versiones]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[raspberry pi]]></category>
		<category><![CDATA[ubuntu]]></category>
		<guid isPermaLink="false">https://www.ahierro.es/?p=192</guid>

					<description><![CDATA[<p>Existen múltiples motivos por los que podemos disponer de código fuente antes de versionarlo: que heredemos un proyecto ya existente, que se nos ocurra una idea y en un impetuoso alarde de entusiasmo vayamos directamente al código, etc. Pero para mi el principal motivo es que es la forma más sencilla de comenzar un proyecto &#8230; </p>
<p class="link-more"><a href="https://blog.ahierro.es/crear-un-repositorio-remoto-en-desde-con-archivos-locales/" class="more-link">Continuar leyendo<span class="screen-reader-text"> "Crear un repositorio remoto en Git desde archivos locales"</span></a></p>
La entrada <a href="https://blog.ahierro.es/crear-un-repositorio-remoto-en-desde-con-archivos-locales/">Crear un repositorio remoto en Git desde archivos locales</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></description>
										<content:encoded><![CDATA[<p>Existen múltiples motivos por los que podemos disponer de código fuente antes de versionarlo: que heredemos un proyecto ya existente, que se nos ocurra una idea y en un impetuoso alarde de entusiasmo vayamos directamente al código, etc. Pero para mi el principal motivo es que es la forma más sencilla de comenzar un proyecto y un repositorio en Git: instalo la aplicación o el framework que necesito, realizo una configuración básica y acto seguido creo el repositorio.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="650" height="365" src="https://www.ahierro.es/wp-content/uploads/2018/11/git_logo.jpg" alt="Git" class="wp-image-174" srcset="https://blog.ahierro.es/wp-content/uploads/2018/11/git_logo.jpg 650w, https://blog.ahierro.es/wp-content/uploads/2018/11/git_logo-300x168.jpg 300w, https://blog.ahierro.es/wp-content/uploads/2018/11/git_logo-267x150.jpg 267w" sizes="auto, (max-width: 650px) 100vw, 650px" /></figure>



<span id="more-192"></span>



<p>Por otro lado, en función de diferentes factores relacionados con un proyecto de desarrollo podemos trabajar en equipo, que es lo más probable, o solos. Cuando trabajamos en equipo es lógico que el software de control de versiones se encuentre en un servidor centralizado. Cuando trabajamos solos podemos decidir que solo esté en nuestra máquina.</p>



<p>Personalmente incluso trabajando en solitario en un proyecto me gusta versionar contra en un servidor centralizado por dos motivos principales:</p>



<ol class="wp-block-list"><li>Mayor seguridad ante una eventualidad en mi equipo local, circunstancia que no evita que el proyecto deba estar respaldado por copias de seguridad.</li><li>Posibilidad de trabajar en múltiples dispositivos, una opción más o menos interesante en función de nuestras circunstancias.</li></ol>



<p>En caso de que el proyecto que tengamos entre manos sea de ámbito personal, es más que razonable pensar que no todos disponemos de un servidor en casa dónce centralizar el versionado. Esta situación la podemos resolver con un viejo pc, o si no disponemos de uno con una Raspberry Pi que haga las veces de servidor. Aquí te dejo un enlace al artículo <a href="https://blog.ahierro.es/instalar-y-configurar-git-en-una-raspberry-pi-con-ubuntu-mate/">Instalar y configurar Git en una Raspberry PI con Ubuntu Mate</a>, por si quieres probarlo.</p>





<p>Así que vamos al lío y para ello asumiremos que nuestro servidor está configurado con la ip <em>192.168.1.10</em> y el nombre de nuestro usuario es <em>usuario</em>.</p>



<h3 class="wp-block-heading">Creamos nuestro repositorio remoto</h3>



<p>Lo primero que debemos hacer es crear y configurar correctamente un repositorio vacío en la máquina remota, así que empezaremos por conectarnos a ella:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
ssh usuario@192.168.1.10
</pre></div>


<p>Ya en la consola remota creamos el directorio dónde alojaremos el repositorio que vamos a crear, personalmente creo un directorio en el que incluyo todos los repositorios:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
cd ~
mkdir gitRepositoryRoot
cd gitRepositoryRoot
mkdir nuevoProyecto
cd nuevoProyecto
</pre></div>


<p>Y por fin creamos nuestro repositorio vacío y lo configuramos:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
git --bare init
git config core.sharedrepository 1
git config receive.denyNonFastforwards true
git config --bool core.bare true
</pre></div>


<p>El último paso en la máquina remota es asignar los permisos adecuados al repositorio:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
find objects -type d -exec chmod 02770 {} \;
</pre></div>


<h3 class="wp-block-heading">Creamos nuestro repositorio local</h3>



<p>Una vez que nuestro repositorio está correctamente creado en el servidor deberemos crear un repositorio local a partir de los fuentes que ya tenemos para posteriormente enlazarlo y enviarlo al repositorio que previamente hemos creado en la máquina remota.</p>



<p>Creamos el repositorio local y añadimos los fuentes existentes que supondremos que se encuentran en <em>/var/www/nuevoProyecto</em>:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
cd /var/www/nuevoProyecto
git init
git add *
git commit -m &quot;Commit inicial&quot;
</pre></div>


<p>Creamos el repositorio y añadimos los fuentes:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
git remote add origin ssh://usuario@192.168.1.10/home/usuario/gitRepositoryRoot/nuevoProyecto
git push -u origin master
</pre></div>


<h3 class="wp-block-heading">Comprobamos que todo ha salido bien</h3>



<p>Por último comprobaremos que hemos realizado el proceso correctamente y todo funciona correctamente.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
git checkout origin/master
git branch -f master origin/master
git checkout master
</pre></div>


<h3 class="wp-block-heading">Conclusión</h3>



<p>Trabajemos en grupo o en solitario versionar nuestro código en una máquina remota es una tarea sencilla que aporta grandes beneficios. Cómo siempre me gustaría saber cómo lo haces tú, qué haces distinto, si este artículo te ha ayudado&#8230; Si te animas a compartir deja un comentario.</p>La entrada <a href="https://blog.ahierro.es/crear-un-repositorio-remoto-en-desde-con-archivos-locales/">Crear un repositorio remoto en Git desde archivos locales</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></content:encoded>
					
					<wfw:commentRss>https://blog.ahierro.es/crear-un-repositorio-remoto-en-desde-con-archivos-locales/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Como configurar Virtual Hosts en Apache 2 y Ubuntu</title>
		<link>https://blog.ahierro.es/como-configurar-virtual-hosts-en-apache-y-ubuntu/</link>
					<comments>https://blog.ahierro.es/como-configurar-virtual-hosts-en-apache-y-ubuntu/#comments</comments>
		
		<dc:creator><![CDATA[Andres]]></dc:creator>
		<pubDate>Mon, 24 Dec 2018 06:30:33 +0000</pubDate>
				<category><![CDATA[Servicios]]></category>
		<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[servidor]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[web]]></category>
		<guid isPermaLink="false">https://www.ahierro.es/?p=288</guid>

					<description><![CDATA[<p>Los más habitual en un entorno de desarrollo, de pruebas o de pre-producción es que tengamos varios proyectos conviviendo en paralelo. Y como ser organizado no es solo una virtud, sino que es una cualidad imprescindible para evitar el caos de cara al futuro, los hosts virtuales de Apache 2 son una buena forma de &#8230; </p>
<p class="link-more"><a href="https://blog.ahierro.es/como-configurar-virtual-hosts-en-apache-y-ubuntu/" class="more-link">Continuar leyendo<span class="screen-reader-text"> "Como configurar Virtual Hosts en Apache 2 y Ubuntu"</span></a></p>
La entrada <a href="https://blog.ahierro.es/como-configurar-virtual-hosts-en-apache-y-ubuntu/">Como configurar Virtual Hosts en Apache 2 y Ubuntu</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></description>
										<content:encoded><![CDATA[<p>Los más habitual en un entorno de desarrollo, de pruebas o de pre-producción es que tengamos varios proyectos conviviendo en paralelo. Y como ser organizado no es solo una virtud, sino que es una cualidad imprescindible para evitar el caos de cara al futuro, los hosts virtuales de Apache 2 son una buena forma de lograrlo.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="650" height="365" src="https://www.ahierro.es/wp-content/uploads/2018/12/apache_virtual_hosts.png" alt="Apache Virtual Hosts" class="wp-image-303" srcset="https://blog.ahierro.es/wp-content/uploads/2018/12/apache_virtual_hosts.png 650w, https://blog.ahierro.es/wp-content/uploads/2018/12/apache_virtual_hosts-300x168.png 300w, https://blog.ahierro.es/wp-content/uploads/2018/12/apache_virtual_hosts-267x150.png 267w" sizes="auto, (max-width: 650px) 100vw, 650px" /></figure>



<span id="more-288"></span>



<p>Los ejemplos de este documento han sido probados tanto sobre Ubuntu Mate 16.0.4.2 y Apache 2.4.18 como sobre XUbuntu 18.04 con la versión 2.4.29 de Apache, aunque funcionarán sobre la mayoría de distribuciones Linux con la versión 2.4 de Apache.</p>



<p>Para el resto del artículo, asumiremos que la ip de la máquina dónde estamos configurando los host virtuales es 192.168.1.10.</p>



<h3 class="wp-block-heading">¿Qué es un virtual host en Apache 2?</h3>



<p>Virtual host es la herramienta que Apache pone a nuestra disposición para poder publicar más de una página web en un mismo servidor Apache, y que además,&nbsp; nos permite mantener configuraciones diferentes para cada host virtual.</p>





<p>Al realizar una petición al servidor web, Apache puede identificar a que site (host virtual) queremos acceden en función de tres variables relacionadas con la solicitud realuzada al servidor:</p>



<ol class="wp-block-list"><li>La IP</li><li>El Host Name</li><li>El puerto</li></ol>



<p>En este artículo distinguiremos los host virtuales por el puerto, pues es lo que utilizo habitualmente en mi entorno de desarrollo por una simple cuestión de comodidad.</p>



<h3 class="wp-block-heading">Nociones de configuración</h3>



<p>Toda la configuración de Apache 2 se encuentra bajo la carpeta <em>/var/apache2</em>. Los archivos de configuración para los virtual hosts se encuentran dentro de dos carpetas en particular:</p>



<ol class="wp-block-list"><li><em>/var/apache2/sites-available</em>. En esta carpeta se encuentran todos los archivos de configuración de los hosts virtuales, cada host se corresponde con un archivo.</li><li><em>/var/apache2/sites-enabled</em>. En esta carpeta se crearán enlaces simbólicos a los archivos de la carpeta sites-available para los host que queramos activar en cada momento.</li></ol>



<p>Con la instalación de Apache, se creará por defecto, el archivo <em>/etc/apache2/sites-available/000-default.conf</em> y su correspondiente enlace simbólico en la carpeta <em>sites-enabled</em> que se encarga de configurar el host virtual por defecto al que accedemos tras instalar Apache.</p>



<h3 class="wp-block-heading">Cómo crear un virtual host</h3>



<p>Crear host virtuales es una tarea relativamente habitual, así que los señores desarrolladores de Apache nos lo han puesto bastante sencillo.</p>



<p>A continuación crearemos un host virtual para alojar un entorno de pruebas de este blog. Para entender mejor el proceso, a pesar de que es sencillo, lo dividiremos en cuatro pasos:</p>



<h4 class="wp-block-heading">Paso 1: Creamos el directorio que alojará nuestra web</h4>



<p>Lo primero será crear el directorio dónde alojaremos los archivos que posteriormente serviremos.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
cd /var/www
sudo mkdir ahierro.es
cd ahierro.es
sudo mkdir public
</pre></div>


<p>La carpeta que serviremos será <em>public</em>, es buena idea guardarse un nivel de directorio para archivos relacionados con el proyecto que no deben ser accesibles desde una url en el navegador. Esto es bastante habitual en muchas aplicaciones y frameworks.</p>



<p>En este paso del proceso es importante dejar correctamente configurados los permisos de acceso a los archivos y carpetas de nuestro host virtual. Para ello os dejo un enlace al artículo <a href="https://blog.ahierro.es/archivos-y-permisos-de-usuario-en-apache-y-linux/">Archivos y permisos de usuario en Apache 2 y Linux</a> por si queréis echarle un vistazo.</p>



<h4 class="wp-block-heading">Paso 2: Creamos el archivo de configuración del nuevo host virtual</h4>



<p>Ahora crearemos el archivo de configuración en <em>/etc/apache2/sites-available</em>, lo más sencillo es hacerlo desde otro que ya exista. Es muy importante que lleve la extensión .conf o el comando a2ensite no funcionará más adelante:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
cd /etc/apache2/sites-available
sudo cp 000-default.conf ahierro.es.conf
</pre></div>


<p>Lo editamos:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo vim ahierro.es.conf
</pre></div>


<p>Inicialmente tenemos algo así:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
&lt;VirtualHost *:80&gt;
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request&#039;s Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com

ServerAdmin webmaster@localhost
DocumentRoot /var/www/html

# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with &quot;a2disconf&quot;.
#Include conf-available/serve-cgi-bin.conf
&lt;/VirtualHost&gt;
</pre></div>


<p>Y tras modificarlo debe quedar así:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
&lt;VirtualHost *:80&gt;
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request&#039;s Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com

ServerAdmin webmaster@localhost
DocumentRoot /var/www/ahierro.es/public

# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with &quot;a2disconf&quot;.
#Include conf-available/serve-cgi-bin.conf

&lt;Directory /var/www/ahierro.es/public&gt;
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
&lt;/Directory&gt;

&lt;/VirtualHost&gt;
</pre></div>


<p>Como podemos ver en la línea 1 hemos cambiado :80 por :8085, con lo que estamos indicando que a este virtualhost accederemos mediante este puerto. Personalmente suelo comenzar con el puerto 8080, en este ejemplo he especificado el 8085 porque ya tengo otros cinco host virtuales.</p>





<p>En la línea 12 lo único que hemos hecho es actualizar la referencia al directorio raíz para asegurarnos que apunta al lugar adecuado.</p>



<p>Y por último hemos añadido una nueva sección a partir de la línea 30 con unas directrices básicas entre las que hemos habilitado el módulo mod_rewrite, necesario para la re-escritura de urls.</p>



<h4 class="wp-block-heading">Paso 3: Abrimos el puerto adecuado en Apache</h4>



<p>Por defecto Apache solo atiende solicitudes por el puerto 80. Para conseguir que también atienda las que llegan por el puerto 8085, que es el que hemos indicado en nuestro fichero de configuración del virtual host, debemos editar el archivo <em>/etc/apache2/ports.conf</em>.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo vim /etc/apache2/ports.conf
</pre></div>


<p>El contenido del fichero es algo así:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default.conf

Listen 80
Listen 8085

&lt;IfModule ssl_module&gt;
Listen 443
&lt;/IfModule&gt;

&lt;IfModule mod_gnutls&gt;
Listen 443
&lt;/IfModule&gt;
</pre></div>


<p>Vemos que la&nbsp; línea 5 hace referencia al puerto 80, nosotros hemos añadido una línea más, la 6, indicándole que escuche también el puerto 8085.</p>



<h4 class="wp-block-heading">Paso 4: Habilitamos el nuevo virtualhost</h4>



<p>Si os habéis fijado hablamos de los directorios <em>sites-available</em> y <em>sites-enabled</em>, pero solo hemos trabajado con el primero. Para crear el enlace simbólico lo haremos con el comando a2ensite:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo a2ensite ahierro.es.conf
</pre></div>


<p>Y por si te lo estás preguntando, si, un ln o un cp servirían de igual manera. Y ahora que el enlace simbólico ya se encuentra en el directorio <em>sites-enabled</em> solo nos queda reiniciar apache:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo service apache2 restart
</pre></div>


<h4 class="wp-block-heading">Paso 5: Comprobamos que todo funcione correctamente</h4>



<p>Podemos comprobar que todo ha salido bien con dos sencillos pasos</p>



<ol class="wp-block-list"><li>Creamos un archivo <em>index.html</em> y lo guardamos en el directorio público del host virtual que acabamos de crear, en este caso <em>/var/www/ahierro.es/public</em>.</li><li>Accedemos a la ip del servidor seguida de dos puntos y el puerto: <em>http://192.168.1.10:8085/index.html.</em></li></ol>



<p>Si vemos el contenido del archivo index.html es que todo ha salido bien, en caso contrario deberemos buscar el problema en función del mensaje de error obtenido.</p>



<h3 class="wp-block-heading">Conclusión</h3>



<p>Una forma sencilla de organizar nuestros proyectos siempre que no sean demasiados.</p>



<p>Personalmente, en el virtual host por defecto (puerto 80),&nbsp; creo un sencillo fichero con enlaces a todos los hosts virtuales y otros accesos directos que me interesa tener a mano como pueden ser phpmyadmin o phpinfo. Esto suele ahorrarme unos minutos preciados minutos cada día.</p>



<p>Y como siempre me gustaría saber tú opinión,&nbsp; ¿utilizas los virtual host? ¿los identificas por puerto? ¿organizas tus proyectos de otra forma? Deja un comentario y aprendamos juntos.</p>



<h2 class="wp-block-heading">Créditos, referencias y artículos relacionados</h2>



<ul class="wp-block-list"><li><a href="https://blog.ahierro.es/archivos-y-permisos-de-usuario-en-apache-y-linux/">Archivos y permisos de usuario en Apache 2 y Linux</a></li><li><a href="https://blog.ahierro.es/ejecutar-linux-en-windows-10-con-wsl/">Ejecutar Linux en Windows 10 con WSL</a></li><li><a href="https://blog.ahierro.es/servidor-web-en-raspberry-pi-y-ubuntu-mate/">Servidor Web en Raspberry PI y Ubuntu Mate</a></li><li><a href="https://blog.ahierro.es/clonar-una-web-en-un-servidor-local/">Clonar una web en un servidor local</a></li></ul>La entrada <a href="https://blog.ahierro.es/como-configurar-virtual-hosts-en-apache-y-ubuntu/">Como configurar Virtual Hosts en Apache 2 y Ubuntu</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></content:encoded>
					
					<wfw:commentRss>https://blog.ahierro.es/como-configurar-virtual-hosts-en-apache-y-ubuntu/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Instalar y configurar Git en una Raspberry PI con Ubuntu Mate</title>
		<link>https://blog.ahierro.es/instalar-y-configurar-git-en-una-raspberry-pi-con-ubuntu-mate/</link>
					<comments>https://blog.ahierro.es/instalar-y-configurar-git-en-una-raspberry-pi-con-ubuntu-mate/#respond</comments>
		
		<dc:creator><![CDATA[Andres]]></dc:creator>
		<pubDate>Mon, 17 Dec 2018 06:15:46 +0000</pubDate>
				<category><![CDATA[Servicios]]></category>
		<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[control de versiones]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[raspberry pi]]></category>
		<category><![CDATA[ubuntu]]></category>
		<guid isPermaLink="false">https://www.ahierro.es/?p=164</guid>

					<description><![CDATA[<p>Git es de largo el software de control de versiones por excelencia, el más utilizado muy por encima de cualquier otra opción como Subversion o Mercurial. Por otro lado existen varias opciones para trabajar con un servidor Git, algunas de las mas famosas son a través de plataformas de terceros como Github o Gitlab. Nosotros &#8230; </p>
<p class="link-more"><a href="https://blog.ahierro.es/instalar-y-configurar-git-en-una-raspberry-pi-con-ubuntu-mate/" class="more-link">Continuar leyendo<span class="screen-reader-text"> "Instalar y configurar Git en una Raspberry PI con Ubuntu Mate"</span></a></p>
La entrada <a href="https://blog.ahierro.es/instalar-y-configurar-git-en-una-raspberry-pi-con-ubuntu-mate/">Instalar y configurar Git en una Raspberry PI con Ubuntu Mate</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></description>
										<content:encoded><![CDATA[<p>Git es de largo el software de control de versiones por excelencia, el más utilizado muy por encima de cualquier otra opción como Subversion o Mercurial.</p>
<p>Por otro lado existen varias opciones para trabajar con un servidor Git, algunas de las mas famosas son a través de plataformas de terceros como Github o Gitlab.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-174" src="https://www.ahierro.es/wp-content/uploads/2018/11/git_logo.jpg" alt="Git" width="650" height="365" srcset="https://blog.ahierro.es/wp-content/uploads/2018/11/git_logo.jpg 650w, https://blog.ahierro.es/wp-content/uploads/2018/11/git_logo-300x168.jpg 300w, https://blog.ahierro.es/wp-content/uploads/2018/11/git_logo-267x150.jpg 267w" sizes="auto, (max-width: 650px) 100vw, 650px" /></p>
<p><span id="more-164"></span></p>
<p>Nosotros hoy instalaremos y configuraremos nuestro propio servidor Git en una Raspberry Pi corriendo Ubuntu Mate y alojada en una red local. Esta entrada pertenece a la serie <a href="https://www.ahierro.es/raspberry-pi-como-herramienta-de-apoyo-para-el-desarrollo-web/">Raspberry PI como herramienta de apoyo para el desarrollo web</a>, que es muy probable que encuentres interesante si has llegado hasta aquí.</p>
<h3>Instalar Git</h3>
<p>Para instalar Git en Ubuntu la opción más sencilla es hacerlo desde los propios repositorios del sistema operativo:<br />[cc lang=»bash»]<br />sudo apt-get update<br />sudo apt-get install git<br />[/cc]</p>
<p>Podemos comprobar la versión que se instala mediante la orden git -version:<br />[cc lang=»bash»]<br />git &#8211;version<br />[/cc]</p>
<p>Si queremos utilizar el PPA oficial de Git para tener la versión más actualizada antes de instalar deberemos agregarlo a nuestro repositorio.</p>
<p>[cc lang=»bash»]<br />sudo add-apt-repository ppa:git-core/ppa<br />[/cc]</p>
<p>[the_ad id=»1018&#8243;]</p>
<h3>Configurar Git</h3>
<p>Y una vez instalado es necesario realizar una configuración inicial básica, en este caso configuraremos nuestra identidad:</p>
<p>[cc lang=»bash»]<br />git config &#8211;global user.name «ahierro.es»<br />git config &#8211;global user.email noexiste@ahierro.es<br />[/cc]</p>
<p>En cualquier momento podremos comprobar nuestra identidad con los siguientes comandos:</p>
<p>[cc lang=»bash»]<br />git config user.name<br />git config user.email<br />git config &#8211;list<br />[/cc]</p>
<h3>Conceptos básicos sobre la configuración de Git</h3>
<p>Git utiliza el comando git config para obtener y para definir las distintas opciones de configuración. Esta configuración se guarda en tres archivos diferentes en función de su ámbito, a los que podemos hacer referencia desde el comando mediante un parámetro:</p>
<table>
<tbody>
<tr>
<th>Archivo</th>
<th>Ámbito</th>
<th>Parámetro</th>
</tr>
<tr>
<td>/etc/gitconfig</td>
<td>Todos los usuarios y repositorios</td>
<td>&#8211;system</td>
</tr>
<tr>
<td>~/.gitconfig</td>
<td>Todos los repositorios de un usuario en particular</td>
<td>&#8211;global</td>
</tr>
<tr>
<td>repositorio/.git/config</td>
<td>Un repositorio en particular</td>
<td>&#8211;local</td>
</tr>
</tbody>
</table>
<p>Cada nivel sobrescribe el anterior. Podemos ver un ejemplo en la configuración que ya hemos realizado:</p>
<p>[cc lang=»bash»]<br />git config &#8211;global user.name «ahierro.es»<br />[/cc]</p>
<p>Ojo, es posible que en función de tú dispositivo y navegador el parámetro de ámbito parezca precedido de un guión «-» cuando en realidad son dos «&#8211;» pero la tipografía no muestra espacio entre ellos.</p>
<h3>¿Y tú qué opinas?</h3>
<p>Como siempre quiero leer qué opinas,qué configuración echas en falta, si utilizas Git, Subversión u otro software, qué haces distinto, etc. Si quieres compartir, deja un comentario con tus experiencias</p>La entrada <a href="https://blog.ahierro.es/instalar-y-configurar-git-en-una-raspberry-pi-con-ubuntu-mate/">Instalar y configurar Git en una Raspberry PI con Ubuntu Mate</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></content:encoded>
					
					<wfw:commentRss>https://blog.ahierro.es/instalar-y-configurar-git-en-una-raspberry-pi-con-ubuntu-mate/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Servidor Web en Raspberry PI y Ubuntu Mate</title>
		<link>https://blog.ahierro.es/servidor-web-en-raspberry-pi-y-ubuntu-mate/</link>
					<comments>https://blog.ahierro.es/servidor-web-en-raspberry-pi-y-ubuntu-mate/#respond</comments>
		
		<dc:creator><![CDATA[Andres]]></dc:creator>
		<pubDate>Mon, 10 Dec 2018 06:15:41 +0000</pubDate>
				<category><![CDATA[Servicios]]></category>
		<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[base de datos]]></category>
		<category><![CDATA[mariadb]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[phpmyadmin]]></category>
		<category><![CDATA[raspberry pi]]></category>
		<category><![CDATA[servidor]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[web]]></category>
		<guid isPermaLink="false">https://www.ahierro.es/?p=148</guid>

					<description><![CDATA[<p>Un servidor web Apache 2 corriendo sobre Linux no requiere muchos recursos de hardware. Así que si queremos disponer de un servidor casero dónde poder trastear y realizar pruebas o desarrollar ese pequeño proyecto que siempre nos ronda en la cabeza, una Raspberry Pi es una buena opción. Esta entrada forma parte de la serie &#8230; </p>
<p class="link-more"><a href="https://blog.ahierro.es/servidor-web-en-raspberry-pi-y-ubuntu-mate/" class="more-link">Continuar leyendo<span class="screen-reader-text"> "Servidor Web en Raspberry PI y Ubuntu Mate"</span></a></p>
La entrada <a href="https://blog.ahierro.es/servidor-web-en-raspberry-pi-y-ubuntu-mate/">Servidor Web en Raspberry PI y Ubuntu Mate</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></description>
										<content:encoded><![CDATA[<p>Un servidor web Apache 2 corriendo sobre Linux no requiere muchos recursos de hardware. Así que si queremos disponer de un servidor casero dónde poder trastear y realizar pruebas o desarrollar ese pequeño proyecto que siempre nos ronda en la cabeza, una Raspberry Pi es una buena opción.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="650" height="365" src="https://www.ahierro.es/wp-content/uploads/2018/12/servidor_web.jpg" alt="Servidor web" class="wp-image-251" srcset="https://blog.ahierro.es/wp-content/uploads/2018/12/servidor_web.jpg 650w, https://blog.ahierro.es/wp-content/uploads/2018/12/servidor_web-300x168.jpg 300w, https://blog.ahierro.es/wp-content/uploads/2018/12/servidor_web-267x150.jpg 267w" sizes="auto, (max-width: 650px) 100vw, 650px" /></figure>



<span id="more-148"></span>



<p>Esta entrada forma parte de la serie <a href="https://www.ahierro.es/raspberry-pi-como-herramienta-de-apoyo-para-el-desarrollo-web/">Raspberry Pi como herramienta de apoyo al desarrollo web</a>, y está pensada para un servidor de uso personal. De cualquier manera, el contenido de esta guía es perfectamente aplicable a cualquier distribución de Linux basada en Ubuntu y a Raspbian.</p>





<p>Esta documento también puede utilizarse para la configuración de un servidor de una pequeña organización, en cuyo caso sería necesario tener en cuenta algunas consideraciones:</p>



<ol class="wp-block-list"><li>Una Rasperri Pi no es el hardware más adecuado. Debería instalarse sobre un hardware fiable y acordemente dimensionado a las necesidades del uso que se le dará.</li><li>Además del contenido de este artículo, deberían realizarse una serie de configuraciones extra enfocadas en la seguridad que no entran en el ámbito ni el alcance de este documento.</li><li>Este artículo esta pensado para la instalación y configuración de un servidor web en una red local, en caso de que el servidor sea accesible directamente desde internet, el punto anterior cobra mayor importancia, además de requerir algunos ajustes más.</li></ol>



<p>Una vez que todos tenemos claro el ámbito y el alcance, vamos al lío.</p>



<h3 class="wp-block-heading">Instalamos Apache 2</h3>



<p>Este paso será muy sencillo, actualizamos los repositorios e instalamos Apache 2:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo apt-get update
sudo apt-get install apache2
</pre></div>


<p>Si todo ha ido bien ya podremos acceder al al servidor web desde cualquier pc conectado a la red local con tan solo introducir la ip en el navegador.</p>



<p>Para el resto de la entrada asumiremos que nuestra Raspberry está configurada con la IP estática 192.168.1.10.</p>



<p>Así que si introducimos en el navegador la dirección http://192.168.1.10&nbsp; veremos la página por defecto de Apache 2:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="650" height="365" src="https://www.ahierro.es/wp-content/uploads/2018/12/apache2_default_page.jpg" alt="Apache 2 página por defecto" class="wp-image-256" srcset="https://blog.ahierro.es/wp-content/uploads/2018/12/apache2_default_page.jpg 650w, https://blog.ahierro.es/wp-content/uploads/2018/12/apache2_default_page-300x168.jpg 300w, https://blog.ahierro.es/wp-content/uploads/2018/12/apache2_default_page-267x150.jpg 267w" sizes="auto, (max-width: 650px) 100vw, 650px" /></figure>



<p>Un aspecto muy importante en la configuración de Apache es asignar los permisos adecuados a la carpeta del servidor. Podemos pasar sin hacerlo pero más pronto que tarde nos encontraremos con problemas relacionados con permisos.</p>





<p>Comenzaremos asegurándonos de que /var/www/html pertenezca al grupo www-data y que tiene los permisos adecuados:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo chgrp www-data /var/www/html
sudo chmod 775 /var/www/html
sudo chmod g+s /var/www/html
</pre></div>


<p>Agregamos nuestro usuario al grupo www-data:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo usermod -a -G www-data usuario
</pre></div>


<p>Y por último nos aseguramos de ser los propietarios del directorio</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo chown usuario /var/www/html
</pre></div>


<p>Con esto hemos concluido la instalación de Apache.</p>



<h3 class="wp-block-heading">Instalamos PHP</h3>



<p>Instalamos PHP:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo apt-get install php7.0
</pre></div>


<p>Es posible que en función de la distribución que utilicemos en lugar del paquete php7.0 encontremos otra versión. Podemos comprobarlo fácilmente con la siguiente orden:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo apt-cache search php
</pre></div>


<p>Y si por cualquier motivo necesitamos una versión específica de php, deberemos incluir el repositorio ondrej/php como hacemos a continuación:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo add-apt-repository -y ppa:ondrej/php
sudo apt-get update
</pre></div>


<p>En este caso he incluido la opción -y porque al intentar agregar el repositorio me mostraba un warning relacionado con la codificación de caracteres de los repositorios.</p>



<p>Acto seguido instalar la versión de php que necesitemos, en mi caso voy a instalar la versión 7.3:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo apt-get install php7.3
</pre></div>


<p>Tras reiniciar Apache ya habremos acabado:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo service apache2 restart
</pre></div>


<p>Para comprobar que php está correctamente instalado crearemos el archivo&nbsp; /var/www/html/phpinfo.php con el siguiente contenido:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
&lt;?php php phpinfo(); ?&gt;
</pre></div>


<p>Si todo es correcto al acceder a http://192.168.1.10/phpinfo.php veremos algo así:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="650" height="365" src="https://www.ahierro.es/wp-content/uploads/2018/12/php_info_php73.jpg" alt="phpinfo php 7.3" class="wp-image-279" srcset="https://blog.ahierro.es/wp-content/uploads/2018/12/php_info_php73.jpg 650w, https://blog.ahierro.es/wp-content/uploads/2018/12/php_info_php73-300x168.jpg 300w, https://blog.ahierro.es/wp-content/uploads/2018/12/php_info_php73-267x150.jpg 267w" sizes="auto, (max-width: 650px) 100vw, 650px" /></figure>



<h3 class="wp-block-heading">Instalamos y configuramos MariaDB</h3>



<p>Una vez que php está instalado, continuamos con la base de datos:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo apt-get install mariadb-server
</pre></div>


<p>Durante el proceso de instalación deberemos responder responder a algunas preguntas que sin complicación alguna.</p>



<p>El primer paso tras la instalación será configurar MariaDB para que podamos acceder remotamente, pues por defecto solo acepta conexiones desde el propio host:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf
</pre></div>


<p>Esfe archivo puede cambiar en función de tu distribución y de la versión de MariaDB. En ocasiones puedes encontrarlo en /etc/mysql/my.cnf, en /etc/mysql/mysql.conf.d/mysqld.cnf, etc.</p>



<p>Localizamos la siguiente línea:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; gutter: false; title: ; notranslate">
bind-address  = 127.0.0.1
</pre></div>


<p>La sustituimos por:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; gutter: false; title: ; notranslate">
bind-address  = 0.0.0.0
</pre></div>


<p>Y reiniciamos la base de datos:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo service mysql restart
</pre></div>


<p>Con esto hemos habilitado el acceso remoto a MariaDB. Ahora crearemos un nuevo usuario para evitar trabajar con root. Para ello accedemos a la consola de MariaDB:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo mysql -u root -p
</pre></div>


<p>Una vez en la consola de MariaDB creamos nuestro usuario:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: sql; gutter: false; title: ; notranslate">
CREATE USER &#039;usuario&#039; IDENTIFIED BY &#039;contraseña&#039;;
</pre></div>


<p>Y concedemos acceso remoto y a todas las bases de datos al usuario que acabamos de crear:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: sql; gutter: false; title: ; notranslate">
GRANT USAGE ON *.* TO &#039;usuario&#039;@&#039;%&#039; IDENTIFIED BY &#039;contraseña&#039;;
</pre></div>


<p>En este punto es buena idea comprobar que todo ha salido bien. Podemos hacerlo abriendo una conexión al servidor de bases desde nuestro equipo de trabajo con alguna herramienta como MySQL Workbench.</p>



<h3 class="wp-block-heading">Instalamos phpMyAdmin</h3>



<p>Esta es una herramienta que siempre me gusta instalar a pesar de que en la mayoría de situaciones trabajo con MySql Workbenck. Para instalar basta con:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: bash; gutter: false; title: ; notranslate">
sudo apt-get install phpmyadmin
</pre></div>


<p>Y una vez instalado podremos acceder a ella mediante <em>http://192.168.1.10/phpmyadmin</em>.</p>





<h3 class="wp-block-heading">Conclusión</h3>



<p>Ya tenemos un servidor web completamente funcional corriendo sobre nuestra Rasperri PI, sencillo, económico y funcional. Ahora solo hay que usarlo.</p>



<p>¿Y tú?, ¿Crees que necesitamos aplicar alguna otra configuración? ¿Haces algo distinto? ¿Echas en falta algún paso? o simplemente ¿te ha servido de ayuda? Comparte tu experiencia y aprendamos todos.</p>La entrada <a href="https://blog.ahierro.es/servidor-web-en-raspberry-pi-y-ubuntu-mate/">Servidor Web en Raspberry PI y Ubuntu Mate</a> apareció primero en <a href="https://blog.ahierro.es">blog.ahierro.es, programación, internet, tecnología y otras historias</a>.]]></content:encoded>
					
					<wfw:commentRss>https://blog.ahierro.es/servidor-web-en-raspberry-pi-y-ubuntu-mate/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
