장치에 남은 공간 없음/사용 가능한 inode 또는 사용된 inode 없음/이중 설치

장치에 남은 공간 없음/사용 가능한 inode 또는 사용된 inode 없음/이중 설치

cp이제 약 하루 동안 // (터미널 또는 다양한 GUI 프로그램을 통해) FAT16 형식의 USB 스틱에 mv약 몇 바이트의 파일 만 생성할 수 있습니다. 더 큰 파일 보고서에 대해 다음을 수행하십시오.cannot create regular file 'XXX': No space left on device

NTFS 드라이브와 2개의 FAT16 형식 파티션이 있는 USB 스틱이 컴퓨터에 연결되어 있습니다.

  • /dev/sda1은 NTFS입니다.
  • /dev/sdb1은 FAT 16 형식의 파티션 중 하나입니다.
  • pm-suspend/dev/sdc1은 또 다른 FAT 16 형식의 파티션입니다( 전체 드라이브의 공간을 확보하기 위해 PC를 종료하는 동안 USB 스틱을 제거하기 전과 후 - 돌이켜보면 이 문제의 일부/전부가 원인일 수 있음)
  • /dev/sdb1은 또 다른 FAT 16 형식의 파티션입니다(PC가 종료되는 동안 USB 스틱을 제거한 후 pm-suspend).

df보고서:

    Filesystem  1K-blocks   Used   Available  Use%  Mounted on
    /dev/sdc1    1999360  1999360      0      100%  /media/sdc1
    /dev/sdd1    1999360   822400   1176960   42%   /media/sdd1

df -i보고서:

    Filesystem  Inodes  IUsed  IFree  IUse%  Mounted on
    /dev/sdc1      0      0      0      -    /media/sdc1
    /dev/sdd1      0      0      0      -    /media/sdd1

하위 질문: inode가 보고되지 않는 이유가 무엇인지 아시나요?

df -i /dev/sda1보고서:

    Filesystem  Inodes   IUsed   IFree    IUse%  Mounted on
    /dev/sda1   5539908  171718  5368190    4%   /media/sda1

umount'ng /dev/sdc1은 카운트를 변경하지 않았습니다.

Windows에서 여유 공간이 최근 설치된 장치(/dev/sdd1)에 대해 나열된 42%와 거의 일치하는지 확인했습니다.

무슨 일이 일어나고 있는지에 대한 생각이 있나요?

편집 1:

출력은 du -k --max-depth=1 /media/sdc1다음과 같습니다

   1856 /media/sdc1/dir1
     32 /media/sdc1/dir2
   1440 /media/sdc1/dir3
  18144 /media/sdc1/dir4
   8512 /media/sdc1/dir5
  54304 /media/sdc1/dir6
   3200 /media/sdc1/dir7
  27200 /media/sdc1/dir8
  41088 /media/sdc1/dir9
  11520 /media/sdc1/dir10
    128 /media/sdc1/dir11
    128 /media/sdc1/dir12
   1216 /media/sdc1/dir13
   2464 /media/sdc1/dir14
  12032 /media/sdc1/dir15
   5824 /media/sdc1/dir16
  29600 /media/sdc1/dir17
  20928 /media/sdc1/dir18
   5856 /media/sdc1/dir19
   4352 /media/sdc1/dir20
 659200 /media/sdc1/dir21
 121600 /media/sdc1/dir22
  22688 /media/sdc1/dir23
    128 /media/sdc1/dir24
   2144 /media/sdc1/dir25
   6912 /media/sdc1/dir26
  19968 /media/sdc1/dir27
   9632 /media/sdc1/dir28
    960 /media/sdc1/dir29
   1088 /media/sdc1/dir30
   2624 /media/sdc1/dir31
    480 /media/sdc1/dir32
1142944 /media/sdc1

답변1

FAT16은 루트 디렉터리에 매우 제한된 수의 파일을 저장할 수 있습니다. 내 생각엔 당신이 그걸 치고 있는 것 같아요. 디렉터리를 만들고 그 안에 파일을 넣습니다.

답변2

대부분의 비 Unix 파일 시스템(예: vfat)에는 inode가 없습니다. 화면이 표시되지 않는 것은 정상입니다. 나머지 질문에 대해서는 추가 정보가 필요합니다.

편집 1:

du이제 출력 에서 ​​1999360-1142944=856416 블록이 누락되었음을 알 수 있습니다. Linux 파일 시스템의 경우 열린 파일이 삭제되면 이러한 차이가 발생할 수 있습니다. 더 이상 파일 시스템에서 볼 수 없으므로 du계산할 수 없습니다. ...이것을 덜 이론적으로 만들기 위해 방금 시도해 보았습니다. vfat에서도 마찬가지입니다. 다음 명령을 사용하여(루트로) 삭제된 열린 파일을 찾을 수 있습니다.

find /proc/*/fd -lname '/media/sdc1/* (deleted)'

또 다른 가능성은 파일 시스템 오류입니다. 따라서 삭제된 열린 파일을 문제로 식별할 수 없다면 마운트를 해제하고 파일 시스템을 확인해 보면 좋을 것입니다.

관련 정보