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-volume extend" fails calling qubes.ResizeDisk #3906

Open
davex25 opened this Issue May 17, 2018 · 4 comments

Comments

Projects
None yet
3 participants
@davex25

davex25 commented May 17, 2018

Qubes OS version:

4.0 rc3 upgraded, and fully reinstalled 4.0 release version.

Affected component(s):

qvm-volume


Steps to reproduce the behavior:

Try to increase size of existing running VM root storage, e.g.

"sudo qvm-volume extend fedora-26:root 40GB"

In this case I'm doing an online resize, but have also tried offline and got similar results.

Expected behavior:

Root size increased.

Actual behavior:

Prints message:

"Online resize of volume qubes_dom0/vm-fedora-26-root failed (you need to resize filesystem manually): /bin/sh: /etc/qubes-rpc/qubes.ResizeDisk: No such file or directory"

VM root storage was not increased, but if I run "qvm-volume extend 40GB" again, I get:

"For your own safety, shrinking of root is disabled."

But this is also wrong, the disk wasn't actually resized to 40GB yet.

General notes:


Related issues:

@davex25

This comment has been minimized.

Show comment
Hide comment
@davex25

davex25 May 17, 2018

I think I see what happened here. Also applies to the other issue I referenced (#3533)

The VM I'm working with is using an older template that I've upgraded multiple times. Somehow certain rpc scripts that are expected to exist on that template do not, including qubes.StartApp and qubes.ResizeDisk.

Is there a utility of some kind that ensures a specified VM has all the shell scripts the RPC system expects it to have?

davex25 commented May 17, 2018

I think I see what happened here. Also applies to the other issue I referenced (#3533)

The VM I'm working with is using an older template that I've upgraded multiple times. Somehow certain rpc scripts that are expected to exist on that template do not, including qubes.StartApp and qubes.ResizeDisk.

Is there a utility of some kind that ensures a specified VM has all the shell scripts the RPC system expects it to have?

@davex25

This comment has been minimized.

Show comment
Hide comment
@davex25

davex25 May 17, 2018

For fun, tried copying those scripts from a VM that contained them, but seems there are other missing dependent executable scripts, e.g. /usr/lib/qubes/resize-rootfs. I copied that one to my problematic VM and the resize seemed to work.

But seems like there needs to be some way to automatically check that these kinds of scripts exist on the VM. I've made many modifications to this template VM and don't really want to throw it away.

davex25 commented May 17, 2018

For fun, tried copying those scripts from a VM that contained them, but seems there are other missing dependent executable scripts, e.g. /usr/lib/qubes/resize-rootfs. I copied that one to my problematic VM and the resize seemed to work.

But seems like there needs to be some way to automatically check that these kinds of scripts exist on the VM. I've made many modifications to this template VM and don't really want to throw it away.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek May 27, 2018

Member

Is it a template imported from 3.2?

Member

marmarek commented May 27, 2018

Is it a template imported from 3.2?

@davex25

This comment has been minimized.

Show comment
Hide comment
@davex25

davex25 May 29, 2018

Yes it was.

davex25 commented May 29, 2018

Yes it was.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment