prepare-root: Move /sysroot instead of unmounting it
I originally thought this would fix a regression, but it turns out this wasn't the bug. But pushing anyways as it's just cleaner. https://bugzilla.gnome.org/show_bug.cgi?id=743891
This commit is contained in:
parent
0a7a70ed67
commit
ace982b51c
|
|
@ -185,14 +185,6 @@ main(int argc, char *argv[])
|
||||||
exit (EXIT_FAILURE);
|
exit (EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Link to the physical root below the deployment root */
|
|
||||||
snprintf (destpath, sizeof(destpath), "%s/sysroot", newroot);
|
|
||||||
if (mount (root_mountpoint, destpath, NULL, MS_BIND, NULL) < 0)
|
|
||||||
{
|
|
||||||
perrorv ("Failed to bind mount %s to '%s'", root_mountpoint, destpath);
|
|
||||||
exit (EXIT_FAILURE);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Link to the deployment's /var */
|
/* Link to the deployment's /var */
|
||||||
snprintf (srcpath, sizeof(srcpath), "%s/../../var", deploy_path);
|
snprintf (srcpath, sizeof(srcpath), "%s/../../var", deploy_path);
|
||||||
snprintf (destpath, sizeof(destpath), "%s/var", newroot);
|
snprintf (destpath, sizeof(destpath), "%s/var", newroot);
|
||||||
|
|
@ -220,14 +212,11 @@ main(int argc, char *argv[])
|
||||||
|
|
||||||
touch_run_ostree ();
|
touch_run_ostree ();
|
||||||
|
|
||||||
/* Unmount the previous /sysroot now. Otherwise, we would be
|
/* Move physical root to $deployment/sysroot */
|
||||||
* placing our newroot mount on top of an existing mount, and after
|
snprintf (destpath, sizeof(destpath), "%s/sysroot", newroot);
|
||||||
* we do a switch_root, we would no longer be able to ever unmount
|
if (mount (root_mountpoint, destpath, NULL, MS_MOVE, NULL) < 0)
|
||||||
* the original mount.
|
|
||||||
*/
|
|
||||||
if (umount (root_mountpoint) < 0)
|
|
||||||
{
|
{
|
||||||
perrorv ("failed to umount original mount at %s", root_mountpoint);
|
perrorv ("Failed to MS_MOVE %s to '%s'", root_mountpoint, destpath);
|
||||||
exit (EXIT_FAILURE);
|
exit (EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue