나는 cd
많은 수의 파일, 정확히 40,948개의 파일이 포함된 디렉토리에 들어갔습니다. 명령을 실행하면 ls
시간이 오래 걸리고 명령이 최종적으로 결과를 화면에 인쇄하기 전에 일부 파일에 대해 "ls: 액세스할 수 없음: 해당 파일 또는 디렉터리가 없습니다"라는 메시지가 나타납니다.
파일 이름이 매번 동일하지는 않습니다. posix 권한 없이 일부 파일을 실행하면 ls -l
파일 이름 앞에 "????????"만 나타납니다.
그룹을 변경하고 싶었기 때문에 디렉터리를 시도했는데 chown -R
"chown: 액세스할 수 없음" 또는 "chown: 소유권 변경" + ": 해당 파일이나 디렉터리 없음"이 혼합되어 있어 ls
.
이것은 Linux에 디렉토리가 있는지조차 모르고 디렉토리가 손상되었을 수 있다고 생각했다는 점을 강조했습니다. 그러나 결과가 항상 다르다는 사실은 그렇지 않다는 것을 암시합니다.
/etc/security/limits.conf의 "nofile" 문제일 수 있습니까?
답변1
다른 프로세스에서 많이 사용되는 것 같습니다.
당신이 보는 정보를 수집하는 것이 반드시 원자적인 것은 아닙니다. 파일 이름 목록을 얻은 다음 파일에 대한 정보(긴 목록 또는 출력 색상 지정)를 찾을 수 있습니다. 이 두 작업 사이에 파일을 삭제하면 설명한 것과 유사한 출력이 표시됩니다.
답변2
이러한 긴 중단은 출력을 가져오기 전에 디렉터리에 있는 40,000개 이상의 파일을 정렬하기 때문에 발생합니다 ls
. ls -lU | more
이상한 파일 이름에 더 가까이 다가가기 위해 (정렬되지 않은) 시도를 해보세요 . 또 다른 옵션은 입니다 --show-control-chars
.