Tengo un par de archivos que no puedo eliminar con el rf -Rfcomando. Soy el propietario de esos archivos y el grupo asignado a esos archivos también es un grupo en el que está mi usuario. Lo que es aún más extraño es que puedo editar su contenido y puedo cambiar los permisos para ellos, pero no puedo moverme o borra los.
ls -al
total 12
dr-xr-xr-x 3 rayell pg1083760 4096 2010-10-10 10:00 .
drwxr-xr-x 3 rayell pg1083760 4096 2011-09-02 04:33 ..
-rwxrwxrwx 1 rayell pg1083760 0 2011-09-02 06:38 default.settings.php
drwxrwxrwx 2 rayell pg1083760 4096 2011-09-02 04:33 files
-rwxrwxrwx 1 rayell pg1083760 0 2011-09-02 06:38 settings.php
rm -Rf *
rm: cannot remove `default.settings.php': Permission denied
rm: cannot remove directory `files': Permission denied
rm: cannot remove `settings.php': Permission denied
¿Alguien puede decirme qué está pasando?
linux
filesystems
file-permissions
rm
RaYell
fuente
fuente

Respuestas:
Para eliminar un archivo, necesita permiso de escritura en el directorio que contiene este archivo.
Aquí los permisos son
dr-xr-xr-x 3 rayell pg1083760 4096 2010-10-10 10:00 .Para que nadie (exceptoroot) pueda eliminar archivos dentro de este directorio. El propietario debe usarchmodprimero.-
1. Hay muy buenas razones para eso. Al 'eliminar' un archivo con
rm, de hecho está intentando desvincularlo del directorio (las copias enlazadas no se eliminarán).fuente
Tuve el mismo problema, y
chmodsolo no funcionó. Primero tuve que cambiar el propietario (usuario y grupo) de los archivos que quería eliminar.Explicación:
sudo: asegúrese de tener los derechos adecuadoschown: Comando de Linux para cambiar el propietario de un archivo-hR: cambia el propietario del directorio y todos los subdirectorios. Lo encontré aquí .root: nombre del nuevo usuarioadmin: nombre del nuevo grupoYa había cambiado los modificadores a 777; No sé si eso fue necesario o no.
fuente
chownno había sido propietario del directorio ni miembro del grupo propietario del directorio.Otra posible pregunta es atributo
Este comando le mostrará el atributo del archivo y un archivo con el atributo 'i' no se puede modificar (y eliminar)
así que verifique el atributo de su archivo y elimine el atributo 'i' si se ha establecido el atributo
fuente
La razón es que el directorio padre tiene
chmod 705o algo así. Puedechmodel directorio principal con el siguiente comando:Después de esto, puede eliminar ese directorio y los archivos que contiene.
fuente