Skip to content

Commit c54e17a

Browse files
committed
fix: Disabled services disappears on service list
1 parent 5d29eed commit c54e17a

File tree

2 files changed

+32
-0
lines changed

2 files changed

+32
-0
lines changed

app/Http/Controllers/API/Server/ServiceController.php

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,22 @@ public function index()
6666
} catch (Exception) {
6767
}
6868
}
69+
70+
$raw = Command::runSudo(
71+
"systemctl list-unit-files --state=disabled | grep service | awk '{print $1 \":\"$2}'",
72+
false
73+
);
74+
75+
foreach (explode("\n", $raw) as &$package) {
76+
if ($package == '') {
77+
continue;
78+
}
79+
$row = explode(':', trim($package));
80+
$services[] = [
81+
'name' => strlen($row[0]) > 50 ? substr($row[0], 0, 50) . '...' : $row[0],
82+
'status' => $row[1] == 'disabled',
83+
];
84+
}
6985
} else {
7086
$rawServices = Command::run(
7187
"(Get-WmiObject win32_service | select Name, DisplayName, State, StartMode) -replace '\s\s+',':'"

app/Models/Server.php

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -361,6 +361,22 @@ public function getNoOfServices()
361361
}
362362
}
363363

364+
$raw = $this->run(
365+
"systemctl list-unit-files --state=disabled | grep service | awk '{print $1 \":\"$2}'",
366+
false
367+
);
368+
369+
foreach (explode("\n", $raw) as &$package) {
370+
if ($package == '') {
371+
continue;
372+
}
373+
$row = explode(':', trim($package));
374+
$services[] = [
375+
'name' => strlen($row[0]) > 50 ? substr($row[0], 0, 50) . '...' : $row[0],
376+
'status' => $row[1] == 'disabled',
377+
];
378+
}
379+
364380
return count($services);
365381
}
366382

0 commit comments

Comments
 (0)