meta data de esta página
¡Esta es una revisión vieja del documento!
Permisos en Linux
Los permisos son del tipo x xxx xxx xxx . Que se corresponde con tipo archivo, permisos usuario, permisos grupo, resto
La primera posición indica el tipo de archivo que puede ser:
- - → archivo normal
- b → tipo bloque
- c → tipo caracter
- d → directorio
- l → enlace
- p → conexión
- s → conector
Los permisos para el resto de grupos son:
- r → lectura
- w → escritura
- x → ejecución
- t → mantienen el ejecutable en memoria
- s → suid/ssid
- i →bloque de archivos
Para establecer los permisos en linux usuamos los siguientes comandos
- chmod
- chown usuario.grupo nombre_archivo
- getfacl
- setfacl
Chmod
El comando chmod (change mode) sirve para gestionar los permisos de los archivos o directorios del sistema. Los permisos que podemos dar on R lectura, W escritura y X ejecución Los permisos los podemos asignar al owner (propietario), group (grupo) y others (Otros) Las sintaxis de chmod es
chmod [opciones] permisos archivo/directorio/s
Los permisos se pueden indicar de dos maneras, por medio de una sintaxis en números octales (base 8) o por medio de caracteres.
- El primer dígito corresponde a los permisos del usuario
- El segundo dígito a los del grupo
- El tercer dígito a los del resto de usuarios
Chown
El comando chown (change owner) en sistemas Linux y Unix permite cambiar el propietario y el grupo de archivos o directorios Para cambiar los permisos a un archivo
chown usuario:grupo archivo.txtPara cambiar recursivamente los permisos a un directorio
chown -R usuario:grupo /ruta/del/directorio
Ejemplos de permisos
Problema con claves SSH en VPS: La clave privada debe tener permisos 600:
chmod 600 ~/.ssh/id_rsa
Error «Permission denied» al ejecutar scripts: Asegura permisos de ejecución con:
chmod +x script.sh
Error «403 Forbidden» en Apache/Nginx: Asegúrate de que los archivos tengan permiso 644 y los directorios 755. Verifica que el usuario del servidor web (www-data, apache, nginx) tengan acceso.
sudo chown -R www-data:www-data /var/www/html