ani*_*uia 20 filesystem encryption ext4
它解释了如何创建一个空文件,将其格式化为 ext4,并将其安装为设备。
我想知道它是否可以创建为加密的 ext4 文件系统。
我曾尝试使用 palimpsest(系统菜单中的磁盘实用程序)来格式化已创建的文件系统,但它无法正常工作,因为它检测到正在使用的文件系统。
如果我尝试卸载文件系统,那也不会起作用,因为它没有检测到设备(因为它不是像硬盘驱动器或 USB 驱动器这样的真实设备)。
所以我的问题是,是否可以选择从一开始就创建加密的文件系统?我用过这些命令:
创建一个 200Mb 大小的空文件:
dd if=/dev/zero of=/path/to/file bs=1M count=200
Run Code Online (Sandbox Code Playgroud)
使其成为ext4:
mkfs -t ext4 file
Run Code Online (Sandbox Code Playgroud)
将其安装在我家中的文件夹中:
sudo mount -o loop file /path/to/mount_point
Run Code Online (Sandbox Code Playgroud)
该mkfs命令有什么方法可以创建加密的 ext4 文件系统,要求提供解密密码?
我打算用它来加密 Dropbox 中的文件。
mix*_*xel 11
按照以下步骤创建一个包含文件系统的加密文件:
1.创建给定大小文件的更快方法是:
fallocate -l 128M /path/to/file
Run Code Online (Sandbox Code Playgroud)
2.使用dm-crypt工具在文件中创建LUKS(Linux 统一密钥设置)分区:
cryptsetup -y luksFormat /path/to/file
Run Code Online (Sandbox Code Playgroud)
您可以检查文件是否已加密容器:
/path/to/file: LUKS encrypted file, ver 1 [aes, xts-plain64, sha1] UUID: 7e2af5a1-3fab-43ea-a073-3b9cc6073f00
Run Code Online (Sandbox Code Playgroud)
3.打开加密容器:
cryptsetup luksOpen /path/to/file data
Run Code Online (Sandbox Code Playgroud)
data是设备映射器卷名。您可以选择其他名称。
这将打开 LUKS 设备,并将其映射到我们提供的名称,在我们的例子中,在/dev/mapper/data.
4.ext4在此设备上创建文件系统:
mkfs.ext4 /dev/mapper/data
Run Code Online (Sandbox Code Playgroud)
5.然后创建挂载点:
mkdir /path/to/mount
Run Code Online (Sandbox Code Playgroud)
6.并在那里安装设备:
mount /dev/mapper/data /path/to/mount
Run Code Online (Sandbox Code Playgroud)
7.卸载文件系统并关闭 LUKS 设备:
umount /path/to/mount
cryptsetup luksClose data
Run Code Online (Sandbox Code Playgroud)
现在您已经加密了带有 ext4 文件系统的 LUKS 容器。当您想使用它时,只需重复第 3 步和第 6 步。完成后调用第 7 步。
这篇文章对我很有帮助。
总有一天,您的容器将耗尽空间。假设加密容器文件大小为 128 MB,我们希望将其大小增加到 512 MB。要增加其容量,请执行以下步骤:
1.卸载并关闭 LUKS 设备(请参阅上面列表中的第 7 步)。
2.增加容器文件大小:
dd if=/dev/zero of=/path/to/file bs=384M count=1 oflag=append conv=notrunc
Run Code Online (Sandbox Code Playgroud)
3.打开 LUKS 设备。
cryptsetup luksOpen /path/to/file data
Run Code Online (Sandbox Code Playgroud)
4.调整 LUKS 设备大小以匹配容器文件大小。从手册页:
如果未指定 --size(以扇区为单位),则使用底层块设备的大小。
所以你可以:
cryptsetup resize data
Run Code Online (Sandbox Code Playgroud)
5.然后调整 ext4 文件系统的大小:
e2fsck -f /dev/mapper/data
resize2fs /dev/mapper/data
Run Code Online (Sandbox Code Playgroud)
6.现在您可以重新挂载文件系统:
mount /dev/mapper/data /path/to/mount
Run Code Online (Sandbox Code Playgroud)
enz*_*tib 10
您可以使用cryptmount加密文件系统,如果文件系统在文件上也是如此。
该cryptmount手册有一个非常简单和详细的解释,我的报告(修改)在这里,它做明确提及的是基于文件的文件系统。
步骤 1 在 中
添加条目/etc/cryptmount/cmtab,如下所示:
mycrypt {
dev=/media/data/mycrypt dir=/home/enzotib/mycrypt
fstype=ext4 mountoptions=defaults cipher=twofish
keyfile=/etc/cryptmount/mycrypt.key
keyformat=builtin
}
Run Code Online (Sandbox Code Playgroud)
哪里/media/data/mycrypt是由创建的支持文件,dd并且/home/enzotib/mycrypt是所需的挂载点。
步骤 2
生成秘密解密密钥
sudo cryptmount --generate-key 32 mycrypt
Run Code Online (Sandbox Code Playgroud)Step 3
执行以下命令
sudo cryptmount --prepare mycrypt
Run Code Online (Sandbox Code Playgroud)
然后会要求您输入设置密钥时使用的密码
步骤 4
创建文件系统
sudo mkfs.ext4 /dev/mapper/mycrypt
Run Code Online (Sandbox Code Playgroud)步骤 5
执行
sudo cryptmount --release mycrypt
Run Code Online (Sandbox Code Playgroud)步骤 6
现在挂载文件系统
mkdir /home/enzotib/mycrypt
cryptmount -m mycrypt
Run Code Online (Sandbox Code Playgroud)
然后卸载它
cryptmount -u mycrypt
Run Code Online (Sandbox Code Playgroud)此外,如果您需要加密目录,encfs可能值得考虑。
| 归档时间: |
|
| 查看次数: |
15452 次 |
| 最近记录: |