Lyn*_*nob 6 filesystems partition arch-linux lvm disk-usage
我在 Manjaro 上,今天我醒来发现我的电脑由于磁盘已满而出现问题。我删除了很多东西,但这并没有解决问题。我不知道发生了什么。有没有办法快速重新分区?因为我手头没有 Gparted live CD。
这是df -ah(省略了虚拟文件系统)的输出
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/ManjaroVG-ManjaroRoot 29G 29G 0 100% /
/dev/sda1 247M 56M 179M 24% /boot
/dev/mapper/ManjaroVG-ManjaroHome 550G 296G 227G 57% /home
Run Code Online (Sandbox Code Playgroud)
这是df -i相同分区的输出:~/Desktop
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/ManjaroVG-ManjaroRoot 1921360 441275 1480085 23% /
/dev/sda1 65280 368 64912 1% /boot
/dev/mapper/ManjaroVG-ManjaroHome 36626432 320911 36305521 1% /home
Run Code Online (Sandbox Code Playgroud)
由于我的分区已满,mysql 无法启动。
这是输出lsblk:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 596.2G 0 disk
??sda1 8:1 0 255M 0 part /boot
??sda2 8:2 0 595.9G 0 part
??ManjaroVG-ManjaroRoot 254:0 0 29.3G 0 lvm /
??ManjaroVG-ManjaroHome 254:1 0 558.9G 0 lvm /home
??ManjaroVG-ManjaroSwap 254:2 0 7.8G 0 lvm [SWAP]
sr0 11:0 1 1024M 0 rom
Run Code Online (Sandbox Code Playgroud)
这是du -shx /*(修剪无关条目)的输出
54M /boot
3.2G /data
19M /etc
296G /home
4.0K /media
4.0K /mnt
1.1G /opt
79M /root
1.1M /run
16K /srv
28K /tmp
7.6G /usr
14G /var
Run Code Online (Sandbox Code Playgroud)
深入到 `/var/ 显示大磁盘空间用户是:
9.0G /var/cache
4.8G /var/lib
Run Code Online (Sandbox Code Playgroud)
你的分区/dev/sda2显示为“全”,因为它完全是分配给LVM,这是你的管理/和/home分区。我们不需要直接查看/dev/sda2结果,而是查看您的 LVM 配置。我们可以从你的lsblk输出中看到:
??sda2 8:2 0 595.9G 0 part
??ManjaroVG-ManjaroRoot 254:0 0 29.3G 0 lvm /
??ManjaroVG-ManjaroHome 254:1 0 558.9G 0 lvm /home
??ManjaroVG-ManjaroSwap 254:2 0 7.8G 0 lvm [SWAP]
Run Code Online (Sandbox Code Playgroud)
很可能您的整个 LVM 都分配给了ManjaroRoot,ManjaroHome和ManjaroSwap。这意味着如果不首先添加新的 LVM PV 或缩小现有的 LVM LV(不是一项简单的任务),就不能增加分区。然而,这些选择是治疗症状而不是问题。
您的问题是/设备/dev/mapper/ManjaroVG-ManjaroRoot已满。您的/home分区未满,与您的问题无关。
我们可以从您的du输出中看到,最大的磁盘使用量/是:
3.2G /data
1.1G /opt
7.6G /usr
14G /var
Run Code Online (Sandbox Code Playgroud)
/data, /optand的用法/usr看起来很合理,但异常值/var是使用了大量空间。
您在聊天中提供的一些更新信息表明,这不是我怀疑的日志问题,而是包缓存的包缓存问题pacman。您可以使用以下命令从缓存中清除旧文件:
pacman -Sc
Run Code Online (Sandbox Code Playgroud)
您可以在 Arch wiki 上阅读有关清理包缓存的更多信息。
你的 / 已满。可能是 /var/log 失控,消息/系统日志中的 ssh 探测,或 mysql 错误,以及 /var/log/mysql 中的大量日志。
最好的方法是找到有问题的文件,了解导致错误的原因,然后将其删除。
然后,如果理解错误,首先尝试修复导致它们的原因。
| 归档时间: |
|
| 查看次数: |
2770 次 |
| 最近记录: |