当前位置: 首页 > ai >正文

新制作文件系统占满:Error writing to file - write (28: No space left on device)

一、问题描述

新制作的文件系统刷机后,发现系统占满

Err:25 http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports xenial-backports/restricted SourcesError writing to output file - write (28: No space left on device) Error writing to file - write (28: No space left on device)
Ign:68 http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports xenial-backports/universe Sources
Ign:27 http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports xenial-backports/multiverse Sources
Ign:69 http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports xenial-backports/main arm64 Packages
Ign:29 http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports xenial-backports/main all Packages
Ign:70 http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports xenial-backports/main Translation-en
Ign:31 http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports xenial-backports/restricted arm64 Packages
Ign:32 http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports xenial-backports/restricted all Packages
Ign:33 http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports xenial-backports/restricted Translation-

查看设备信息:

root@xxxxx:/home/rk3308 # df -lh
Filesystem      Size  Used Avail Use% Mounted on
/dev/root       1.8G  1.7G     0 100% /
devtmpfs        245M     0  245M   0% /dev
tmpfs           245M     0  245M   0% /dev/shm
tmpfs           245M  9.9M  235M   5% /run
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           245M     0  245M   0% /sys/fs/cgroup
/dev/mmcblk1p5  4.9M   33K  4.6M   1% /usrdata
tmpfs            49M     0   49M   0% /run/user/1000
root@xxxxx:/home/rk3308 # lsblk 
NAME         MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
mmcblk1rpmb  179:96   0  512K  0 disk 
mmcblk1boot0 179:32   0    4M  1 disk 
mmcblk1boot1 179:64   0    4M  1 disk 
mmcblk1      179:0    0  7.3G  0 disk 
├─mmcblk1p1  179:1    0    2M  0 part 
├─mmcblk1p2  179:2    0    2M  0 part 
├─mmcblk1p3  179:3    0   14M  0 part 
├─mmcblk1p4  179:4    0    7G  0 part /
└─mmcblk1p5  179:5    0  262M  0 part /usrdata
root@xxxxx:/home/rk3308 # 

二、解决方法

执行命令 

sudo resize2fs /dev/xxxxxxx

此处我这里执行:

root@xxxxxx:/home/rk3308 # sudo resize2fs /dev/mmcblk1p4
resize2fs 1.42.13 (17-May-2015)
Filesystem at /dev/mmcblk1p4 is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/mmcblk1p4 is now 1835008 (4k) blocks long.root@xxxxxx:/home/rk3308 # df -lh
Filesystem      Size  Used Avail Use% Mounted on
/dev/root       6.9G  1.7G  4.9G  26% /
devtmpfs        245M     0  245M   0% /dev
tmpfs           245M     0  245M   0% /dev/shm
tmpfs           245M  9.9M  235M   5% /run
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           245M     0  245M   0% /sys/fs/cgroup
/dev/mmcblk1p5  4.9M   33K  4.6M   1% /usrdata
tmpfs            49M     0   49M   0% /run/user/1000
root@xxxxxx:/home/rk3308 #  

可见已正常恢复。

三、命令解析

命令作用:动态扩展 ext2/ext3/ext4 文件系统以占用其所在分区的全部可用空间​​,尤其适用于你遇到的根分区(/)满载但实际磁盘有未利用空间的情况。

以下是详细解析:

​命令核心作用​

  1. ​适配分区物理空间​

    • 当分区(如 /dev/mmcblk1p4)的物理容量已通过工具(如 fdisk 或 lvextend)扩大后,文件系统(如 ext4)并不会自动填充新增空间。
    • resize2fs 的作用是​​将文件系统的逻辑边界扩展到与分区物理边界对齐​​,使文件系统能使用所有新增空间。
  2. ​无需卸载的在线操作​

    • 若内核支持在线调整(Linux 2.6+ 默认支持 ext3/ext4),该命令可在挂载状态下直接执行,无需中断服务。
    • 这对根分区(/)等关键目录的扩容至关重要。

在我的上述案例中的具体效果​

根据我的磁盘布局:

mmcblk1p4 179:4 0 7G 0 part / # 原大小7G,已用100%

执行 sudo resize2fs /dev/mmcblk1p4 后:

  1. ​释放未用空间​
    文件系统将识别并占用分区中尚未使用的空间(例如,若你已通过 fdisk 扩大了该分区),解决 Avail=0 的问题。
  2. ​即时生效​
    扩容后,df -h 会显示根分区可用空间增加,无需重启。

​注意事项​

  1. ​前置条件​

    • 必须​​先扩大分区物理大小​​(例如用 fdisk 删除重建分区或 lvextend 扩展逻辑卷),否则 resize2fs 无法生效。
    • 若未调整分区,该命令仅会提示 The filesystem is already X blocks long. Nothing to do!
  2. ​文件系统类型限制​

    仅适用于 ​​ext2/ext3/ext4​​ 文件系统(XFS 需用 xfs_growfs)。
  3. ​强制操作风险​

    若需跳过安全检查(如文件系统损坏时),可加 -f 参数,但可能导致数据丢失
http://www.xdnf.cn/news/11934.html

相关文章:

  • 雷卯针对易百纳 海思Hi3519AV100开发板防雷防静电方案
  • 虚拟机无法开启-关掉虚拟化
  • ROS中的里程计与IMU的消息类型解读
  • 深入解析异步爬虫中的协程原理:从概念到工程实践
  • c++对imu的角速度积分得到表示旋转四元数
  • 半导体热电技术方案领跑者「富信」×企企通,构建采购数字化升级
  • 【操作系统】基础回顾(一)
  • 解决IDE编译JAVA项目时出现的OOM异常问题
  • LeetCode[513]找树左下角的值
  • C语言基础(11)【函数1】
  • FreeRTOS、Zephyr、RT-Thread,区别与联系
  • 第八部分:第一节 - 初识 React:构建交互式点餐界面骨架
  • 《射频识别(RFID)原理与应用》期末复习 RFID第一章 射频识别技术概论(知识点总结+习题巩固)
  • 2025年计算机科学与网络安全国际会议(CSNS 2025)
  • VSCode主题设计大赛解析与实践指南
  • win10打包的exe在win7运行不了
  • 【Linux】线程同步
  • 《AI角色扮演反诈技术解析:原理、架构与核心挑战》
  • UDP与TCP的区别是什么?
  • 第八部分:第三节 - 事件处理:响应顾客的操作
  • Nginx 文件目录结构总览
  • 10. MySQL索引
  • 泛型编程技巧——使用std::enable_if实现按类型进行条件编译​
  • 测试面试题总结一
  • 7.Demo Js执行同步任务,微任务,宏任务的顺序(3)
  • QGIS新手教程3:QGIS矢量图层导入与导出+Shape Tools插件绘图
  • C++查找算法全解析:从基础到高级应用
  • MQTT协议:物联网时代的通信基石
  • 手写 vue 源码 === runtime-dom 实现
  • Solidity 开发指南:构建你的第一个 DApp