Unable to delete file, even when running as root
I am in the process of migrating a machine from RHEL 4 to 5. Rather than actually do an upgrade we have created a new VM (both machines are in a cloud) and I am in the process of copying across data between the two.
I have come across the following file, which I need to remove from the new machine but am unable to, even when running as root:
-rw------- 1 2003 2003 219 jan 11 14:22 .bash_history
This file is inside /home/USER/, where USER is the account of the guy who built the machine. He doesn't have an account on the old machine, so I am trying to remove his home folder so that the new machine tallies with the old one, but I get the following error:
rm: ne peut enlever `.bash_history': Opération non permise
(translated from the French: cannot remove XXX, operation not permitted)
I have tried using the following command but this has made no difference:
chattr -i .bash_history
Is the only choice to create a user with the ID 2003, or is there another way around it?
I have tried using
rm -f, and I get the same error. I get the same kind of error using
I have been able to
chownthe folder that contains the file I am trying to delete, so it is:
drwx------ 2 root root 1024 jan 24 15:58 USER
lsattrcommand as suggested by Angus gave the following output:
-----a------- USER/.bash_history ------------- USER/.. ------------- USER/.
The file is flagged as append-only - on changing this flag using
chattr -a .bash_historyI was able to delete the file.
Check the permissions of the directory. To delete a file inside it, it should be writable by you
chmod ugo+w .
and not immutable or append-only:
chattr -i -a .
thanks.. I had to run this on named* files that didnt not clean up after yum erase bind in Centos 7 minimal
Unfortunately, for `/vendor/laracasts/generators/.git/objects/pack/`, when I run `chattr -i -a .`, I get `chattr: Inappropriate ioctl for device while reading flags on .`, and I can't `rm` the pesky `.idx` file that Composer left behind (because "Operation not permitted").
Ahhh, one workaround for me was to exit out of my Laravel Homestead Vagrant VirtualBox back into Windows 10 (still using Git Bash) and `rm` the files from there. Then `composer update` was able to complete.