命令行是CentOS中删除数据的核心方式,适用于精确控制删除范围。
删除单个文件
使用rm命令(remove的缩写),语法为:
rm 文件名
示例:删除当前目录下的test.txt文件:
rm test.txt
执行后会提示确认(rm: remove regular file 'test.txt'?),输入y(yes)即可永久删除。
强制删除(无需确认)
若不想手动确认,可添加-f(force,强制)选项:
rm -f 文件名
示例:强制删除config.ini文件:
rm -f config.ini
注意:此操作不会弹出确认提示,需谨慎使用。
递归删除目录及内容
删除非空目录需添加-r(recursive,递归)选项,用于删除目录及其下所有文件和子目录:
rm -r 目录名
示例:删除backup目录及其所有内容:
rm -r backup
若目录中包含只读文件,可结合-f选项强制删除:
rm -rf backup
警告:rm -rf会直接删除目录及所有内容,无法恢复,请务必确认目录路径正确。
批量删除文件
可同时指定多个文件名,用空格分隔:
rm file1.txt file2.log file3.conf
或使用通配符*匹配多个文件(如删除所有.log文件):
rm *.log
示例:删除当前目录下所有.tmp文件:
rm *.tmp
若需彻底删除敏感数据(如密码文件、财务记录),避免被恢复软件还原,可使用以下工具:
Shred命令(内置工具)
shred通过多次覆盖文件内容(默认3次)后再删除,确保数据无法恢复。语法为:
shred -fuv 文件名
选项说明:
-f:强制覆盖(即使文件为只读);-u:覆盖后删除文件;-v:显示详细操作过程。secret.txt文件:shred -fuv secret.txt
输出示例:
shred: secret.txt: pass 1/3 (random)...
shred: secret.txt: pass 2/3 (random)...
shred: secret.txt: pass 3/3 (random)...
shred: secret.txt: removing
shred: secret.txt: renamed to 00000000
shred: 00000000: renamed to 0000000
shred: 0000000: renamed to 000000
shred: 000000: renamed to 00000
shred: 00000: renamed to 0000
shred: 0000: renamed to 000
shred: 000: renamed to 00
shred: 00: renamed to 0
shred: secret.txt: removed
Scrub命令(第三方工具)
scrub用符合安全标准的模式(如NNSA NAP-14.1)覆盖数据,适用于擦除整个文件或磁盘空间。安装与使用:
yum -y install scrub(CentOS 7/8);scrub -r 文件名(-r表示递归覆盖);scrub -X empty(在目标目录下创建并填充随机数据的临时文件,完成后自动删除)。Srm命令(安全rm替代)
srm(secure rm)是rm的安全增强版,内置在EPEL仓库中。安装与使用:
yum -y install epel-release;yum -y install srm;srm 文件名(用法与rm一致,但会先覆盖数据)。若习惯图形操作,可通过CentOS的文件管理器(如GNOME Files)删除数据:
Delete键);~/.local/share/Trash),需清空回收站才能彻底释放空间。/home目录、数据库文件),可使用cp命令或工具(如rsync)复制到外部存储;ls命令确认当前目录下的文件列表,避免误删系统文件(如/etc、/usr);sudo权限(如sudo rm /etc/fstab),但需谨慎使用;以上方法覆盖了CentOS虚拟机删除数据的常见场景,可根据需求选择合适的方式。操作前务必确认数据重要性,避免误删造成损失。