-
-
Notifications
You must be signed in to change notification settings - Fork 49
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
qvm-block persistent config is too fragile #3437
Comments
I recently had a shift in device mapper IDs that resulted in the wrong persistent LVM volume getting attached to a VM, which was a bit of a surprise, and could be a security problem. If switching to UUIDs involves a lot of work, would it be easy to change LVM volumes from the "dom0:dm-99" to "dom0:escaped--lvname" format instead? |
I recently had a similar problem - external to Qubes LVM volumes come up in parallel with VMs and land on different dm.. devices in a race condition with allocation of devices to VMs. Usually causes the VM with the persistent attach to fail to start, nonexistent or inaccessible device. I do wonder if a VM start will wait around for a persistent device to come up? |
This actually is on my personal TODO list. I just haven't had time to work on it. If someone is feeling brave enough he can ping me and I will help him solve the issue. |
One other related issue - after a reboot there is no way to find out what the current persistent attaches are without trying to start the target appVM and then getting the device name from the error message and detaching it - one by one. This seems to also confuse the tray.devices widget - every time I attempt one of these starts that fails due to an incorrect persistent block device attach the widget dies:
|
Writing here because #4780 is closed and it looks like some work was done on the above post re tray.devices and there is no open issue - I downloaded some current updates for dom0 a couple of days ago and note the tray.devices has been wrapped and restarts itself whenever it dies. The problem is that it never updates its display and I find myself having to kill it to force a refresh whenever I want to use it. |
FYI, you can still comment on closed issues. Closed issues will be reopened, if appropriate. Please see our issue reporting guidelines for more details. |
Duplicate of #2272 |
Could someone please re-open this issue and mark it as a security bug? Getting the wrong block device attached to a VM after a reboot is a real problem. A temporary workaround would be to disable the persistent flag to qvm-block until the UUID work (#2272) is completed, or at least issue a warning when running |
Reopening because as @doug1 points out this is in fact a security bug (a qube can get access to data it should not have access to). |
will be solved by #9325 |
Qubes OS version:
Qubes 4.0RC3
Steps to reproduce the behavior:
Using qvm-block shows output like this;
Using qvm-block add with the persistent flag will alter qubes.xml and the 'sdb1' or similar would be the part that is stored in there.
This is a design issue because drive numbers change.
In my own setup I used a new drive created inside of an already existing LVM thin-pool and called it 'bulk' (in pool "Slow"), for some reason qvm-block shows this as dm-32.
When I rebooted this showed up as dm-40, another time as 35.
Expected behavior:
Most distros switched to using UUID based mounting configuration files.
I think its time for Qubes to follow and make sure that in the qubes.xml we no longer have an 'id' attribute that is a not-unique identification number.
Please consider dropping the 'id' and adding the 'uuid' attribute. See
sudo blkid
.Actual behavior:
Starting a qube where its persistent disk ID could not be found gives a traceback in the journal;
The text was updated successfully, but these errors were encountered: