我的外置硬盘有 1TB 大小,上面有近 900GB 的数据。我想在不格式化的情况下设置密码。可以吗?文件格式是 ext4。
答案1
是的,有可能。
这就是所谓的ATA 密码。如果允许,您可以通过 EFI/BIOS 固件进行设置。或者您可以使用hdparm
设置这样的密码。
我建议使用你的EFI 固件如果适用的话,因为hdparm
它会发出很多警告,警告你磁盘可能会损坏。这有点可怕,即使不太可能发生。这只是谨慎并警告你最坏的情况。
因此,如果您想使用hdparm
,它是这样的:
sudo hdparm --user-master u --security-set-passwd "Secret" /dev/sdx
也就是设定一个用户密码“秘密”。这将让主密码按照制造商的设置(并让任何知道它的人解锁驱动器)。
您最终还可以设置主密码。但请先阅读文档以了解后果。
笔记:如果在启动时插入了带有 ATA 密码的驱动器,您的 EFI 固件应该会要求您输入该密码。如果您在启动后插入它,我不知道它如何处理Ubuntu,但你可能需要通过hdparm
从终端发出另一个命令来解锁驱动器,例如
sudo hdparm --security-unlock 'Secret' --user-master u /dev/sdx
如果我们在前面的例子中使用相同的变量。
另一种可能性是使用ext4 内置加密,但它只对每个目录进行加密。这意味着,如果您的硬盘上有多个顶级目录,则每个目录都需要一个密码,除非您将它们移动到同一个顶级根目录下。更多说明请参见archlinux 维基如何启用ext4 加密。这适用于新文件,因此您必须将所有数据移动到新的加密目录,才能对其进行加密。