From c734a59f86e0c2a596cf7f41cdf98bc007f3abd7 Mon Sep 17 00:00:00 2001 From: Johannes 'josch' Schauer Date: Thu, 25 Apr 2019 08:56:42 +0200 Subject: [PATCH] chdir to parent of root before remove_tree to prevent 'cannot stat initial working directory' of File::Path --- mmdebstrap | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/mmdebstrap b/mmdebstrap index 604fd8c..77cbb76 100755 --- a/mmdebstrap +++ b/mmdebstrap @@ -2384,6 +2384,11 @@ sub main() { # Since this is still inside the unshared namespace, there is # no risk of removing anything important. $pid = get_unshare_cmd { + # File::Path will produce the error "cannot stat initial + # working directory" if the working directory cannot be + # accessed by the unprivileged unshared user. Thus, we first + # navigate to the parent of the root directory. + chdir "$options->{root}/.." or error "unable to chdir() to parent directory of $options->{root}: $!"; remove_tree($options->{root}, {error => \my $err}); if (@$err) { for my $diag (@$err) {