diff --git a/app/admin/controller/Queue.php b/app/admin/controller/Queue.php
index 019b31cfe..8e594a80e 100644
--- a/app/admin/controller/Queue.php
+++ b/app/admin/controller/Queue.php
@@ -47,10 +47,10 @@ class Queue extends Controller
     {
         if (AdminService::instance()->isSuper()) try {
             $process = ProcessService::instance();
-            if ($process->iswin()) {
+            if ($process->iswin() || empty($_SERVER['USER'])) {
                 $this->command = $process->think('xadmin:queue start');
             } else {
-                $this->command = "sudo -u www {$process->think('xadmin:queue start')}";
+                $this->command = "sudo -u {$_SERVER['USER']} {$process->think('xadmin:queue start')}";
             }
             $this->message = $this->app->console->call('xadmin:queue', ['status'])->fetch();
             $this->listen = preg_match('/process.*?\d+.*?running/', $this->message, $attr);