报错:No space left on device——查看并清理linux物理、清理系统缓存

问题:上传文件到服务器时候报错:No space left on device

几个查看内存的命令

free

  • 直接使用 free (默认是显示单位kb)
free 
              total        used        free      shared  buff/cache   available
Mem:        8175424     1238924     3751180       11620     3185320     6857964
Swap:       8386556           0     8386556

  • 使用 free -m 或者 free -g (显示单位为 M 或者 G)
              total        used        free      shared  buff/cache   available
Mem:           7983        1209        3666          11        3108        6698
Swap:          8189           0        818
<think>好的,用户遇到了Linux x86_64设备上的“No space left on device”错误,需要解决方案。首先,我得分析可能的原因。这个错误通常和磁盘空间不足有关,但具体可能有很多情况,比如inode耗尽、文件系统限制,或者某个进程占用了已删除的文件。 首先应该检查磁盘使用情况。用df -h命令查看各分区的空间占用。如果某个分区满了,用户需要清理大文件或者扩容。比如/var/log可能有大量日志文件,可以用du命令找出大目录,然后删除或归档旧日志。 如果df显示空间足够,那可能是inode用尽了。这时用df -i查看inode使用率。如果inode满了,可能需要删除小文件,比如临时文件或缓存文件,尤其是大量小文件会消耗inode。 另外,检查是否有进程持有已删除的文件,导致空间未释放。用lsof +L1可以查看这类文件,然后重启相关进程释放空间。 还有可能是磁盘配额限制,用quota命令检查用户或组的配额是否超限。如果启用配额,需要调整配额或清理文件。 用户可能需要逐步排查这些可能性。比如先检查磁盘空间,再inode,然后检查进程占用的文件,最后考虑配额问题。每个步骤都需要相应的命令和操作,确保用户能一步步解决问题。 生成的问题要围绕这些排查步骤和相关命令,帮助用户深入理解可能的原因和解决方法。</think>### 解决Linux "No space left on device"错误的方法 #### 1. 检查磁盘空间使用率 使用命令查看各分区使用情况: ```bash df -h ``` 若某分区使用率接近100%,需清理大文件。例如查找超过100MB的文件: ```bash find / -xdev -type f -size +100M -exec ls -lh {} \; 2>/dev/null ``` 重点关注$/var/log$, $/tmp$等目录的日志文件清理[^1]。 #### 2. 检查inode使用情况 当空间足够但inode耗尽时也会报错: ```bash df -i ``` 若inode使用率100%,需删除小文件: ```bash find / -xdev -type d \( -name ".cache" -o -name ".npm" \) -exec du -sh {} \; 2>/dev/null ``` #### 3. 检查被删除的未释放文件 使用命令查找被进程占用的已删除文件: ```bash lsof +L1 ``` 示例输出: ``` COMMAND PID USER FD TYPE DEVICE SIZE/OFF NLINK NODE NAME java 1234 root 12u REG 8,17 0 0 1234 /var/log/app.log (deleted) ``` 重启相关进程即可释放空间。 #### 4. 检查文件系统配额 查看用户配额状态: ```bash quota -vs ``` 若启用配额,可通过`edquota`命令调整配额限制。 #### 5. 特殊文件系统处理 对于$overlayfs$等联合文件系统: ```bash mount | grep overlay ``` 重启容器或清理容器临时文件可解决问题[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值