AWS 如何释放 /dev/nvme1n1p1 和 /dev/loop# 处理 "No space left on device"

AWS how to free up /dev/nvme1n1p1 and /dev/loop# deal with "No space left on device"

AWS 新手问题。我创建并 运行 基于 Ubuntu Server 18.04 LTS (HVM), SSD Volume Type 的 AWS 实例用于生物信息学。根卷的大小最初设置为 8G,在安装了数十个软件包后,每次更新或升级软件包时都会出现 "No space left on device" 错误。然后,我从这个实例创建了 AMI,并将根卷的大小增加到 150G,并启动了这个 AMI,但仍然出现相同的错误。我的文件系统大小如下所示;

df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            124G     0  124G   0% /dev
tmpfs            25G  956K   25G   1% /run
/dev/nvme1n1p1  7.7G  7.7G     0 100% /
tmpfs           124G     0  124G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           124G     0  124G   0% /sys/fs/cgroup
/dev/loop1       18M   18M     0 100% /snap/amazon-ssm-agent/1480
/dev/loop2       90M   90M     0 100% /snap/core/8268
/dev/loop0       94M   94M     0 100% /snap/core/8935
/dev/loop3       18M   18M     0 100% /snap/amazon-ssm-agent/1566
tmpfs            25G     0   25G   0% /run/user/1000

我想问题出在 /dev/nvme1n1p1/dev/loop1..4 的大小上,两者在增加根卷的大小后显然仍然是 100%。我可以选择重新开始整个过程​​,但我很感激任何能解决这个问题的建议。

我建议首先查看您的数据管道,了解哪些进程正在生成数据、数据存储在何处以及您是否可以优化存储的数据位置和数量。

其次,我会使用上一个任务的结果来建立数据保留策略:必须存储哪些数据以及存储多长时间?您多久可以清理一次数据?

然后创建一个 cron 作业来处理数据清理就很简单了。当然,您还必须问自己是否要在从硬盘擦除数据之前进行手动检查。可以通过触发向所选用户发送带有 cronmail 的电子邮件来创建此类手动检查。