【问题标题】:git pull: Unable to create ORIG_HEAD.lock No space left on devicegit pull:无法创建 ORIG_HEAD.lock 设备上没有剩余空间
【发布时间】:2014-09-13 18:04:28
【问题描述】:

我在尝试执行“git pull”时遇到问题,收到以下错误消息:

无法创建“/path/.git/ORIG_HEAD.lock”:设备上没有剩余空间

让我感到困惑的是,我的设备上肯定还有相当多的空间:

Filesystem Size Used Avail Use% Mounted on

/dev/xvda1 7.8G 2.6G 5.2G 33% /

devtmpfs 7.4G 16K 7.4G 1% /dev

tmpfs 7.4G 0 7.4G 0% /dev/shm

/dev/xvdf 250G 8.5G 242G 4% /路径

我还目睹了在据说已满的同一设备上写入日志。

唯一想到的是这个磁盘最近在 AWS 上从 8GB 升级到了 250GB,看起来 git 认为它仍然是 8GB 驱动器?

fdisk -l 的输出:

磁盘 /dev/xvda1:8589 MB,8589934592 字节,16777216 个扇区 单位 = 1 * 512 = 512 字节的扇区 扇区大小(逻辑/物理):512 字节/512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘 /dev/xvdf:268.4 GB,268435456000 字节,524288000 个扇区 单位 = 1 * 512 = 512 字节的扇区 扇区大小(逻辑/物理):512 字节/512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节

df -i 也显示该卷上仅使用了 1%?

这有意义吗?感谢您提供的任何提示和 cmets。

【问题讨论】:

  • 看起来这个问题又回到了另一个网络服务器上。进一步研究它,但会重视任何其他输入。

标签: git amazon-ec2 diskspace


【解决方案1】:

Linux 文件系统必须限制资源:写入数据的块和写入元数据的 inode。如果设备上没有剩余空间,则两者之一已完全使用,如果您仍然可以写入现有文件,则更有可能您的 inode 已用完。

在 stackoverflow 世界中有一些关于这个普遍问题的问题,其中一些在这里:

https://unix.stackexchange.com/questions/26598/how-can-i-increase-the-number-of-inodes-in-an-ext4-filesystem

https://serverfault.com/questions/396768/ext4-file-system-max-inode-limit-can-anyone-please-explain

https://superuser.com/questions/585641/changing-max-inode-count-number-in-ext3-filesystem-in-cent-os

【讨论】:

  • 我不相信我已经用完了 inode。奇怪的是,堆栈中的其他两个 Web 服务器在相同的条件下运行良好。我只是重建了“搞砸”的那个,一切都恢复了正常。这可能是磁盘的物理问题吗?还是分区出错?
【解决方案2】:

对于遇到相同问题的任何人,我解决的方法是卸载驱动器,在其上运行 xfs_repair,重新安装它,然后重新启动 EC2 实例。

不是很优雅,但它让我头疼。

希望对其他人有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-29
    • 1970-01-01
    • 1970-01-01
    • 2019-03-08
    • 2018-05-12
    • 1970-01-01
    • 2012-01-14
    • 2012-05-15
    相关资源
    最近更新 更多