Píldora TAI C; Entendiendo Permisos y Comandos en UNIX/Linux

📘 Guía Visual de Conceptos de UNIX/Linux: Comandos, Permisos y Núcleo

🔷 1. uname — Información del Sistema

El comando uname proporciona datos sobre el sistema operativo y el kernel.

OpciónDescripción
-aMuestra toda la información
-sNombre del kernel
-nNombre del host
-rVersión del release
-vVersión del kernel
-mArquitectura de la máquina (x32, x64)
-pProcesador
-iHardware
-oNombre del sistema operativo

🔷 2. Runlevels — Niveles de Ejecución

Definen el estado del sistema y los servicios activos.

RunlevelDescripción
0🔻 Apagado
1🛠️ Monousuario root (mantenimiento)
2👥 Multiusuario sin red
3🌐 Multiusuario con red (sin gráficos)
4🌐+🎨 Multiusuario con red + opciones extra
5🖥️ Multiusuario gráfico (login GUI)
6🔄 Reinicio

📄 Archivo para editar el nivel predeterminado: /etc/inittab
Ejemplos:

id:5:initdefault
init 0 # Apagar
init 6 # Reiniciar
init n # Cambiar a runlevel n

🔷 3. Permisos Especiales

Los permisos especiales agregan funcionalidades extra a los archivos o directorios.

PermisoSímboloPesoFunción
SUIDu+s4Programa ejecuta con permisos del propietario
SGIDg+s2Programa ejecuta con permisos del grupo
Sticky Bito+t1Solo el propietario puede borrar en directorio

🎯 Ejemplos:

chmod 4759 hola.txt   # SUID
chmod 2759 hola.txt # SGID
chmod 1759 hola.txt # Sticky Bit
chmod 7755 hola.txt # Todos combinados

En directorios, el Sticky Bit evita que otros usuarios borren archivos ajenos.


🔷 4. Permisos en Octal

Cada permiso se representa con un número:

  • Lectura (r) = 4
  • Escritura (w) = 2
  • Ejecución (x) = 1
RolPermisosSuma
Propietariorwx7
Grupor-x5
Otrosr–4

🎯 Ejemplo:

chmod 754 archivo.txt

🔷 5. umask — Máscara de permisos

Define los permisos iniciales de nuevos archivos/directorios.
El valor se resta de 777 (directorios) o 666 (archivos).

🎯 Ejemplos:

umask 022  # Crea archivos con 755
umask 077 # Crea archivos con 700

🔷 6. chown — Cambiar propietario

Permite modificar el propietario o grupo:

chown usuario archivo.txt
chown usuario:grupo archivo.txt

🔷 7. Núcleo UNIX/Linux

  • UNIX nació en los 60s, con núcleo monolítico (hoy híbrido).
  • Núcleo Linux es independiente y gestiona procesos, memoria, y planificaciones.
  • Versiones Linux: 4 números (ej: 4.19.45.3):
    • A: Versión principal
    • B: Subversión
    • C: Revisiones menores
    • D: Corrección crítica

Ejemplos de ramas:

TipoVersión Ejemplo
mainline4.19
stable4.18.16
longterm4.14.78

Última Ubuntu (en tu captura): 19.04 (Disco Dingo).


🔷 8. Kernel: Modular y Monolítico

Linux es modular y monolítico: todos los componentes en un solo núcleo pero con módulos cargables.

🧩 Componentes del Kernel:

  • Controladores de dispositivo
  • Capa de red
  • Gestión de memoria
  • Planificación de procesos
  • Llamadas al sistema
  • Sistema virtual de archivos (VFS)

🔷 9. Interfaces

  • CLI: Command Line Interface
  • GUI: Graphical User Interface

📄 POSIX (IEEE): Define las interfaces para la compatibilidad entre UNIX y otros sistemas.


🔷 10. Sistemas de permisos: Binario y Octal

BinarioOctalPermiso
0000
0011–x
0102-w-
0113-wx
1004r–
1015r-x
1106rw-
1117rwx

🔷 11. Comandos relacionados

📄 Algunos ejemplos útiles:

ps -aux              # Procesos
chmod, chown, umask # Permisos
uname -a # Información del sistema
  • En UNIX: preceden con -
  • En BSD: sin prefijo
  • En GNU/Linux: --

Deja un comentario