mirror of
https://github.com/libguestfs/libguestfs.git
synced 2026-03-21 22:53:37 +00:00
daemon: copy entire lvm directory
cp will fail if /etc/lvm is an empty directory. Copy the entire directory and adjust environment variable. Signed-off-by: Olaf Hering <olaf@aepfle.de> RWMJ: - Fixed a couple of whitespace issues.
This commit is contained in:
committed by
Richard W.M. Jones
parent
a710c42f0f
commit
9fd41abd40
@@ -47,7 +47,7 @@ void
|
||||
copy_lvm (void)
|
||||
{
|
||||
struct stat statbuf;
|
||||
char cmd[64];
|
||||
char cmd[64], env[64];
|
||||
int r;
|
||||
|
||||
/* If /etc/lvm directory doesn't exist (or isn't a directory) assume
|
||||
@@ -68,8 +68,8 @@ copy_lvm (void)
|
||||
exit (EXIT_FAILURE);
|
||||
}
|
||||
|
||||
/* Hopefully no dotfiles in there ... XXX */
|
||||
snprintf (cmd, sizeof cmd, "%s -a /etc/lvm/* %s", str_cp, lvm_system_dir);
|
||||
/* Copy the entire directory */
|
||||
snprintf (cmd, sizeof cmd, "%s -a /etc/lvm/ %s", str_cp, lvm_system_dir);
|
||||
r = system (cmd);
|
||||
if (r == -1) {
|
||||
perror (cmd);
|
||||
@@ -85,7 +85,8 @@ copy_lvm (void)
|
||||
}
|
||||
|
||||
/* Set environment variable so we use the copy. */
|
||||
setenv ("LVM_SYSTEM_DIR", lvm_system_dir, 1);
|
||||
snprintf (env, sizeof env, "%s/lvm", lvm_system_dir);
|
||||
setenv ("LVM_SYSTEM_DIR", env, 1);
|
||||
|
||||
/* Set a handler to remove the temporary directory at exit. */
|
||||
atexit (rm_lvm_system_dir);
|
||||
|
||||
Reference in New Issue
Block a user