Thursday, March 31, 2011

Only Questionmarks in Linux dirlisting

Hi,

i'm doing a dir listing in my .ssh home dir which gives me a strange result:

ls -lsa .ssh/
total 0
? ?--------- ? ? ? ?            ? . ·
? ?--------- ? ? ? ?            ? .. ·
? ?--------- ? ? ? ?            ? authorized_keys ·

The weird thing is, that this only happens for one user and only in this specific directory. If I do the ls after a su -l, everything works as expected. Another strange thing is, that my xterm shows the dir listing in a red blinking font! Any ideas what's causing this to happen?

thx!

Edit:
Here is the dir listing as root:

ls -lsa
total 52
4 drw-------  2 sdd sdd 4096 Feb 10 15:57 .
4 drwx------ 16 sdd sdd 4096 Feb 10 15:57 ..
4 -rw-------  1 sdd sdd 1628 Feb 10 15:57 authorized_keys

I'm using ext3.

Edit2:
Thx for the answers, but i still get this:

chmod -R 600 /home/sdd/.ssh
ls -lsan _ssh.old/
total 0
? ?--------- ? ? ? ?            ? .
? ?--------- ? ? ? ?            ? ..
? ?--------- ? ? ? ?            ? authorized_keys
From stackoverflow
  • Can you post the output of ls -lah once root .. and tell us what file system you are using?

  • Nothing to worry about imo, I think you just used chmod with non valid argument.

    Just re-chmod with good right your dir (recursively if needed) and everything will be ok!

  • is sdd a valid group/user on your system?

  • That happens when the user can't do a stat() on the files (which requires execute permissions), but can read the directory entries (which requires read access on the directory). So you get a list of files in the directory, but can't get any information on the files because they can't be read. :) If you have a directory which has read permission but not execute, you'll see this. Someone probably tried to protect the .ssh directory incorrectly - it should be "chmod 0700 .ssh/" and owned by the user which owns the homedir. More than likely, someone was following instructions for securing a .ssh file but applied it to a .ssh directory. :)

    If you do a chmod 0600 or 0400 on any directory, you can easily reproduce this behavior. Add execute permission to the dir, and it'll work fine.

    SDD : thx, that solved the problem :)

0 comments:

Post a Comment