Not sure if anyone else has experienced this or not, but it seems the updater doesn't set the correct permissions multi-pwsh to access the repo:
An error occurred trying to start process '/opt/psuniversal/multi-pwsh' with working directory '/home/psuniversal/.PowerShellUniversal/Repository'. Permission denied at System.Diagnostics.Process.ForkAndExecProcess(ProcessStartInfo startInfo, String resolvedFilename, String[] argv, String[] envp, String cwd, Boolean setCredentials, UInt32 userId, UInt32 groupId, UInt32[] groups, Int32& stdinFd, Int32& stdoutFd, Int32& stderrFd, Boolean usesTerminal, Boolean throwOnNoExec) at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo) at System.Diagnostics.Process.Start(ProcessStartInfo startInfo) at PowerShellUniversal.Automation.MultiPwshService.RunAsync(String[] arguments, CancellationToken cancellationToken) in D:\a\powershell-universal\powershell-universal\src\PowerShellUniversal.Automation\MultiPwshService.cs:line 674 at PowerShellUniversal.Automation.MultiPwshService.DiscoverPowerShellVersionsAsync(CancellationToken cancellationToken) in D:\a\powershell-universal\powershell-universal\src\PowerShellUniversal.Automation\MultiPwshService.cs:line 128 at PowerShellUniversal.Automation.MultiPwshService.GetPowerShellVersionsAsync(Boolean refresh, CancellationToken cancellationToken) in D:\a\powershell-universal\powershell-universal\src\PowerShellUniversal.Automation\MultiPwshService.cs:line 93 at PowerShellUniversal.EnvironmentsForm.OnInitializedAsync() in D:\a\powershell-universal\powershell-universal\src\Universal.Server\Pages\Settings\EnvironmentsForm.razor:line 175 at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync()
@akapsch We've got a fix coming for this in 2026.3.1. Likely out shortly.
You can work around it by opening the PSU admin terminal and adding the execution flag: chmod +x /opt/psuniversal/multi-pwsh
Adam Driscoll
PowerShell Expert and Software Architect at Devolutions
@akapsch We've got a fix coming for this in 2026.3.1. Likely out shortly.
You can work around it by opening the PSU admin terminal and adding the execution flag: chmod +x /opt/psuniversal/multi-pwsh
@Adam Driscoll
Thanks, Adam! That fixes part of the problem, now it is looking like the following wasn't installed:multi-pwsh exited with code 1: /opt/psuniversal/multi-pwsh: /lib64/libc.so.6: version `GLIBC_2.39' not found (required by /opt/psuniversal/multi-pwsh)
Oh interesting. You are just using our PSU image from docker hub? I dont remember having to do anything else with it but can double check our changelog to make sure we didnt miss this.
Adam Driscoll
PowerShell Expert and Software Architect at Devolutions
No, we have PSU installed on Linux using the ZIP file, registered as a service.
Ah ha! Ok. That's good information. I'm actually going to open a new ticket for this.
Adam Driscoll
PowerShell Expert and Software Architect at Devolutions
Okay. Should I create a ticket as well? Is there a known workaround?
@akapsch You can certainly open a ticket if you would like but I'm happy to help here if that's ok. Can you let me know what distro\version you are running? We might be able to upgrade that package in place but I dont want to recommend anything before I have a chance to try it.
I also think we need a bit more resiliency in PSU to allow it to function properly even if it cannot launch multi-pwsh.
Adam Driscoll
PowerShell Expert and Software Architect at Devolutions
@akapsch You can certainly open a ticket if you would like but I'm happy to help here if that's ok. Can you let me know what distro\version you are running? We might be able to upgrade that package in place but I dont want to recommend anything before I have a chance to try it.
I also think we need a bit more resiliency in PSU to allow it to function properly even if it cannot launch multi-pwsh.
@Adam Driscoll Here's what I got for this server, snipped for brevity:
PS /home/akapsch> cat /etc/os-release NAME="Rocky Linux" VERSION="9.8 (Blue Onyx)" RELEASE_TYPE="stable" PS /home/akapsch> ldd --version ldd (GNU libc) 2.34
@akapsch Thanks. It appears that libc version is too out of date for multi-pwsh. I will either need to see if we can target an earlier version and repackage or provide some sort of graceful fall back when this happens.
Can you try renaming the binary? PSU should skip over the failing functionality if the binary cannot be found.
sudo mv /opt/psuniversal/multi-pwsh /opt/psuniversal/multi-pwsh.disabled sudo systemctl restart psuniversal
Adam Driscoll
PowerShell Expert and Software Architect at Devolutions
That did the trick.