Bug 1567992
Summary: | RFE: Allow resizing of LUKS devices | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Vojtech Trefny <vtrefny> |
Component: | udisks2 | Assignee: | Vojtech Trefny <vtrefny> |
Status: | CLOSED ERRATA | QA Contact: | xhe <xhe> |
Severity: | unspecified | Docs Contact: | |
Priority: | unspecified | ||
Version: | 7.6 | CC: | rhandlin, vtrefny, xhe |
Target Milestone: | rc | Keywords: | FutureFeature |
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | udisks2-2.7.3-7 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2018-10-30 11:37:15 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Vojtech Trefny
2018-04-16 14:22:20 UTC
We already have upstream pull request for this -- https://github.com/storaged-project/udisks/pull/474 Hi Vojtech, How it could be used look like? Is there usage or example? Thanks! There is a new "Resize" function in the "Encrypted" interface. Resize /dev/vda (contains unlocked luks device) to 50 MiB # busctl call org.freedesktop.UDisks2 /org/freedesktop/UDisks2/block_devices/vda org.freedesktop.UDisks2.Encrypted Resize "ta{sv}" $((50*1024*1024)) 0 $ lsblk /dev/vda NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 252:0 0 512M 0 disk └─luks-d03c2b92-5454-42f8-b77e-85c995e2613f 253:2 0 50M 0 crypt Resize /dev/vda back to its original size (0 = max size/size of the underlying device) # busctl call org.freedesktop.UDisks2 /org/freedesktop/UDisks2/block_devices/vda org.freedesktop.UDisks2.Encrypted Resize "ta{sv}" 0 0 $ lsblk /dev/vda NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 252:0 0 512M 0 disk └─luks-d03c2b92-5454-42f8-b77e-85c995e2613f 253:2 0 510M 0 crypt Thanks Vojtech for providing details. It works when I resized the unlocked luks device to 50M, but it doesn't work when I tried to resize it to 0. *************** snip ************************ # dd if=/dev/zero of=/tmp/tfile_loop0 iflag=fullblock bs=1M count=100 # udisksctl loop-setup -f /tmp/tfile_loop0 Mapped file /tmp/tfile_loop0 as /dev/loop0 # echo Redhat2018|cryptsetup --verbose --cipher aes-xts-plain64 --key-size 512 --hash sha512 --iter-time 5000 luksFormat /dev/loop0 # echo -n Redhat2018>/tmp/passwd.key # udisksctl unlock -b /dev/loop0 --key-file /tmp/passwd.key Unlocked /dev/loop0 as /dev/dm-3. ============== TEST START ===================== # lsblk -l NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT luks-3bb93ed6-d796-4fd4-8736-0d50b242094d 253:3 0 98M 0 crypt # busctl call org.freedesktop.UDisks2 /org/freedesktop/UDisks2/block_devices/loop0 org.freedesktop.UDisks2.Encrypted Resize "ta{sv}" $((50*1024*1024)) 0 lsblk -l NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 68.3G 0 disk sda1 8:1 0 1G 0 part /boot sda2 8:2 0 67.3G 0 part rhel_storageqe--16-root 253:0 0 40.7G 0 lvm / rhel_storageqe--16-swap 253:1 0 6.9G 0 lvm [SWAP] rhel_storageqe--16-home 253:2 0 19.9G 0 lvm /home loop0 7:0 0 100M 0 loop luks-3bb93ed6-d796-4fd4-8736-0d50b242094d 253:3 0 50M 0 crypt # busctl call org.freedesktop.UDisks2 /org/freedesktop/UDisks2/block_devices/loop0 org.freedesktop.UDisks2.Encrypted Resize "ta{sv}" 0 0 # lsblk /dev/loop0'... NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop0 7:0 0 100M 0 loop luks-6a253ff8-8a7f-4d7e-90be-203f8bf74501 253:3 0 98M 0 crypt ============== TEST END ===================== *************** snip ************************ After confirmed with vtrefny@, the test result in #c7 are what we expected. Move it to VERIFIED. vtrefny@: if you call resize with 0 as size it means to resize it to its maximum size -- e.g size of the underlying device (minus size of the metadata) Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2018:3271 |