AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 789048
Accepted
Enlico
Enlico
Asked: 2025-01-04 03:53:05 +0800 CST2025-01-04 03:53:05 +0800 CST 2025-01-04 03:53:05 +0800 CST

将 8GB 文件复制到 30GB Apple 设备(无标签的 USB 棒)时出现“文件太大”

  • 772

我的磁盘上有这个文件:

$ ls -lh /path/to/some.mkv
-rwxr-xr-x 1 enrico enrico 7.4G Dec 17 18:54 /path/to/some.mkv

所以它小于 8 GB,但是当我尝试将它复制到 30GiB 闪存驱动器上时,出现此错误:

cp: error writing '/path/to/some.mkv': File too large

这是驱动器:

$ sudo fdisk -l | tail -n 16

Disk /dev/sdc: 29.3 GiB, 31457280000 bytes, 61440000 sectors
Disk model: USB DISK        
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x6f20736b

Device     Boot      Start        End    Sectors   Size Id Type
/dev/sdc1        778135908 1919645538 1141509631 544.3G 72 unknown
/dev/sdc2        168689522 2104717761 1936028240 923.2G 65 Novell Netware 386
/dev/sdc3       1869881465 3805909656 1936028192 923.2G 79 unknown
/dev/sdc4       2885681152 2885736650      55499  27.1M  d unknown

Partition table entries are not in disk order.
$ sudo mount /dev/sdc /mnt/foo
$ cd /mnt/foo
$ df . -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdc         30G   16K   30G   1% /mnt/foo
filesystems
  • 2 2 个回答
  • 89 Views

2 个回答

  • Voted
  1. Best Answer
    Andy Dalton
    2025-01-04T04:10:11+08:002025-01-04T04:10:11+08:00

    我的回答将假设无论您安装了什么,文件系统类型都是fat32。在这种情况下,最大文件大小为 4G(即,没有单个文件可以大于 4G)。

    https://en.wikipedia.org/wiki/File_Allocation_Table(参见 Fat32)

    如果您确实已经/dev/sdc2安装,并且根据您的fdisk输出,这是一个 NetWare 文件系统,那么它的最大文件大小也是 4G。

    https://en.wikipedia.org/wiki/NetWare_File_System

    • 4
  2. Vlastimil Burián
    2025-01-06T04:35:03+08:002025-01-06T04:35:03+08:00

    这既是对已接受答案的补充,也是原作者未透露的可能重要事实的潜在来源。通常情况下,这种情况不应该发生。除了隐藏一些敏感信息(例如序列号)之外,您不得出于任何其他原因故意编辑/隐藏/手动编辑任何命令输出(例如您的) 。fdisk


    今天,我需要恢复一些我最古老的音频收藏,不,我没有备份我的 MP3。所以,我记得我有一些旧的 Apple iPod(4GB)。我把它插入 USB,瞧,我看到了一些非常相似且特别奇怪的分区,就像 OP 发布的一样:

    # fdisk -l /dev/sdb
    
    Disk /dev/sdb: 3,78 GiB, 4055885824 bytes, 1980413 sectors
    Disk model: iPod
    Units: sectors of 1 * 2048 = 2048 bytes
    Sector size (logical/physical): 2048 bytes / 2048 bytes
    I/O size (minimum/optimal): 2048 bytes / 2048 bytes
    Disklabel type: dos
    Disk identifier: 0x6f20736b
    
    Device     Boot      Start        End    Sectors   Size Id Type
    /dev/sdb1        778135908 1919645538 1141509631   2,1T 72 unknown
    /dev/sdb2        168689522 2104717761 1936028240   3,6T 65 Novell Netware 386
    /dev/sdb3       1869881465 3805909656 1936028192   3,6T 79 unknown
    /dev/sdb4       2885681152 2885736650      55499 108,4M  d unknown
    
    Partition table entries are not in disk order.
    

    您看出了相似之处吗?!


    现在,它是如何安装的:

    # mount -v | grep -i sdb
    
    /dev/sdb on /media/vlastimil/18ED-9712 type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)
    

    有趣的是,如您所见,主文件系统驻留在设备本身上,而不是我们可以通过 看到的那些分区中fdisk。我们可以争辩说,这样的设计是错误的,但我想苹果不会改变,所以没有什么好处。

    举个例子,它可能会把事情搞得一团糟,fdisk我的意思是你真的必须阅读警告:

    # fdisk /dev/sdb
    
    Welcome to fdisk (util-linux 2.39.3).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.
    
    The device contains 'vfat' signature and it will be removed by a write command. See fdisk(8) man page and --wipe option for more details.
    
    Command (m for help): p
    
    Disk /dev/sdb: 3,78 GiB, 4055885824 bytes, 1980413 sectors
    Disk model: iPod            
    Units: sectors of 1 * 2048 = 2048 bytes
    Sector size (logical/physical): 2048 bytes / 2048 bytes
    I/O size (minimum/optimal): 2048 bytes / 2048 bytes
    Disklabel type: dos
    Disk identifier: 0x6f20736b
    
    Device     Boot      Start        End    Sectors   Size Id Type
    /dev/sdb1        778135908 1919645538 1141509631   2,1T 72 unknown
    /dev/sdb2        168689522 2104717761 1936028240   3,6T 65 Novell Netware 386
    /dev/sdb3       1869881465 3805909656 1936028192   3,6T 79 unknown
    /dev/sdb4       2885681152 2885736650      55499 108,4M  d unknown
    
    Partition table entries are not in disk order.
    
    Command (m for help): q
    

    我要强调一下:

    The device contains 'vfat' signature and it will be removed by a write command. See fdisk(8) man page and --wipe option for more details.
    

    一定不要撞到w那里!:)


    卸载后,运行fsck并不危险:

    # fsck -fvy /dev/sdb
    
    fsck from util-linux 2.39.3
    fsck.fat 4.2 (2021-01-31)
    Checking we can access the last sector of the filesystem
    There are differences between boot sector and its backup.
    This is mostly harmless. Differences: (offset:original/backup)
      65:01/00
      Not automatically fixing this.
    Boot sector contents:
    System ID "MSDOS5.0"
    Media byte 0xf8 (hard disk)
          2048 bytes per logical sector
          4096 bytes per cluster
           236 reserved sectors
    First FAT starts at byte 483328 (sector 236)
             2 FATs, 32 bit entries
       3952640 bytes per FAT (= 1930 sectors)
    Root directory start at cluster 2 (arbitrary size)
    Data area starts at byte 8388608 (sector 4096)
        988158 data clusters (4047495168 bytes)
    63 sectors/track, 255 heads
             0 hidden sectors
       1980413 sectors total
    Volume label 'UªIVATEL -' stored in root directory is not valid.
      Auto-removing label.
    Reclaiming unconnected clusters.
    Dirty bit is set. Fs was not properly unmounted and some data may be corrupt.
     Automatically removing dirty bit.
    Checking free cluster summary.
    
    *** Filesystem was changed ***
    Writing changes.
    /dev/sdb: 122 files, 44508/988158 clusters
    

    我还继续检查系统日志,并附加以下内容以确保完整性:

    [Sun Jan  5 20:19:47 2025] usb 1-2: new high-speed USB device number 10 using xhci_hcd
    [Sun Jan  5 20:19:47 2025] usb 1-2: New USB device found, idVendor=05ac, idProduct=1302, bcdDevice= 0.01
    [Sun Jan  5 20:19:47 2025] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [Sun Jan  5 20:19:47 2025] usb 1-2: Product: iPod
    [Sun Jan  5 20:19:47 2025] usb 1-2: Manufacturer: Apple Inc.
    [Sun Jan  5 20:19:47 2025] usb 1-2: SerialNumber: <- SN removed ->
    [Sun Jan  5 20:19:47 2025] usb-storage 1-2:1.0: USB Mass Storage device detected
    [Sun Jan  5 20:19:47 2025] scsi host2: usb-storage 1-2:1.0
    [Sun Jan  5 20:19:47 2025] usbcore: registered new interface driver usb-storage
    [Sun Jan  5 20:19:47 2025] usbcore: registered new interface driver uas
    [Sun Jan  5 20:19:47 2025] usbcore: registered new device driver apple-mfi-fastcharge
    [Sun Jan  5 20:19:48 2025] scsi 2:0:0:0: Direct-Access     Apple    iPod             2.70 PQ: 0 ANSI: 2
    [Sun Jan  5 20:19:48 2025] sd 2:0:0:0: Attached scsi generic sg1 type 0
    [Sun Jan  5 20:19:48 2025] sd 2:0:0:0: [sdb] 1980413 2048-byte logical blocks: (4.06 GB/3.78 GiB)
    [Sun Jan  5 20:19:48 2025] sd 2:0:0:0: [sdb] Write Protect is off
    [Sun Jan  5 20:19:48 2025] sd 2:0:0:0: [sdb] Mode Sense: 6e 00 00 08
    [Sun Jan  5 20:19:48 2025] sd 2:0:0:0: [sdb] Incomplete mode parameter data
    [Sun Jan  5 20:19:48 2025] sd 2:0:0:0: [sdb] Assuming drive cache: write through
    [Sun Jan  5 20:19:48 2025]  sdb:
    [Sun Jan  5 20:19:48 2025] sd 2:0:0:0: [sdb] Attached SCSI removable disk
    [Sun Jan  5 20:19:48 2025] FAT-fs (sdb): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    

    根据以下文件,我的 iPod 仅支持 FAT32:

    /media/vlastimil/18ED-9712/iPod_Control/Device/SysInfoExtended
    

    其中摘录说明了文件系统:

    <key>VolumeFormat</key><string>FAT32</string>
    

    维基百科上的 FAT32指出,正如已经说过的,我引用:

    FAT32 卷上文件的最大可能大小为 4 GB 减 1 字节,或者更确切地说是 2 32 − 1 字节。

    • 0

相关问题

  • 我应该在 NAS 的 SD 卡中使用哪个文件系统?

  • 如何提前知道 .zip 内部是否有父目录

  • Virtualbox 动态分配磁盘 *.vdi 不断增长

  • du/df 和 ls 报告不同的磁盘使用情况

  • Linux 内核开发人员如何处理数百万行代码的工作?他们是一种方法吗?[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve