linux如何快速把磁盘占满
linux如何快速把磁盘占满详细介绍
在 Linux 系统中快速占满磁盘空间需谨慎操作,避免影响系统运行或重要数据。以下是安全可控的方法(建议在非关键分区或临时目录中测试):
方法一:生成大文件(占用磁盘块空间)
1. 使用
dd 命令(最常用)
bash
/dev/zero test_file 1G
/dev/zero /path/to/target/directory/fill_file 1M $df m pathtotargetdirectory awk 'NR{print $}'
2. 使用
fallocate(更高效,适用于支持稀疏文件的文件系统如 ext4/xfs)
bash
fallocate 2G large_file
方法二:创建大量小文件(占用 inode 或块空间)
1. 递归创建大量空文件(占用 inode 和少量块空间)
bash
/tmp/test
/tmp/test
file.txt
2. 使用
head 生成随机内容文件(占用块空间)
bash
10M /dev/urandom random_file_.dat
方法三:用脚本持续写入(占满直至空间不足)
bash
fill_disk.log
注意事项(务必遵守!)
- 选择非关键目录:操作前确认路径(如
~/test、/tmp),禁止在根目录(/)或系统分区(如 /boot、/var)操作,避免系统崩溃。 - 控制文件大小:先用
df -h查看目标分区剩余空间,避免过度占用导致系统异常。 - 权限问题:普通用户只能在自己有权限的目录操作,如需写入系统目录需
sudo,但需格外谨慎。 - 清理方法:完成测试后,用
rm -rf /path/to/generated_files删除文件,并用df -h确认空间释放。
风险提示
- 磁盘占满可能导致服务崩溃(如数据库、Web 服务器)、系统无法写入日志或临时文件。
- 大量小文件可能耗尽 inode(可用
df -i查看),即使磁盘块未满,也会导致无法创建新文件。
建议在虚拟机或测试环境中操作,确保数据安全!