如何在Linux中覆盖文件以隐藏文件内容,并使原始内容无法恢复?


为了在Linux系统中覆盖文件内容,我们使用终端中的shred命令。

shred – shred命令用于安全地删除文件和设备。此命令覆盖文件以隐藏文件内容,并可选地删除文件,以便在Linux/Unix系统中任何软件都很难恢复该文件。

像往常一样,要从系统中删除文件,我们使用终端中的rm命令。通过rm命令删除文件后,可以使用软件恢复,而通过shred命令删除文件后,文件将无法恢复,因为shred命令会使用多种模式覆盖文件三次。

语法

shred命令的通用语法如下:

shred [OPTION]... FILE...

shred命令中可用选项的简要说明。

序号
选项和说明
1
-f, --force
更改权限以允许写入
2
-n, --iteration=N
覆盖文件内容N次,而不是默认值
3
--random-source=FILE
从另一个文件获取随机字节
4
-s, --size=N
粉碎这么多字节
5
-u
覆盖后删除文件
6
--remove[=HOW]
就像-u选项一样,但控制如何删除文件
7
-v
显示正在发生的事情
8
-z, --zero
用零覆盖文件以隐藏粉碎操作
9
--help
显示此帮助并退出
10
--version
输出版本信息并退出

示例

覆盖文件的内容并使其在Linux系统中无法恢复。

为了覆盖文件的内容并使其无法恢复,我们使用终端中的Linux/Unix系统中的shred命令,如下所示。

$ shred file.txt

执行此命令后,文件“file.txt”将无法恢复。

示例

覆盖文件的内容并在Linux系统中打印正在执行的操作。

为了覆盖文件的内容并打印正在执行的操作,我们在Linux/Unix系统中使用终端中的shred命令以及--verbose选项,如下所示。

vikash@tutorialspoint:~/shadow$ shred --verbose file.txt
shred: file.txt: pass 1/3 (random)...
shred: file.txt: pass 2/3 (random)...
shred: file.txt: pass 3/3 (random)...

示例

仅覆盖Linux系统中文件的特定字节。

为了仅覆盖文件的特定字节,我们在Linux/Unix系统中使用shred命令以及-s选项,如下所示。

vikash@tutorialspoint:~/shadow$ cat file.txt
Hey, welcome to tutorialspoint...
vikash@tutorialspoint:~/shadow$ shred -s 2 file.txt
vikash@tutorialspoint:~/shadow$ cat file.txt
y, welcome to tutorialspoint...

显示shred命令的帮助并退出。

要检查有关shred命令的更多信息,我们在Linux系统中使用shred命令以及–help选项,如下所示。

$ shred --help

结论 – 在本文中,我们学习了如何覆盖文件以隐藏其内容并使用shred命令及其可用选项和合适的示例进行可选删除。rm命令也用于在Linux系统中删除文件。

更新于:2021年7月1日

4K+ 阅读量

开启您的职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.