bug#18937: chmod ???? bug?
Le 04/11/2014 18:47, Bob Proulx a écrit : Plato wrote: After using chmod chmod -R 644 /media/plato/mountedpartition/ (I see I forgot the * at the end) That is a problematic command regardless of the '*' at the end or not. If any of the arguments is a directory then it will set the directory permission to 644 as specified. But directories need the 'x' bit (execute permission) set as well. The above command will remove the execute bit from /media/plato/mountedpartition and then fail to search below it due to permission problems. It will then leave the directory in an unhappy state. ls -l listing has all entry's like these: First a list like this of every file and folder ls: cannot access /media/plato/mountedpartition/justafiile.txt: Permission denied That is correct when the execute permission is removed from a directory. When I do sudo ls Files I get a listing of the contents of files as expected. This is because file mode bits only apply to non-root access. Root is the superuser and always has permission regardless of the file mode bits. Root always has access regardless of permissions. Is this a bug? No. It is doing exactly what you told it to do. Try this: ls -ld /media/plato/mountedpartition The -d option will tell ls to show the argument itself instead of showing the contents of the directory. With that you will see something like this mode bits: drw-r--r-- but directories need to have the x bit there too like drwxrwxr-x typically. It was not my intention to get this. I do not know how to get it back to what it was. I tried it on a single file with chmod 644 justafile.txt but that did not solve it. Any ideas? After removing the execute bit from the directory you simply must add the execute bit back to the directory. It will probably be enough to do this using symbolic modes. chmod a+x /media/plato/mountedpartition In the old numeric form, combined with your previous 644, this would be similar to: chmod 755 /media/plato/mountedpartition Do not use the -R option with numeric arguments such as 644 because the numeric mode will be recursively applied across directories. That is almost never what you want. If using the -R option it is safer to use the symbolic modes such as go-w. Since this is all expected behavior I am going to go ahead and close this bug. However please continue the discussion here in the bug log. Any replies are still seen and discussed by the group. Bob chmod -R u=rwX,g=rwX[s],o=[---|rX|rwX] /media/plato/mountedpartition/ (no need the *, implied by -R)
bug#18937: chmod ???? bug?
chmod -R u=rwX,g=rwX[s],o=[---|rX|rwX] /media/plato/mountedpartition/ (no need the *, implied by -R)
bug#18937: chmod ???? bug?
Plato wrote: After using chmod chmod -R 644 /media/plato/mountedpartition/ (I see I forgot the * at the end) That is a problematic command regardless of the '*' at the end or not. If any of the arguments is a directory then it will set the directory permission to 644 as specified. But directories need the 'x' bit (execute permission) set as well. The above command will remove the execute bit from /media/plato/mountedpartition and then fail to search below it due to permission problems. It will then leave the directory in an unhappy state. ls -l listing has all entry's like these: First a list like this of every file and folder ls: cannot access /media/plato/mountedpartition/justafiile.txt: Permission denied That is correct when the execute permission is removed from a directory. When I do sudo ls Files I get a listing of the contents of files as expected. This is because file mode bits only apply to non-root access. Root is the superuser and always has permission regardless of the file mode bits. Root always has access regardless of permissions. Is this a bug? No. It is doing exactly what you told it to do. Try this: ls -ld /media/plato/mountedpartition The -d option will tell ls to show the argument itself instead of showing the contents of the directory. With that you will see something like this mode bits: drw-r--r-- but directories need to have the x bit there too like drwxrwxr-x typically. It was not my intention to get this. I do not know how to get it back to what it was. I tried it on a single file with chmod 644 justafile.txt but that did not solve it. Any ideas? After removing the execute bit from the directory you simply must add the execute bit back to the directory. It will probably be enough to do this using symbolic modes. chmod a+x /media/plato/mountedpartition In the old numeric form, combined with your previous 644, this would be similar to: chmod 755 /media/plato/mountedpartition Do not use the -R option with numeric arguments such as 644 because the numeric mode will be recursively applied across directories. That is almost never what you want. If using the -R option it is safer to use the symbolic modes such as go-w. Since this is all expected behavior I am going to go ahead and close this bug. However please continue the discussion here in the bug log. Any replies are still seen and discussed by the group. Bob
bug#18937: chmod ???? bug?
Hello, After using chmod chmod -R 644 /media/plato/mountedpartition/ (I see I forgot the * at the end) my ls -l listing has all entry's like these: First a list like this of every file and folder ls: cannot access /media/plato/mountedpartition/justafiile.txt: Permission denied Then one time total 0 Folowed by -? ? ? ? ?? justafile.txt d? ? ? ? ?? Files One example of a file and one of a directory If I do ls Files I get ls: cannot access /media/plato/mountedpartition/Files: Permission denied When I do sudo ls Files I get a listing of the contents of files as expected. Is this a bug? It was not my intention to get this. I do not know how to get it back to what it was. I tried it on a single file with chmod 644 justafile.txt but that did not solve it. Any ideas? Thanks for maintaining chmod -- With kind regards, Plato