VeraCrypt có thể sử dụng các điểm gắn kết liên tục trên Linux không?


12

VeraCrypt có thể sử dụng các điểm gắn kết liên tục trên Linux không?


Đường dẫn tuyệt đối của Windows + VeraCrypt + được mã hóa

Trên Windows, tôi có thể gắn các phân vùng / đĩa được mã hóa veracrypt thông qua tập lệnh bó sử dụng tên thiết bị được hiển thị bởi mountvol.exe. Một thuộc tính như vậy rất hữu ích vì khởi động lại có thể dẫn đến thay đổi đường dẫn tương đối ( \Device\Harddisk1\Partition3-> khởi động lại -> \Device\Harddisk3\Partition3).

Tập lệnh bó của tôi cho khối lượng veracrypt trên Windows (dạng rút gọn):

@echo
"C:\Program Files\VeraCrypt\VeraCrypt.exe" /v \\?\Volume{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}\ /l z /m label=Encrypted_1 /q
"C:\Program Files\VeraCrypt\VeraCrypt.exe" /v \\?\Volume{yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy}\ /l f /m label=Encrypted_2 /q
[...]
pause


Linux + VeraCrypt + chỉ đường dẫn khối lượng mã hóa?

Tôi không có kiến ​​thức về sự tồn tại của lệnh song song với Windows /v \\?\Volume{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}\có sẵn cho dòng lệnh Linux. Tôi đã thử --mount=/dev/disk/by-uuid/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxcờ (vô ích) , vì mountvol.exe tên âm lượng là (có thể) dựa trên số UUID ( blkidmặc dù không thể chấp nhận được ). Tài liệu veracrypt / truecrypt chính thức cho phép người dùng Linux chỉ hoạt động với các đường dẫn tương đối (biến) ( /dev/sda3-> khởi động lại -> /dev/sdc3). Do sự bất tiện, các đường dẫn phải được xác minh mỗi lần sau khi hệ điều hành được tải.

Tập lệnh bash của tôi để gắn khối lượng veracrypt trên Linux (dạng rút gọn):

#! /bin/bash
#
echo "Encrypted_1" && veracrypt --mount /dev/sdq --slot=12 --verbose && echo "Encrypted_1"
echo "Encrypted_2" && veracrypt --mount /dev/sdz3 --slot=1 --verbose && echo "Encrypted_2"
[...]


Giải pháp?

Có ai biết liệu vị trí khối lượng VeraCrypt có thể được mô tả bằng thuật ngữ tuyệt đối trên Linux không?

Nếu không thể, vui lòng cung cấp đề xuất để đạt được cùng một mục tiêu? (ví dụ: udev? fstab?)

Erratum

mountvol.execông nhận GUID, không UUIDnhư đã viết ở trên.

Câu trả lời:


7

Tôi đã giải thích chi tiết dưới đây câu trả lời được đăng bởi David Foerster và làm cho nó trở nên mô tả và rõ ràng hơn cho những người dùng Linux khác quan tâm đến chủ đề được trình bày.

Đường dẫn tuyệt đối khối lượng mã hóa Linux + VeraCrypt +

Theo nghiên cứu của tôi, dường như việc gán đường dẫn tuyệt đối cho khối lượng VeraCrypt là không thể (ít nhất là hiện tại) ( vide : by-id và by-path entry trên wiki.archlinux.org trong phần đặt tên thiết bị khối liên tục ( 1 )).

Linux + VeraCrypt + đặt tên thiết bị khối bán liên tục

Tuy nhiên, chúng ta có thể sử dụng đặt tên thiết bị khối bán liên tục.

1. đường đi

/dev/disk/by-path/phụ thuộc vào đường dẫn vật lý ngắn nhất ( 2 ) và thay đổi khi cổng của bộ điều khiển được chuyển đổi ( 3 ).

Để có được /dev/disk/by-path/mô tả, gõ:

ls -l /dev/disk/by-path/

Bạn có thể sử dụng đặt tên thu được để gắn kết khối lượng VeraCrypt:

veracrypt --mount /dev/disk/by-path/[by-path] --slot=6 --verbose

/dev/disk/by-path/[by-path] có thể thay thế đường dẫn tương đối trong tập lệnh bash:

#! /bin/bash
#
echo "Encrypted_1" && veracrypt --mount /dev/disk/by-path/[by-path1] --slot=12 --verbose && echo "Encrypted_1"
echo "Encrypted_2" && veracrypt --mount /dev/disk/by-path/[by-path2] --slot=1 --verbose && echo "Encrypted_2"
[...]

2. by-id

/dev/disk/by-id/được tạo theo số sê-ri thiết bị ( 4 ). wiki.archlinux.org tuyên bố rằng /dev/disk/by-id/không thể tồn tại thay đổi phần cứng, tức là kịch bản trong đó thiết bị được cắm vào cổng của bộ điều khiển chịu hệ thống con khác nhau ( 5 ). access.redhat.com , mặt khác, tuyên bố /dev/disk/by-id/có thể được duy trì ngay cả khi thiết bị được truy cập bởi các hệ thống khác nhau ( 6 ). Do đó, symlinkdường như khá ổn định trong trường hợp /dev/disk/by-id/được áp dụng.

Để có được /dev/disk/by-id/tên thiết bị, gõ:

ls -l /dev/disk/by-id/

Bây giờ, khi bạn có một cái đúng, nó có thể được sử dụng để gắn kết khối lượng VeraCrypt:

veracrypt --mount /dev/disk/by-id/[id] --slot=6 --verbose

Tương tự như những gì đã được ghi chú trong đoạn một, /dev/disk/by-id/có thể được sử dụng trong tập lệnh bash:

#! /bin/bash
#
echo "Encrypted_1" && veracrypt --mount /dev/disk/by-id/[id1] --slot=12 --verbose && echo "Encrypted_1"
echo "Encrypted_2" && veracrypt --mount /dev/disk/by-id/[id2] --slot=1 --verbose && echo "Encrypted_2"

Có lẽ nó sẽ hữu ích cho một ai đó.

Phụ lục

/dev/disk/by-id/ không đủ ổn định để quên về việc sửa tập lệnh gắn sau khi khởi động lại.


3

Thật không may, các UUID và nhãn của hệ thống tệp trong các thùng chứa được mã hóa không thể truy cập được do mã hóa và các thùng chứa TrueCrypt / VeraCrypt không tự mang UUID hoặc nhãn (hoặc ít nhất là không có gì mà udev biết về trái ngược với các thùng chứa LUKS).

Có một định danh đủ ổn định khác cho khối lượng lưu trữ trong Linux: ID đĩa . Bạn có thể tìm thấy chúng trong:

/dev/disk/by-id/

Cho đến nay tôi chưa bao giờ nhận thấy bất kỳ thay đổi đáng kể nào đối với các liên kết tượng trưng trong đó, vì các tên được tạo bởi

  • udev, có cấu hình lưu trữ cơ bản không thay đổi thường xuyên,
  • dựa trên tên nhà sản xuất, tên kiểu máy và số sê-ri được báo cáo bởi phần sụn ổ đĩa, cũng không thay đổi thường xuyên.

Nó hoạt động. Tuy nhiên, tôi phải kiểm tra cung cấp giải pháp chống lại sự ổn định. Trong khi đó, tôi đã phát triển câu trả lời của bạn thành dạng bạn có thể thấy dưới đây. Nó có thể chỉ ra rằng chủ đề cũng hữu ích cho người khác.
Christianus

/dev/disk/by-id/Phương pháp quá không ổn định cho khẩu vị của tôi. Sau một lần khởi động lại, hai liên kết đã thay đổi. Sẽ thật tuyệt nếu veracrypt được sử dụng, như dm-crypt, UUID bên ngoài và bên trong khác nhau.
Christianus

Lạ Tôi chưa bao giờ có bất kỳ thay đổi nào liên quan đến các ổ đĩa vật lý và bắt đầu với ata-*, scsi-*hoặc thậm chí usb-*ngoại trừ 1) *-part*hậu tố sau khi thay đổi bảng phân vùng hoặc 2) sau khi nâng cấp bản phát hành bao gồm các thay đổi lớn đối với udev. Tôi đã rút và trao đổi ổ đĩa trong thời gian trung bình và tên kernel ( sd*) có xu hướng thay đổi mỗi vài lần khởi động.
David Foerster

Trong trường hợp của tôi ata-*đã được thay thế bằng usb-*hai HD bên ngoài được tạo bởi WD: WDC WD15NMVW-11AV3S3 và WD Elements 107C (1042).
Christianus

Là ít nhất một trong các tiền tố liên tục cho một trong hai ổ đĩa?
David Foerster

0

Trước khi gắn ổ đĩa của bạn, hãy chụp 'ảnh chụp nhanh'

$> ll /dev/disk/by-id > ~/before.txt

Một lần nữa, sau khi gắn ổ đĩa của bạn. Và nhìn vào khác biệt:

$> ll /dev/disk/by-id > ~/after.txt
$> diff ~/before.txt ~/after.txt

Bạn sẽ thấy (tức là trên ổ đĩa ngoài hai phần của Samsung)

> [...] usb-Samsung_M2_Portable_D3F12345678FE094-0:0 -> ../../sdd
> [...] usb-Samsung_M2_Portable_D3F12345678FE094-0:0-part1 -> ../../sdd1
> [...] usb-Samsung_M2_Portable_D3F12345678FE094-0:0-part2 -> ../../sdd2

Để gắn kết, hãy nói phân vùng 2 của điều đó với /mnt/m(ví dụ của tôi: với các công tắc truecrypt)

veracrypt -t -tc -pPasswordIfYouLike -k "" --protect-hidden=no /dev/disk/by-id/usb-Samsung_M2_Portable_D3F12345678FE094-0:0-part2 /mnt/m

Bây giờ bạn có thể sử dụng tập lệnh mount tương ứng cho ổ đĩa này một cách đáng tin cậy, bất kể cổng USB nào hoặc theo thứ tự tương ứng với các ổ đĩa khác mà nó đã được gắn.


Và đối với một kịch bản unmount thích hợp, đáng tin cậy:

veracrypt -t -d /dev/disk/by-id/usb-Samsung_M2_Portable_D3F12345678FE094-0:0-part2


Ổn định?

Tôi đang sử dụng trực tiếp trên các trạm nối khác nhau, ở nhiều nơi làm việc khác nhau với một số ổ đĩa ngoài của các thương hiệu khác nhau trong nhiều tháng. Không vấn đề gì.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.