방금 복사 파일을 사용해 보았지만 일부 파일에 오류가 cp -r /home/user/source/ /home/user/destination/
발생했습니다 . cp: cannot stat /source/filename.xxx
이 오류를 검색했을 때 다음과 같은 일치하는 문제를 발견했습니다.이것그리고이것명령에서 동일한 오류가 발생하더라도 cp
이유는 다릅니다. 그들의 해결책은 내 문제를 해결하지 못합니다.
자세히 조사한 결과 이름에 아시아 문자가 포함된 파일에서만 이 오류가 발생하는 것으로 나타났습니다. 예를 들어,
cp: cannot stat /home/user/source/고정폭.collection
누구든지 해결책이 있습니까? 내 컴퓨터의 기본 문자 인코딩이 이러한 파일 이름을 읽을 수 없기 때문일 수 있습니다.
편집 1: 내 출력locale
LANG=en_US.UTF-8
LANGUAGE=en_US
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
ls -l
편집 2: 소스 디렉터리에 출력
ls: cannot access 고정폭.collection: No such file or directory
ls: cannot access 기존.collection: No such file or directory
ls: cannot access 모던.collection: No such file or directory
ls: cannot access 웹.collection: No such file or directory
ls: cannot access 재미.collection: No such file or directory
total 4
-????????? ? ? ? ? ? 웹.collection
-????????? ? ? ? ? ? 기존.collection
-????????? ? ? ? ? ? 모던.collection
-????????? ? ? ? ? ? 재미.collection
-????????? ? ? ? ? ? 고정폭.collection
-rw------- 1 root root 856 Jul 24 2007 PDF.collection
편집 3: 파일 시스템에 대한 소스 디렉터리의 파일 시스템 정보 및 마운트 정보(출력 stat -f -c %T .
)
ext2/ext3
대상 디렉터리의 파일 시스템 정보(출력 stat -f -c %T .
)
UNKNOWN (0x482b)
선택된 출력mount
/dev/sda5 on / type ext4 (rw,errors=remount-ro)
/dev/sdg1 on /media/user/osx86 type hfsplus (rw,nosuid,nodev,uhelper=udisks2)
/home/user/Desktop/debusb/Install OS X Mavericks.app/Contents/SharedSupport/InstallMacOSX.pkg/3.hfs on /mnt/osx type hfsplus (rw)
/home/user/Desktop/debusb/Install OS X Mavericks.app/Contents/SharedSupport/InstallMacOSX.pkg/base/3.hfs on /mnt/base type hfsplus (rw)
답변1
-????????? ? ? ? ? ? 웹.collection
이 출력은 ls -l
디렉터리의 파일 이름을 읽을 수 있지만 해당 파일 이름에 액세스할 수 없음을 나타냅니다.인덱스 노드. inode에는 이름과 콘텐츠 자체를 제외하고 파일에 대한 모든 정보(유형, 권한, 타임스탬프 등 및 콘텐츠 위치)가 포함되어 있습니다.
"Unable to count" 오류 cp
와 "Unreachable" 오류는 ls
모두 동일한 내용을 보고합니다.stat
시스템 호출(주어진 파일 이름에 대한 메타데이터 반환)이 실패했습니다.
이는 디렉터리의 파일을 열거할 수 있는 권한이 있지만 해당 메타데이터를 읽을 수 없는 경우에 발생할 수 있습니다. 이는 읽기 권한은 있지만 디렉터리에 대한 실행 권한이 없는 경우입니다. 그러나 이 경우 디렉터리의 모든 파일에 이런 일이 발생하며 ls
"액세스할 수 없음" 대신 "권한이 거부되었습니다"라는 메시지가 표시됩니다. 이런 일이 일어날 수도 있습니다디렉터리가 너무 빨리 변경되어 ls
이름이 검색된 후 메타데이터가 읽히는 사이에 파일이 사라지는 경우하지만 그건 당신에게도 해당되지 않는 것 같아요.
남은 슬픈 설명은 파일 시스템이 손상되었다는 것입니다. 이러한 디렉터리 항목은 손실된 파일에 해당할 수도 있고 어떤 파일에도 해당하지 않는 가짜 항목일 수도 있습니다.
fsck
파일 시스템에서 실행 해 볼 수 있습니다 . 도움이 될 수도 있고 그렇지 않을 수도 있습니다.
파일 시스템 드라이버의 버그가 가능한 설명 중 하나이지만 스트레스가 없는 조건에서 사용되는 일반 Linux 설치의 ext4에서는 그럴 가능성이 거의 없습니다.
디스크 오류가 발생할 가능성이 더 높습니다. 달리기smartctl -a /dev/sda
디스크 자체 모니터링을 통해 문제가 감지되는지 확인하세요.
파일 시스템은 양호하지만 RAM 손상으로 인해 컴퓨터에서 제대로 읽을 수 없거나, 쓰는 동안 RAM 손상으로 인해 파일 시스템이 손상되었을 수도 있습니다. 혹시라도 메모리 테스트를 실행해 보세요. Ubuntu 부팅 메뉴에서 메모리 테스트 옵션을 선택하고 전체 테스트를 한 번 이상 실행하도록 하세요.