权限验证
执行清除命令前,确认当前用户具有root
权限或通过sudo
获得授权。
whoami # 查看当前用户 sudo -l # 验证sudo权限
数据备份
使用rsync
或tar
备份关键数据至独立存储设备:
rsync -av /path/to/source /backup/directory/ tar -czvf backup.tar.gz /path/to/data
路径确认
通过ls
和pwd
命令双重校验目标路径,避免误删系统文件:
ls -l /target/directory pwd
rm filename # 删除文件 rm -r directory/ # 递归删除目录
rm -rf /path/to/target # 强制删除且不提示
警告:此命令不可逆,需严格核对路径。
journalctl --vacuum-size=100M # 保留最近100MB日志 find /var/log -type f -name "*.log" -exec truncate -s 0 {} ; # 清空日志内容
apt-get clean # Debian/Ubuntu清理软件包缓存 yum clean all # CentOS/RHEL清理缓存
shred -v -n 5 -z /path/to/file # 5次随机覆写后填零
dd if=/dev/urandom of=/dev/sdX bs=4M status=progress # 使用随机数据覆盖磁盘
注:/dev/sdX需替换为目标磁盘标识符。
禁止递归删除根目录rm -rf /*
或rm -rf /
会导致系统崩溃,需通过文件系统权限限制。
SSD需用专用擦除指令
机械硬盘适用dd
/shred
,而固态硬盘建议使用:
blkdiscard /dev/sdX # 触发TRIM指令(需硬件支持) nvme format /dev/nvme0n1 # NVMe设备安全擦除
数据库文件禁用直接删除
应先通过SQL命令清理数据:
DROP DATABASE dbname; # MySQL删除数据库 VACUUM FULL; # PostgreSQL释放空间
磁盘使用量检查
df -h # 查看分区空间 du -sh /path/directory # 统计目录占用空间
文件存在性确认
ls /path/to/target # 检查文件是否删除 test -e /path/file && echo "存在" || echo "已删除"
安全擦除有效性检测
使用专业工具(如hexedit
或Foremost
)扫描磁盘扇区,确认无残留数据。
rm
、shred
命令规范)