Ejercicio de programación con Bash: Manipulación de permisos de archivos y directorios

Código
Práctica
0h 25m

Aprende a gestionar permisos y propiedad de archivos y directorios en un proyecto utilizando chmod, chown y chgrp en Bash. Resolución paso a paso.

Tienes una estructura de directorios y archivos para un proyecto de desarrollo de software. Es necesario configurar adecuadamente los permisos y la propiedad de cada elemento para garantizar la seguridad y el correcto acceso por parte de los usuarios y grupos involucrados.

La estructura inicial es la siguiente:

proyecto/
├── bin/
│   └── script.sh
├── src/
│   ├── main.py
│   └── util.py
├── logs/
│   └── app.log
└── README.md

Permisos de archivos y directorios:

  • El directorio proyecto debe tener permisos que permitan al propietario leer, escribir y ejecutar; al grupo leer y ejecutar; y a otros solo leer.
  • El directorio bin debe permitir al propietario y al grupo leer, escribir y ejecutar; y a otros solo ejecutar.
  • Los archivos dentro de bin deben ser ejecutables únicamente por el propietario y el grupo.
  • El directorio src debe permitir al propietario leer, escribir y ejecutar; al grupo leer y ejecutar; y a otros sin permisos.
  • Los archivos dentro de src deben ser legibles y editables por el propietario y el grupo, pero sin permisos para otros usuarios.
  • El directorio logs debe permitir al propietario leer, escribir y ejecutar; al grupo leer y ejecutar; y a otros sin permisos.
  • El archivo app.log dentro de logs debe ser escribible únicamente por el propietario.
  • El archivo README.md debe ser legible por todos los usuarios, pero solo escribible por el propietario.

Propiedad de archivos y directorios:

  • Todos los archivos y directorios deben tener como propietario al usuario desarrollador y como grupo al grupo devs.

Escribe un script de Bash que realice las siguientes acciones:

  1. Cambie el propietario y el grupo de todos los archivos y directorios dentro de proyecto a desarrollador y devs respectivamente.
  2. Aplique los permisos descritos anteriormente a cada directorio y archivo.

Consideraciones:

  • Utiliza los comandos chmod, chown y chgrp de manera adecuada para cumplir con los requisitos.
  • Asegúrate de aplicar los permisos de forma recursiva donde sea necesario.
  • El script debe ser ejecutable y contener los comandos necesarios para realizar todos los cambios en una única ejecución.
Empezar ejercicio de programación

Todos los ejercicios de programación de Bash

Evalúa tus conocimientos con ejercicios de programación en Bash de tipo Test, Puzzle, Código y Proyecto con VSCode.

Certificados de superación de Bash

Supera todos los retos de Bash y obtén estos certificados de superación para mejorar tu currículum y tu empleabilidad.

Tutorial para resolver este ejercicio de programación

GNU Bash

Bash

Manipulación de permisos de archivos y directorios

Navegación y gestión de archivos y directorios

Otros tutoriales de programación con Bash

Principales Distribuciones De Linux

GNU Bash

Introducción Y Entorno

Instalar Ubuntu En Windows Con Wsl

GNU Bash

Introducción Y Entorno

Introducción A Shell Y Bash

GNU Bash

Introducción Y Entorno

Comandos De Navegación Pwd, Cd Y Ls

GNU Bash

Navegación Y Gestión De Archivos Y Directorios

Manipulación De Archivos Y Directorios

GNU Bash

Navegación Y Gestión De Archivos Y Directorios

Comprimir Y Descomprimir Archivos En Bash

GNU Bash

Navegación Y Gestión De Archivos Y Directorios

Enlaces Simbólicos Y Duros

GNU Bash

Navegación Y Gestión De Archivos Y Directorios

Redirección Y Tuberías

GNU Bash

Navegación Y Gestión De Archivos Y Directorios

Gestión De Procesos Con Ps, Htop Y Pgrep

GNU Bash

Gestión De Procesos Y Servicios

Gestión De Servicios Con Systemd

GNU Bash

Gestión De Procesos Y Servicios

Configuración De Bash

GNU Bash

Interacción Con El Sistema

Redes Y Comunicación

GNU Bash

Interacción Con El Sistema

Transferencia De Archivos Y Comunicación Remota Con Ssh

GNU Bash

Interacción Con El Sistema

Gestión De Paquetes Y Actualización Del Sistema

GNU Bash

Interacción Con El Sistema

Variables Y Tipos De Datos

GNU Bash

Sintaxis Y Creación De Scripts En Bash

Operadores

GNU Bash

Sintaxis Y Creación De Scripts En Bash

Sintaxis De Control De Flujo

GNU Bash

Sintaxis Y Creación De Scripts En Bash

Expresiones Regulares Y Manipulación De Texto

GNU Bash

Sintaxis Y Creación De Scripts En Bash

Definición Y Uso De Funciones

GNU Bash

Sintaxis Y Creación De Scripts En Bash