File permissions: why can't I list a directory?

27,115

To be able to "enter" a directory, which is kind of a prerequisite for listing its content, you also need the +x permission.

Also note that this is a requirement all the way from the top (root) of the directory structure. To be able to enter a /foo/bar/baz directory a user needs to have the +x permission on every single intermediate directory.

Share:
27,115
RusAlex
Author by

RusAlex

Updated on September 18, 2022

Comments

  • RusAlex
    RusAlex over 1 year

    I am able to list directories in a root shell,

    root@ThinkPad:~# ll /media/
    total 36
    drwxr--r--  6 root root  4096 2011-05-12 16:41 ./
    drwxr-xr-x 22 root root  4096 2011-05-12 13:14 ../
    drwxr-xr-x  5 root root  4096 2011-05-12 15:56 hd/
    drwxr--r--  2 root root 16384 2011-05-12 14:20 lost+found/
    drwxr-xr-x  5 root root  4096 2011-05-12 16:34 main/
    drwxr--r--  4 root root  4096 2011-05-12 16:41 .Trash-0/
    

    but not from my user account:

    alex@ThinkPad:~$ ll /media/
    ls: cannot access /media/..: Permission denied
    ls: cannot access /media/hd: Permission denied
    ls: cannot access /media/lost+found: Permission denied
    ls: cannot access /media/.Trash-0: Permission denied
    ls: cannot access /media/.: Permission denied
    ls: cannot access /media/main: Permission denied
    total 0
    d????????? ? ? ? ?                ? ./
    d????????? ? ? ? ?                ? ../
    d????????? ? ? ? ?                ? hd/
    d????????? ? ? ? ?                ? lost+found/
    d????????? ? ? ? ?                ? main/
    d????????? ? ? ? ?                ? .Trash-0/
    

    I don't understand why I can't see files (/media has a+r permission).