最近工作站磁盘空间满了,之前采用的是删除一些文件的方法让系统继续运行(根路径下100%程序就不能运行),但根目录磁盘空间实在太小了,只有134G,所以删除几天后,磁盘再次满了,需要找到一个解决方法。
该文章,先查看工作站上有多少磁盘,各自的使用量是多少?
1. 查看磁盘文件使用情况
df -h
查看磁盘使用情况。
当前工作站磁盘的使用情况如下,可以看到root下134G磁盘已经使用了99%,仅剩下2.4G可以使用。
Filesystem Size Used Avail Use% Mounted on
udev 24G 0 24G 0% /dev
tmpfs 4.7G 2.0M 4.7G 1% /run
/dev/sda6 134G 124G 2.4G 99% /
tmpfs 24G 52K 24G 1% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 24G 0 24G 0% /sys/fs/cgroup
/dev/loop0 2.3M 2.3M 0 100% /snap/gnome-calculator/260
/dev/loop2 3.8M 3.8M 0 100% /snap/gnome-system-monitor/95
/dev/loop3 150M 150M 0 100% /snap/gnome-3-28-1804/71
/dev/loop5 36M 36M 0 100% /snap/gtk-common-themes/1198
/dev/loop8 1.0M 1.0M 0 100% /snap/gnome-logs/57
/dev/loop6 89M 89M 0 100% /snap/core/7396
/dev/loop11 141M 141M 0 100% /snap/gnome-3-26-1604/88
/dev/loop7 15M 15M 0 100% /snap/gnome-logs/45
/dev/loop10 141M 141M 0 100% /snap/gnome-3-26-1604/90
/dev/loop13 4.2M 4.2M 0 100% /snap/gnome-calculator/352
/dev/loop14 15M 15M 0 100% /snap/gnome-characters/296
/dev/loop12 1.0M 1.0M 0 100% /snap/gnome-logs/61
/dev/loop9 3.8M 3.8M 0 100% /snap/gnome-system-monitor/100
/dev/loop15 43M 43M 0 100% /snap/gtk-common-themes/1313
/dev/loop16 4.2M 4.2M 0 100% /snap/gnome-calculator/406
/dev/loop17 150M 150M 0 100% /snap/gnome-3-28-1804/67
/dev/loop18 55M 55M 0 100% /snap/core18/1074
/dev/loop19 89M 89M 0 100% /snap/core/7270
tmpfs 4.7G 4.0K 4.7G 1% /run/user/124
tmpfs 4.7G 0 4.7G 0% /run/user/1001
tmpfs 4.7G 0 4.7G 0% /run/user/1000
/dev/nvme0n1 458G 205G 230G 48% /home/user/m2Dir
/dev/loop20 15M 15M 0 100% /snap/gnome-characters/317
/dev/loop1 55M 55M 0 100% /snap/core18/1098
以上信息中,有很多 /dev/loop*、tmpfs 以及 nvme0n1,这些各自代表什么含义?以下对其进行一一解释
- /dev/loop*
- /dev/loop* 是 【loop devices 】,loog devices是将普通文件作为块设备访问的循环设备。 它们与RAM占用无关。 它们通常用于安装磁盘映像,在当前的情况下显然是用于Ubuntu Snap。1
- 为什么Linux使用loop?没有使用的RAM是一种浪费,所以Linux让你的RAM得到更合理的应用。
- 是否导致RAM变少?实际上不会,loop 100%占用,不会影响系统的正常使用,如果需要更多内存资源,Linux系统立即腾出loop的空间。
- 更多关于loop device的问题,可以参考 【linux ate my ram】
- tmpfs
- nvme0n1
- nvme是SSD磁盘
2. 其他关于磁盘的信息的命令
- lsblk (List Block) 列出当前服务器的所有Blocks,默认参数为
-a
更详细的信息查看:lsblk -o NAME,FSTYPE,LABEL,MOUNTPOINT,SIZE,MODEL
可以查看到磁盘型号
可以将上述命令添加到环境变量中,即在环境变量(/.bashrc、/.zshrc)中添加alias lsdrv="lsblk -o NAME,FSTYPE,LABEL,MOUNTPOINT,SIZE,MODEL"
,以后即可使用lsdrv
命令查看磁盘详细信息。
-
查看磁盘信息:
sudo hdparm -i /dev/sdb
/dev/sdb: Model=ST4000DM005-2DP166, FwRev=0001, SerialNo=ZGY3VMMP Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0 BuffType=unknown, BuffSize=8192kB, MaxMultSect=16, MultSect=off CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=7814037168 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio1 pio2 pio3 pio4 DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 AdvancedPM=yes: unknown setting WriteCache=enabled Drive conforms to: unknown: ATA/ATAPI-4,5,6,7 * signifies the current active mode
-
du -hs
查看当前目录占用量
du -h
递归查看当前路径占用量du -d 1 -h
查看当前目录下,各个子目录的大小。-d
参数指示显示文件的深度-depth。eg:du -d 0 -h
查看当前目录的大小。
-
更详细的查看:
sudo hdparm -I /dev/sda
-
lsblk -f 也可以查看未挂载的文件系统类型。
原创文章,作者:3628473679,如若转载,请注明出处:https://blog.ytso.com/158012.html