저는 8G USB 스틱(저는 Linux Mint를 사용하고 있습니다)을 가지고 있고 거기에 5.4G 파일을 복사하려고 하는데
No space left on device
실패 전 복사된 파일의 파일 크기는 항상 3.6G입니다.
설치된 조이스틱의 출력 표시..
df -T
/dev/sdc1 ext2 7708584 622604 6694404 9% /media/moo/ba20d7ab-2c46-4f7a-9fb8-baa0ee71e9fe
df -h
/dev/sdc1 7.4G 608M 6.4G 9% /media/moo/ba20d7ab-2c46-4f7a-9fb8-baa0ee71e9fe
du -h --max-depth=1
88K ./.ssh
ls -h myfile
-rw-r--r-- 1 moo moo 5.4G May 26 09:35 myfile
그래서 5.4G 파일은 8G USB 플래시 드라이브에 넣을 수 없는 것 같습니다. ext2는 문제가 없을줄 알았는데, fat32 파일크기와 USB 메모리스틱에 문제가 있었던 걸까요? 형식을 변경하면 차이가 있나요?
편집: 다음은 tunefs의 드라이브 보고서입니다.
sudo tune2fs -l /dev/sdd1
Filesystem volume name:
Last mounted on: /media/moo/ba20d7ab-2c46-4f7a-9fb8-baa0ee71e9fe
Filesystem UUID: ba20d7ab-2c46-4f7a-9fb8-baa0ee71e9fe
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: ext_attr resize_inode dir_index filetype sparse_super large_file
Filesystem flags: signed_directory_hash
Default mount options: (none)
Filesystem state: not clean with errors
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 489600
Block count: 1957884
Reserved block count: 97894
Free blocks: 970072
Free inodes: 489576
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 477
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8160
Inode blocks per group: 510
Filesystem created: Mon Mar 2 13:00:18 2009
Last mount time: Tue May 26 12:12:59 2015
Last write time: Tue May 26 12:12:59 2015
Mount count: 102
Maximum mount count: 26
Last checked: Mon Mar 2 13:00:18 2009
Check interval: 15552000 (6 months)
Next check after: Sat Aug 29 14:00:18 2009
Lifetime writes: 12 GB
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Required extra isize: 28
Desired extra isize: 28
Default directory hash: half_md4
Directory Hash Seed: 249823e2-d3c4-4f17-947c-3500523479fd
FS Error count: 62
First error time: Tue May 26 09:48:15 2015
First error function: ext4_mb_generate_buddy
First error line #: 757
First error inode #: 0
First error block #: 0
Last error time: Tue May 26 10:35:25 2015
Last error function: ext4_mb_generate_buddy
Last error line #: 757
Last error inode #: 0
Last error block #: 0
답변1
8GB 스틱은 약 7.5GiB이며 일부 파일 시스템 오버헤드가 있어도 5.4GiB 파일을 저장할 수 있습니다.
tune2fs
다음을 사용하여 파일 시스템 상태 및 속성을 확인할 수 있습니다 .
tune2fs -l /dev/<device>
기본적으로 공간의 5%는 루트 사용자를 위해 예약되어 있습니다. 출력에는 97894개의 블록이 나열되어 있으며 이는 약 385MiB에 해당하며 기본값인 것 같습니다. tune2fs
예약된 공간이 많이 필요하지 않은 경우 이 값을 조정해야 할 수도 있습니다. 하지만 385MiB에서도 파일은 파일 시스템에 맞아야 합니다.
출력 tune2fs
에는 오류가 있는 깨끗하지 않은 파일 시스템이 표시됩니다. 따라서 fsck
파일 시스템에서 실행하시기 바랍니다. 이렇게 하면 오류가 수정되고 일부 파일이 lost+found
디렉터리에 저장될 수 있습니다. 데이터를 복구할 계획이 없다면 삭제할 수 있습니다.
이렇게 하면 파일 시스템이 복구되고 파일 복사가 성공합니다.
답변2
좋아요, 저는 Linux 사용자가 아닌 Windows 사용자라는 것을 알고 있습니다. 하지만 얼마 전 오래된 랩톱 간 전송을 위해 16Gig 데이터 스틱에 파일을 복사하려고 할 때 비슷한 문제가 발생했습니다. 대부분의 이동식 장치 파일 시스템 형식(ext2, fat32 등)은 파일 크기가 3.2Gigs보다 큰 경우 파일 복사를 지원하지 않는 것으로 나타났습니다. 일부 기본 공간은 일반적으로 루트 및 시스템 파일 등을 위해 예약되어 있기 때문입니다. 일반적으로 드라이브가 가득 찼다는 오류 메시지가 표시됩니다(완전히 비어 있고 방금 포맷했음에도 불구하고).
몇 가지 연구 끝에 NTFS 파일 시스템은 3.2보다 큰 파일을 문제 없이 복사할 수 있는 유일한 파일 시스템이기 때문에 시스템에서 메모리 스틱으로 대용량 파일을 전송하는 데 가장 적합하다는 사실을 발견했습니다.
이것이 어떤 식으로든 도움이 될지는 확실하지 않지만 항상 가능한 해결책입니다.