Fundamentos de Linux: Evolución, Comandos y Administración

Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 11,85 KB

Linux: Sistema Operativo Multiusuario y Multitarea

Linux es un sistema operativo multiusuario, multitarea y multiproceso compatible con Intel. Basado en Unix, desarrollado en los años 70, es de libre distribución mediante la licencia GPL (Licencia Pública General). Esto permite copiar, modificar y distribuir el código fuente, que es público, sin restricciones.

Evolución de Unix

Unix nace en 1969 en Bell Labs. Inicialmente, comenzó como un juego, pero luego se desarrolló un sistema de archivos, un nuevo software y un entorno de procesos con planificación, todo en ensamblador. La segunda edición se escribió en C, incluyendo pipes (un mecanismo orientado a objetos). C, también desarrollado en Bell Labs, es un conjunto de tres lenguajes: B, CPL y Algol 60. Su distribución a ciudades de todo el mundo impulsó numerosas innovaciones.

GNU y el Software Libre

El objetivo de GNU es construir un sistema operativo de uso general y completamente libre. Para ello, se creó la GPL, que permite la distribución del código fuente.

Evolución de Linux

Linux surge en 1991 como respuesta a la falta de aprovechamiento del potencial de las máquinas por parte de MS-DOS. Basado en Minix y creado por Linus Torvalds, se difundió gratuitamente por Internet, lo que permitió la participación de mucha gente en su desarrollo. Linux es el núcleo del sistema operativo, encargado de gestionar el procesador. El término GNU/Linux se refiere a la combinación del proyecto de generación de código libre (GNU) con el núcleo o kernel (Linux).

Distribuciones de Linux

Una distribución es una recopilación de programas y ficheros organizados y preparados para su instalación, generalmente bajo licencia GPL. Algunas de las más populares son:

  • Red Hat-Fedora: De las más populares e importantes.
  • Debian: No comercial, desarrollada por programadores de todo el mundo. Tiene tres versiones: de pruebas, estable y de desarrollo.
  • Mandake-Mandriva: Más fácil de usar, ideal para usuarios noveles. Incluye un programa de instalación sencillo e intuitivo.
  • Ubuntu: Robusta y estable, basada en Debian pero más accesible.
  • Knoppix: Funciona desde un disco.
  • Distribuciones Nacionales: Gnulinex, MAX, Guadalinex, Lliurex, Molinux, Linkat, Galinex.

Consolas Virtuales

  • Alt + F1...F6: Permiten trabajar a diferentes usuarios en cada consola.
  • startx: Cambia del modo texto al modo gráfico.
  • Alt + F7: Accede al modo gráfico desde las consolas virtuales.
  • Ctrl + Alt + F1...F6: Cambia del modo gráfico al modo texto.

Modificar el Arranque

Para modificar el arranque, se debe editar el fichero /etc/default/group. Primero, se cambia la instrucción y luego se ejecuta update-grub.

  • quit splash: Modo gráfico silencioso, sin mostrar información.
  • splash: Modo gráfico normal.
  • quit splash text: Modo texto silencioso.
  • splash text: Modo texto normal.

La Shell

La shell muestra una línea de comandos por pantalla (prompt). Bash es una shell común que incluye historial y función de expansión (autocompletado con la tecla Tab).

Estructura de Ficheros

Linux utiliza una estructura de directorios en forma de árbol, con una raíz (/). El usuario root es el administrador. Cada usuario tiene un directorio home asignado.

  • Ruta absoluta: Desde el principio del árbol (/).
  • Ruta relativa: Desde el directorio actual.
  • Directorio actual: Representado por un punto (.).
  • Directorio ascendente: Representado por dos puntos (..).
  • Directorio descendente: Representado por un guion (-).

Primeros Comandos

  • pwd: Muestra la ruta completa del directorio actual.
  • cd: Cambia de directorio.
  • ls: Lista el contenido de un directorio. Opciones:
    • -l: Lista extendida.
    • -a: Muestra archivos ocultos.
    • -R: Lista recursiva, incluyendo subdirectorios.
  • mkdir: Crea directorios.
  • rmdir: Borra directorios vacíos.
  • rm -r: Borra directorios con datos.
  • logout: Cierra la sesión.
  • man: Muestra el manual de un comando (man nombre_comando).
  • halt/shutdown: Apaga el sistema.
  • reboot: Reinicia el sistema.

Estructura de Directorios Principales

  • /bin: Archivos ejecutables esenciales.
  • /usr/bin: Comandos de usuario.
  • /sbin: Comandos de administrador.
  • /usr/sbin: Comandos de administrador adicionales.
  • /etc: Archivos de configuración de aplicaciones.
  • /root: Directorio home del usuario root.
  • /usr: Almacén de descargas y aplicaciones.
  • /home: Directorio home de cada usuario.
  • /tmp: Ficheros temporales.
  • /boot: Ficheros de arranque del sistema.
  • /dev: Archivos de dispositivos hardware.
  • /var: Información variable.
  • /opt: Software opcional.
  • /proc: Sistema de ficheros virtual.

Sistema de Ficheros: Comandos

  • cat: Muestra el contenido de un fichero de texto.
  • more: Muestra el contenido de un fichero página a página.
  • less: Similar a more, pero permite desplazarse por el fichero.
  • cp: Copia ficheros y directorios.
  • mv: Mueve o renombra ficheros y directorios.
  • rm: Borra ficheros.
  • rm -rf: Borra directorios y su contenido de forma forzada.
  • find: Busca ficheros.
  • cmp: Compara dos ficheros byte a byte.
  • diff: Busca diferencias entre dos ficheros.
  • file: Indica el tipo de un fichero.
  • whereis: Muestra la ruta completa y la página del manual de un comando.
  • type: Muestra la ruta completa de un comando.
  • chmod: Cambia los permisos de un fichero (chmod u/g/o +/-/= r/w/x).
  • touch: Actualiza la fecha de modificación de un fichero.
  • head: Muestra las primeras 10 líneas de un fichero.
  • tail: Muestra las últimas 10 líneas de un fichero.
  • wc: Cuenta el número de palabras, líneas y caracteres de un fichero.

Condiciones para la Generación de Ficheros

  • *: Sustituye a varios caracteres o ninguno.
  • ?: Sustituye a un solo carácter.
  • [...]: Sustituye a cualquiera de los caracteres entre corchetes.
  • [!...]: Sustituye a cualquier carácter que no esté entre corchetes.

Enlaces

hard  (varios nombres para un archivo); soft (archivos acceso directo); find (buscar ficheros enlazados); ls-li (ver nº de inido de fichero).

TRABAJOS ADMINISTRADOR

mediante usuario root, se encuentra en directorio /etc. Para ponernos como root (su + nombre user + password); su -c+comando (ejecuta comando con permisos de administrador); /etc/psswd (1 linea por usuario creado en el sistema); /etc/shadow (donde se guardan las contraseñas); /etc/group (1 linea por grupo creado),

CREACION USUARIOS

useradd (-c (descripcion usuario); -d (directorio home); -e (fecha caducidad cuenta); -g (grupo por defecto); -a (otros grupos); -s (shell); -u (identificador usuarios); -m (crear directorio home)); addusers (creacion usuarios + avanzada); passwd (cambiar contraseña); groupadd (creacion de un grupo); user -r (eliminar usuarios); groupdel (eliminar grupos); chown (cambio propietario archivos directorio); chgrp (cambio grupo fichero o directorio); umask (cambio permisos).

GESTION USUARIOS

groups (muestra los grupos a los que pertenece un usuario); chfn (cambia descripcion de usuario), chsh (cambio de shell).

FICHEROS DE DISPOSITIVOS

mount/unmount-t (montar/desmontarddispositivos de almacenamiento); proc/bus/usb (habilitar usb).

REDIRECCION DE COMANDOS Y TUBERIAS

stdout (redirige); stderr (error); stdin (entradas); > (copia archivo borrando info anterior); 2> (tambien); >> (copia sin borrar info anterior); 2>> (tambien).

COMANDOS GENERALES Y DE INFORMACION DEL SISTEMA

clear (borrar pantalla); date (fecha y hora); cal (calendario); hostname (nombre equipo); who (usuarios conectados al equipo); finger (info en pantalla sobre usuarios); whoami (nombre usuario actual); uptime (tiempo que lleva el sistema activo); uname (info del sistema).

GESTION DE PROCESOS

programa (conjunto instrucciones); proceso (programa en ejecucion). ps (visualizar proceso, -u (usuario), -A (todos los procesos), -e (como A), -f (todos los procesos en memoria), -ef (informacion extendida), ps tree (forma de arbol); kill (termina un proceso en memoria, no responde); jobs (proceso de todos los usuarios); bg jobs (pas a 2º plano un proceso); fg jobid (devuelve a primer plano un proceso); top (info en tiempo real de la actividad del procesador).

GESTION DE USUARIOS

df (utilizacion espacio en disco); du (cantidad usada por ficheros especificados); fdisk (crear/eliminar particiones); mkfs (dar formato a particiones); fscx o e2fisk (chequea y repara el sistema); mkswap (crear particion de intercambio); swap on/off (activa/desactiva una particion).

COPIAS DE SEGURIDAD

tar+gzip (comprimir); tat+gunzip (descomprimir); tar + cvf (comprime fichero); tar -xvf (descomprime fichero).

Entradas relacionadas: