私は私の奇妙な結果を与える私の.sshホームディレクトリでディレクトリリストをやっています:
ls -lsa .ssh/
total 0
? ?--------- ? ? ? ? ? . ·
? ?--------- ? ? ? ? ? .. ·
? ?--------- ? ? ? ? ? authorized_keys ·
奇妙なことに、これは1人のユーザーに対してのみ発生し、この特定のディレクトリでのみ発生します。 su -lの後にlsを実行すると、すべてが期待どおりに機能します。別の奇妙なことは、私のxtermがdirリストを赤い点滅フォントで表示することです!これを起こしている原因は何ですか?
どうも!
編集:
rootとしてのdirリストは次のとおりです。
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
私はext3を使用しています。
Edit2:
Thx for the答えですが、私はまだこれを取得します:
chmod -R 600 /home/sdd/.ssh
ls -lsan _ssh.old/
total 0
? ?--------- ? ? ? ? ? .
? ?--------- ? ? ? ? ? ..
? ?--------- ? ? ? ? ? authorized_keys
これは、ユーザーがファイルに対してstat()を実行できず(実行権限が必要)、ディレクトリエントリを読み取ることができる(ディレクトリに対する読み取りアクセスが必要)場合に発生します。したがって、ディレクトリ内のファイルのリストを取得できますが、ファイルを読み取ることができないため、ファイルに関する情報を取得できません。 :)読み取り権限はあるが実行されないディレクトリがある場合、これが表示されます。誰かがおそらく.sshディレクトリを誤って保護しようとしました-"chmod 0700 .ssh /"であり、homedirを所有するユーザーが所有している必要があります。おそらく、誰かが.ssh fileを保護するための指示に従っていたが、それを.sshディレクトリに適用した。 :)
任意のディレクトリでchmod 0600または0400を実行すると、この動作を簡単に再現できます。実行許可をディレクトリに追加すると、正常に動作します。