# Linux

## <mark style="color:purple;">Comandos básicos</mark>

<table><thead><tr><th width="215">Comando</th><th>Descripción</th></tr></thead><tbody><tr><td><code>ls</code></td><td>Listar archivos y directorios en el directorio actual.</td></tr><tr><td><code>pwd</code></td><td>Mostrar el directorio de trabajo actual.</td></tr><tr><td><code>cd</code></td><td>Cambiar de directorio.</td></tr><tr><td><code>cd ..</code></td><td>Directorio anterior</td></tr><tr><td><code>mkdir</code></td><td>Crear un nuevo directorio.</td></tr><tr><td><code>touch</code></td><td>Crear un nuevo archivo vacío.</td></tr><tr><td><code>cp</code></td><td>Copiar archivos o directorios.</td></tr><tr><td><code>mv</code></td><td>Mover o renombrar archivos o directorios.</td></tr><tr><td><code>rm</code></td><td>Eliminar archivos o directorios.</td></tr><tr><td><code>cat</code></td><td>Mostrar el contenido de un archivo.</td></tr><tr><td><code>cat /etc/passwd</code></td><td>Mostrar todos los usuarios del sistema</td></tr><tr><td><code>cut -d: -f1 /etc/passwd</code></td><td>Extraer solo el nombre de usuario de passwd</td></tr><tr><td><code>awk -F: '$3 >= 1000 &#x26;&#x26; $3 &#x3C; 65534 {print $1}' /etc/passwd</code></td><td>Mostrar solo usuarios humanos</td></tr><tr><td><code>getent passwd</code></td><td>Información sobre usuarios y servicios</td></tr><tr><td><code>less</code></td><td>Ver contenido de archivo paginado.</td></tr><tr><td><code>head</code></td><td>Mostrar las primeras líneas de un archivo.</td></tr><tr><td><code>tail</code></td><td>Mostrar las últimas líneas de un archivo.</td></tr><tr><td><code>grep</code></td><td>Buscar patrones en archivos de texto.</td></tr><tr><td><code>find</code></td><td>Buscar archivos y directorios.</td></tr><tr><td><code>file documento.txt</code></td><td>Ver el tipo de un documento</td></tr><tr><td><code>ps</code></td><td>Mostrar procesos en ejecución.</td></tr><tr><td><code>kill</code></td><td>Terminar procesos.</td></tr><tr><td><code>top</code></td><td>Mostrar información en tiempo real sobre el sistema.</td></tr><tr><td><code>df</code></td><td>Mostrar el espacio en disco disponible.</td></tr><tr><td><code>du</code></td><td>Mostrar el uso del espacio en disco de archivos y directorios.</td></tr><tr><td><code>tar</code></td><td>Comprimir y descomprimir archivos y directorios.</td></tr><tr><td><code>chmod</code></td><td>Cambiar permisos de archivos y directorios.</td></tr><tr><td><code>chown</code></td><td>Cambiar propietario de archivos y directorios.</td></tr><tr><td><code>useradd</code></td><td>Agregar un nuevo usuario.</td></tr><tr><td><code>userdel</code></td><td>Eliminar un usuario.</td></tr><tr><td><code>passwd</code></td><td>Cambiar la contraseña del usuario.</td></tr><tr><td><code>sudo</code></td><td>Ejecutar comandos con privilegios de superusuario.</td></tr><tr><td><code>apt</code> (o <code>yum</code> en otras distribuciones)</td><td>Gestionar paquetes en sistemas basados en Debian (o en otras distribuciones).</td></tr><tr><td><code>sudo apt-get update</code></td><td>Actualizar la lista de paquetes</td></tr><tr><td><code>wget</code></td><td>Descargar archivos desde la web.</td></tr><tr><td><code>ssh</code></td><td>Conectar a un servidor remoto mediante SSH.</td></tr><tr><td><code>scp</code></td><td>Copiar archivos de forma segura entre sistemas a través de SSH.</td></tr></tbody></table>

## <mark style="color:purple;">Estructura de directorios en Linux</mark>

<table><thead><tr><th width="138">Directorio</th><th>Descripción</th></tr></thead><tbody><tr><td><code>/</code></td><td>Directorio raíz del sistema; el punto de inicio de la estructura de directorios en Linux.</td></tr><tr><td><code>/bin</code></td><td>Contiene binarios esenciales para el sistema y el usuario, como comandos básicos (<code>ls</code>, <code>cp</code>, <code>mv</code>, etc.).</td></tr><tr><td><code>/boot</code></td><td>Archivos necesarios para el arranque del sistema, como el kernel de Linux y archivos de configuración.</td></tr><tr><td><code>/dev</code></td><td>Archivos de dispositivos; representa dispositivos de hardware y pseudo-dispositivos del sistema.</td></tr><tr><td><code>/etc</code></td><td>Archivos de configuración del sistema y los servicios instalados.</td></tr><tr><td><code>/home</code></td><td>Directorio donde se encuentran los archivos personales de cada usuario.</td></tr><tr><td><code>/lib</code></td><td>Bibliotecas compartidas necesarias para los binarios de <code>/bin</code> y <code>/sbin</code>.</td></tr><tr><td><code>/media</code></td><td>Punto de montaje para dispositivos extraíbles, como discos USB y CDs.</td></tr><tr><td><code>/mnt</code></td><td>Directorio temporal para montar sistemas de archivos adicionales de manera manual.</td></tr><tr><td><code>/opt</code></td><td>Directorio para aplicaciones adicionales que no forman parte de la instalación principal del sistema.</td></tr><tr><td><code>/proc</code></td><td>Sistema de archivos virtual que contiene información del sistema y procesos en ejecución.</td></tr><tr><td><code>/root</code></td><td>Directorio de inicio del usuario root; el administrador del sistema.</td></tr><tr><td><code>/run</code></td><td>Información sobre los servicios y el sistema que se almacena desde el arranque hasta el apagado.</td></tr><tr><td><code>/sbin</code></td><td>Binarios esenciales para tareas administrativas y de sistema (solo accesibles con permisos root).</td></tr><tr><td><code>/srv</code></td><td>Contiene datos de servicios proporcionados por el sistema (ej., datos de un servidor web o FTP).</td></tr><tr><td><code>/sys</code></td><td>Sistema de archivos virtual similar a <code>/proc</code>, usado para información y control del hardware del sistema.</td></tr><tr><td><code>/tmp</code></td><td>Almacenamiento temporal; se borra al reiniciar el sistema.</td></tr><tr><td><code>/usr</code></td><td>Archivos de usuario y de aplicaciones; incluye binarios, bibliotecas y documentación de programas.</td></tr><tr><td><code>/var</code></td><td>Archivos de datos variables, como logs del sistema, colas de impresión, y archivos temporales de aplicaciones.</td></tr></tbody></table>
