public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH manager] pveproxy: create log directory when starting
@ 2025-04-15  9:38 Maximiliano Sandoval
  2025-04-16  8:23 ` Fabian Grünbichler
  0 siblings, 1 reply; 3+ messages in thread
From: Maximiliano Sandoval @ 2025-04-15  9:38 UTC (permalink / raw)
  To: pve-devel

We only create this directory while installing the package. If a user
deletes /var/log then they will lose access to the web UI.

Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
 bin/pveproxy | 18 +++++++++++++++---
 1 file changed, 15 insertions(+), 3 deletions(-)

diff --git a/bin/pveproxy b/bin/pveproxy
index 20e8f2ab2..1090df039 100755
--- a/bin/pveproxy
+++ b/bin/pveproxy
@@ -19,12 +19,24 @@ $SIG{'__WARN__'} = sub {
     $@ = $err;
 };
 
+sub chown_to_www_data {
+    my ($dir) = @_;
+
+    my $gid = getgrnam('www-data') || die "getgrnam failed - $!\n";
+    my $uid = getpwnam('www-data') || die "getpwnam failed - $!\n";
+
+    chown($uid, $gid, $dir);
+}
+
 my $prepare = sub {
     my $rundir="/var/run/pveproxy";
+    my $logdir = '/var/log/pveproxy';
+
     if (mkdir($rundir, 0700)) { # only works at first start if we are root)
-	my $gid = getgrnam('www-data') || die "getgrnam failed - $!\n";
-	my $uid = getpwnam('www-data') || die "getpwnam failed - $!\n";
-	chown($uid, $gid, $rundir);
+        chown_to_www_data($rundir);
+    }
+    if (mkdir($logdir, 0700)) {
+        chown_to_www_data($logdir);
     }
 };
 
-- 
2.39.5



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-04-16  9:23 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-04-15  9:38 [pve-devel] [PATCH manager] pveproxy: create log directory when starting Maximiliano Sandoval
2025-04-16  8:23 ` Fabian Grünbichler
2025-04-16  9:21   ` Maximiliano Sandoval

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal