2010-04-15 67 views
0

我正在写一个加密文件夹的数据或文件如何覆盖在一个文件中的数据使用bash

#!/bin/bash 

file_name=$1 
tmp_file=/tmp/tmpfile.tar 

# tar compress file 
tar -cf $tmp_file $file_name; 

# encrypt file 
gpg -c $tmp_file 

# remove temp file 
rm -rf $tmp_file $file_name 

# mv encrypted file to orignal place 
mv ${tmp_file}.gpg $file_name 

bash脚本,但数据仍然可以恢复使用photorec或类似方法...

有没有办法确保在bash中原始文件的绝对删除?

回答

0

你可以创建一个ramdisk在创建临时文件?或者,如果数据很敏感,也许你应该使用加密文件系统?

+0

嘿,如果有人要向下投票这个至少说为什么! – vickirk 2010-04-19 10:33:57

2

我收集它是不可能的只是将文件传输到gpg,因为你已经尝试过了吗?

+0

优秀点,gpg支持从标准输入读取。 – vickirk 2010-04-15 10:04:00

+0

当然,这将是更好的溶剂,但我更关心摧毁原始文件。 – Stefan 2010-04-15 10:16:30

+0

但至少会避免临时文件。一个文件擦除比擦两个文件要好。 – ndim 2010-04-15 22:15:25

1

这也应该工作:

rm -Pf file