# CentOS - MINIMAL

----
## Introducción
Bien, pues para empezar este hermoso proyecto he de inicar con una introducción, CentOS minimal es un sistema operativo el cual funciona igual que Ubuntu y es parte de Linux, inicalmente empezó como una distribución de Linux que fue lanzada en marzo de 2004.
----
El proyecto de código abierto, desarrollado y apoyado por una gran comunidad, se basa en los paquetes fuente de Red Hat Enterprise Linux (RHEL), una distribución comercial de pago que solo se puede utilizar en combinación con contratos de soporte.Red Hat, el proveedor de RHEL, está obligado a publicar (como recurso open source) el código fuente de los componentes de software integrados en las diversas licencias libres. Esto permite a los desarrolladores apoyarse sin ningún coste en el código fuente de RHEL durante la programación como parte del proyecto.
----
Ahora bien, para las personas que quieran instalar dicho sistema operativo dentro de una máquina virtual, este tutorial les servirá para que puedan hacer dicha instalación, dicho ésto procedamos con el tutorial.

---
## Primeros Pasos: Configurar Máquina Virtual
----
* Para este tutorial o blog, instalaremos la versión 7 de CentOS - Minimal, la cual se puede descargar desde esta página: http://isoredirect.centos.org/centos/7/isos/x86_64/
* Luego de descargar cualquier opción de dicho enlace, abriras la aplicacion de Oracle VM Virtual Box, en caso de no tenerla instalar la versión a preferencia (en este caso se uso la versión 6.0.16).
Anexo URL: https://www.virtualbox.org/wiki/Download_Old_Builds_6_0 (Selecciona la opción de tu sistema operativo)
----
* Una vez que se inicie Virtual Box tendrán que dar al botón de "Nueva" como en la imágen:

----
* ##### Ahora debera aparecernos esta pestaña en donde unicamente pondremos el nombre del sistema Operativo:

----
* #### Al darle "Next" o siguiente deberemos proceder a poner "1500" de memoria al S.O.:

----
* ##### Ahora dispondremos de darle al botón "Crear" y seguir al botón de "Next":

----

----

----

----
* ##### Al final debe de aparecernos ésto en la pantalla principal de Virtual Box:

----
* Ahora procederemos a configurar la máquina virtual dándole clic al botón "Configuración":

----
* ##### Deberá aparacer la siguiente pantalla y nos dirigiremos a la pestaña "Sistema" y a la subpestaña "Aceleración" y desactivaremos la opción "Habilitar VT-x/AMD-V":

----
* ##### Ahora deberemos ir a la pestaña "Almacenamiento" y seleccionarun controlador IDE como se muestra (Será el archivo que se descargo en el punto 1):

----
* ##### Deberemos escoger el archivo .iso y dar "Aceptar":

----
* ##### Ahora daremos "Aceptar" y empezaremos a abrir la máquina virtual:

---
## Segundo Paso: Instalación del S.O.
----
* ##### Iniciaremos la máquina virtual y esperaremos a que aparezca esta pantalla y con el teclado le daremos a la opción "Install CentOS 70":

----
* ##### Eventualmente aparecera automaticamente la siguiente pantalla en donde escogeremos el idioma, yo seleccione Español(México) debido a que mi teclado esta en ese idioma, le daremos a "Continuar":

----
* ##### Seleccionaremos a continuación el Destino de instalación:

----
* ##### Seleccionaremos el almacenamiento y le daremos al botón "Listo":

----
* ##### Ahora procederemos a activar el internet, pero antes, sería bueno que desactivaran KDUMP para ahorrar espacio:

----
* ##### Activaremos el botón y luego daremos al botón de "Listo":

----
* ##### Para finalizar le daremos a "Empezar Instalación":

----
* ##### Esperaremos a que automaticamente se instale, mientras tanto procederemos a poner la contraseña Root y un usuario cualquiera, ésto queda a dedicación de cada uno (Se hara al usuario como Administrador):

----
* ##### Una vez acabada la instalación se le dará clic al botón "Reiniciar":

----
* ##### Ahora esperaremos a que termine de instalarse el sistema y ya estaria la instalación. Aparecerá la siguiente pantalla y lo que tenemos que hacer es introducir los datos de Usuario que llenamos junto a la contraseña Root (todo en minusculas excepto contraseña):

----
* ##### Deberá quedar la consola únicamente:

---
## Paso 3ero.: Instalación de programas/herramientas.
----
* **Compilador G++ y otros**
Ahora que tenemos Centos 7, vamos a instalar todo lo necesario para compilar en el sistema junto con el resto de herramientas de desarrollo que también necesitaremos. Toda la instalación se va a basar en un único comando ya que podemos instalar todos los paquetes a través de un grupo preestablecido de yum llamado "Development Tools". Es tan simple como escribir en la terminal:
```
sudo yum group install "Development Tools"
```
Creditos a: https://rm-rf.es/instalar-compiladores-centos-7-rhel/
----
* **Servidor SSH**
Configurar ssh en Centos es la parte crucial para tener acceso remoto a tu servidor Linux, esto es por que instalar un servidor ssh con Centos es muy sencillo solo tienes que ejecutar un par de comandos, pero configurar ssh en centos es la parte importante para asegurarte que solo ingresen al sistema las personas que deben hacerlo y lo hagan de una forma segura.
----
Cuando realizas la Instalación de Centos como servidor, automáticamente se instala ssh cuando elijes la opción «Basic Server» o «Minimal Desktop», pero cuando utilizas «Minimal» no se instala por omisión. También puede ocurrir que por alguna razón se haya desinstalado este servicio.
----
* #### Instalaremos el servidor OpenSSH en la terminal con el comando:
```
sudo yum install openssh-server
```
* #### Para Configurar el SSH haremos lo siguiente (solo si tienes conocimiento):
- ##### Primero hacemos un backup del archivo original en caso de arruinarlo:
```
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.old
```
* ##### Editamos el archivo (solo si tienes conocimiento):
```
/etc/ssh/sshd_config
```
----
* **GIT en CentOS 7**
Nos conectamos vía ssh como root y procedemos ingresando a la consola lo siguiente y escribiremos "Y" y "s" en señal de confirmación cuando lo pida:
```
sudo yum install git
```
Verificamos que la instalación fue correcta:
```
git --version
```
Ejemplo de salida:
```
git version 2.13.6
```
----

----
* **Configurar GIT en CentOS 7**
Lo primero que debes hacer es configurar tu nombre y dirección de correo electrónico.
Haz uso de estos comandos:
```
git config --global user.name "Tu-nombre"
git config --global user.email "usuario@mimail.es"
```
Una vez completados los dos, verifica que la información introducida es correcta.
```
git config --list
```
Una salida correcta sería:
```
user.name=Tu-nombre
user.email=usuario@mimail.es
```
----
* **GCC EN CentOS 7**
Ejecute el siguiente comando para instalar GCC en su servidor:
```
sudo yum -y install gcc
```
Una vez completada la instalación, puede instalar la versión de GCC en su servidor utilizando el siguiente comando:
```
gcc --version
```
Debería tener una salida así:
```
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-16)
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
```
----
* En particular si no deja usar el compilador de G++ entonces escribir esto en la consola vendra bien al instar:
```
yum install gcc gcc-c++ autoconf automake
```
----
* #### Como anexo se asocia unas listas de comandos que pueden ser utiles para lo que viene a continuación:
- #### https://blog.desdelinux.net/mas-de-400-comandos-para-gnulinux-que-deberias-conocer/
- #### https://docs.bluehosting.cl/tutoriales/servidores/guia-practica-de-los-editores-de-texto-nano-y-vi-en-linux.html
- #### https://docs.oracle.com/cd/E19620-01/805-7644/x-5lei2/index.html
- #### http://www.programa-me.com/documents/GuiaCompilacionCLI.pdf
---
## Paso 4: Clonar, compilar y ejecutar un programa de Github
----
Realmente el clonar un Repositorio de GitHub se hace exactamente igual que en Ubuntu pero de igual forma se indicará que comandos usar y poner en la consola.
----
* Primero necesitamos pasarnos a la carpeta bin/ por lo tanto escribiremos y daremos Enter:
```
cd /usr/bin
```
* Luego en esa carpeta crearemos una subcarpeta de cualquier nombre y daremos Enter (pondremos usuario y contraseña):
```
sudo mkdir Git
```
----
* Procederemos a esa carpeta escribiendo:
```
cd Git/
```
* En esta misma carpeta tenemos que hacerla Git así (pondremos usuario y contraseña):
```
sudo git init
```
----
* Ahora clonaremos un repositorio a elegir de GitHub, se recomienda tener cuenta para dicho paso:
```
sudo git clone https://github.com/AlienMissed1/TestGit.git
```
(Pondremos usuario y contraseña)
* Si todo sale bien podremos poner el comando "ls" para ver la carpeta que se clonó.
----
* Ahora nos pasaremos a esa carpeta con el comando "cd" y no si hay mas carpetas nos pasamos a esas hasta encontrar el archivo "*.cpp" que tenga el repositorio:
```
cd /Algo
cd /Algo/SuperAlgo
```
* Seguido de eso, cuando encontremos el archivo .cpp dispondremos a compilarlo en la terminal con el comando:
```
sudo g++ -o app SuperAlgo.cpp
```
Se compiló el programa "SuperAlgo.cpp" y generó el ejecutable "app".
----
* Ahora para ejecutar dicha "app" se escribe lo siguiente:
```
./app
```
Y listo! Ya tendrás tu programa ejecutado en la terminal, para salir es tan fácil como presionar ctrl+c.
---
## Gracias por ver este pequeño tutorial acerca de estos puntos.

{"metaMigratedAt":"2023-06-15T03:39:13.331Z","metaMigratedFrom":"Content","title":"CentOS - MINIMAL","breaks":true,"contributors":"[{\"id\":\"9116c0bc-1b26-4dee-832b-9e62bad3d94d\",\"add\":11237,\"del\":403}]"}