Conceptos Esenciales de Linux: Comandos, Archivos y Sistema

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 7,77 KB

Conceptos Fundamentales de Linux

El sistema de paquetes de Debian

El sistema de paquetes de Debian utiliza **paquetes .deb**.

Distribución Ubuntu

La distribución **Ubuntu** es desarrollada por una empresa (Canonical) y es de **distribución gratuita**.

Familias de distribuciones Linux

Las dos grandes familias de distribuciones Linux se distinguen principalmente por su **distinto sistema de paquetes** (por ejemplo, .deb para Debian/Ubuntu y .rpm para Red Hat/Fedora).

Gratuidad de Linux

Linux **no es un sistema operativo exclusivamente gratuito**. Aunque la mayoría de las distribuciones son gratuitas, existen versiones y servicios de soporte de pago.

Definición de Shell

Un **shell** es un **intérprete de órdenes** que proporciona una **interfaz interactiva orientada a línea de comandos** entre el usuario y el sistema operativo.

Ejemplos de Shells en Linux

Algunos nombres de shells comunes en Linux son: **sh**, **csh**, y **bash**.

Gestión de Archivos y Directorios

El directorio raíz

El **directorio raíz** es el punto de partida de toda la jerarquía de archivos, del cual "cuelgan" todos los demás directorios. Se representa con el símbolo **/**.

Unicidad del directorio raíz

Sí, en toda instalación de Linux existe **obligatoria y exclusivamente un único directorio raíz**.

Directorio /bin

El directorio **/bin** contiene los **comandos ejecutables básicos** para los usuarios.

Directorio /etc

El directorio **/etc** alberga la mayoría de los **ficheros de configuración del sistema**.

Directorios de usuario

Cada usuario tiene una carpeta personal que lleva el **nombre del propio usuario** y se encuentra dentro del directorio **/home**.

Fichero /etc/passwd

El fichero **/etc/passwd** almacena la **información sobre los usuarios** de Linux.

Discos en Linux

En Linux, los discos se consideran **directorios** que se integran en la **estructura de archivos** del sistema.

Ficheros fstab y mtab

El fichero **/etc/fstab** contiene la configuración de los **discos y particiones que se montan automáticamente al iniciar el sistema**, mientras que **/etc/mtab** muestra los **sistemas de archivos que están montados en el momento actual**.

Nomenclatura de particiones

**sdc3** hace referencia a la **tercera partición del tercer disco SATA** (o SCSI/USB).

Montar particiones en Linux

Sí, se puede montar una partición o un disco en **cualquier directorio** del sistema de archivos, pero esta operación generalmente requiere **privilegios de administrador** (root).

Comando rm

La orden **rm** se utiliza para **borrar archivos y directorios**.

Comando ln -s

La orden **ln -s** se emplea para **crear un enlace simbólico** (o "soft link").

Renombrar archivos

Para renombrar el archivo hola.txt a adios.txt, se utiliza la orden: **mv hola.txt adios.txt**.

Copia de archivos con permisos de root

Para copiar el fichero hola.txt (con propiedad de root y permisos por defecto) que se encuentra en el directorio raíz (/) al directorio personal del usuario alumno (/home/alumno), se empleará la orden: **sudo cp /hola.txt /home/alumno**.

Listar archivos recursivamente

Si se está en el directorio raíz (/), para ver los archivos del directorio /home y de todos sus subdirectorios recursivamente, se utiliza la orden: **ls -l -R /home**.

Mostrar archivos ocultos

Para ver en pantalla los archivos ocultos (aquellos que empiezan con un punto), se puede utilizar la orden: **ls -la** o **ls -l .***.

Cambio de propietario de archivo

Para ceder el control del archivo listadoetc al usuario puesto01, se ejecuta la orden: **chown puesto01 listadoetc**.

Cambio de grupo de archivo

Para ceder el control del archivo listadoetc al grupo puesto01, se ejecuta la orden: **chgrp puesto01 listadoetc**.

Cambio de permisos (chmod)

Si se desea cambiar los permisos de un fichero para que el propietario y el grupo tengan permisos de lectura y escritura, y el resto de usuarios no tenga ningún permiso, se utilizará la orden: **chmod 660 fichero**.

Configuración de permisos específicos

Para cambiar los permisos a un fichero de forma que el propietario pueda **leer, escribir y ejecutar** (7), el grupo del usuario también pueda **leer, escribir y ejecutar** (7), y el resto de usuarios solo pueda **leer** (4), se utiliza la orden: **chmod 774 fichero**.

Gestión de Procesos y Tareas

Comando jobs

La orden **jobs** permite visualizar los **trabajos que se están ejecutando en segundo plano**.

Comando kill

Para usar la orden **kill**, es obligatorio especificar el **PID (Process ID)** del proceso.

Visualizar todos los procesos

Para ver todos los procesos en **ejecución** en el sistema, se utiliza la orden: **ps -ef**.

Visualizar procesos de un usuario

Para visualizar los procesos que están ejecutándose de un usuario específico, se utiliza la orden: **ps U usuario**.

Redes y Configuración del Sistema

Configuración de red en Debian

Para configurar la red en Debian, se debe modificar el fichero **/etc/network/interfaces**.

Variables y Expresiones Regulares

Variables de entorno y expansión de shell

Si se crean las variables nombre y mensaje de la siguiente forma: nombre="Jose Luis Calvo Benitez" y mensaje='El nombre completo del usuario es $nombre', y luego se ejecuta echo $mensaje, se obtendrá: **El nombre completo del usuario es $nombre**. Esto ocurre porque las comillas simples (') evitan la expansión de variables.

Comando grep

La orden **grep** se utiliza para **buscar coincidencias** (patrones de texto) dentro de un archivo.

Expresiones regulares: [Tt]

La expresión regular **[Tt]** coincidirá con caracteres que sean **'T' o 't'**.

Expresiones regulares: [^rns]ez

Si se utiliza la expresión regular **[^rns]ez**, se mostrarán aquellas líneas que contengan la secuencia "ez" precedida por **cualquier carácter que NO sea 'r', 'n' o 's'**.

Interacción con el Sistema

Redirección de salida (Pipes)

Para dirigir la salida de una instrucción hacia la entrada de otra, se debe utilizar una **canalización** (pipe), representada por el símbolo **|**.

Redirección de salida para añadir contenido

Para añadir el resultado de ls -l a un fichero ya existente llamado listado, sin borrar su contenido previo, se utiliza la orden: **ls -l >> listado**.

Modificación de usuarios

Para modificar las características de un usuario existente, se utiliza la orden: **usermod**.

Ver usuarios conectados

Para ver los usuarios que están conectados al sistema, se utiliza la orden: **who**.

Sensibilidad a mayúsculas y minúsculas

Las órdenes **cp** y **CP** **no son equivalentes** en Linux, ya que el sistema es **sensible a mayúsculas y minúsculas**.

Entradas relacionadas: