无法将大文件复制到 ext2 U 盘

Ian*_*Ian 10 linux disk-usage usb-drive disk

我有一个 8G 的 USB 记忆棒(我使用的是 linux Mint),我试图将一个 5.4G 的文件复制到其中,但是

No space left on device
Run Code Online (Sandbox Code Playgroud)

失败前复制文件的文件大小始终为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
Run Code Online (Sandbox Code Playgroud)

所以一个 5.4G 的文件,似乎不会放在 8G 的 U 盘上。我认为 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

Run Code Online (Sandbox Code Playgroud)

Mar*_*rco 9

您的 8GB 记忆棒大约有 7.5 GiB,即使有一些文件系统开销也应该能够存储 5.4GiB 文件。

您用于tune2fs检查文件系统状态和属性:

tune2fs -l /dev/<device>
Run Code Online (Sandbox Code Playgroud)

默认情况下,5% 的空间是为 root 用户保留的。您的输出列出了 97894 个块,相当于大约 385MiB,并且似乎是默认值。tune2fs如果您不需要那么多保留空间,您可能需要调整此值。尽管如此,即使有 385MiB 的文件也应该适合文件系统。

您的tune2fs输出显示了一个有错误的不干净的文件系统。所以请fsck在文件系统上运行。这将修复错误并可能在lost+found目录中放置一些文件。如果您不打算恢复数据,则可以删除它们。

这应该修复文件系统并且复制文件将成功。