如何在 Ubuntu 20.04 上安装 PowerShell 7?

如何在 Ubuntu 20.04 上安装 PowerShell 7?

我无法安装PowerShell 7在 Ubuntu 20.04 上。我使用Ubuntu 软件安装 powershell 7.0.3,这是最新/稳定的版本。安装无误后,我无法启动 powershell。附件是屏幕截图。我找不到应该指定 exec 字段的桌面文件上的文档。我注意到 v7 是“PowerShell 预览版”。这是否意味着我应该安装 v6?如果是,如何获取版本?

$ uname -r
5.4.0-47-generic

错误信息截图

更新:我已通过 Ubuntu 软件成功安装了 PowerShell 7.1.0。谢谢,M$!

答案1

根据 PowerShell 项目在 GitHub 上发布的问题,标题为请支持 Ubuntu 20.04支持将很快到来(当它到来时,这个答案应该更新)

同时,有 2 条报告成功的安装路径(如 - 您可以在系统中获取提示,但实际上没有确切地安装 - 至少不是本地安装)

注意:您可能无法从 UI 菜单启动这些,而只能通过运行或powershell命令从终端启动pwsh它们。

  • 折断:

    sudo snap install powershell --classic
    
  • 点网运行时安装:

    cd /tmp
    wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
    sudo dpkg -i packages-microsoft-prod.deb
    
    sudo apt-get update; \
      sudo apt-get install -y apt-transport-https && \
      sudo apt-get update && \
      sudo apt-get install -y aspnetcore-runtime-3.1
    
    dotnet tool install -g powershell
    

答案2

“我必须有 50 声望才能发表评论”

但感谢@Lockszmith,我注意到这件事发生在大约 22 天前......

https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7.1#ubuntu-2004

# Update the list of packages
sudo apt-get update
# Install pre-requisite packages.
sudo apt-get install -y wget apt-transport-https
# Download the Microsoft repository GPG keys
wget -q https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb
# Register the Microsoft repository GPG keys
sudo dpkg -i packages-microsoft-prod.deb
# Update the list of products
sudo apt-get update
# Enable the "universe" repositories
sudo add-apt-repository universe
# Install PowerShell
sudo apt-get install -y powershell
# Start PowerShell
pwsh

但后来我尝试new-pssessionstart-process -credential $cred -filepath powershell找到了 WSman 和 Linux 不支持的域。对此我的反应是,“那还有什么意义呢?”

我猜你可以安装 out-gridview,然后仍然以 powershell 的方式处理事情。然而,我对它的热情立刻就被抑制了。

希望这对某人有帮助!

答案3

我只是想提供帮助,并发布了我解释并解决问题的链接,但该链接被 Mitch 删除了。

解决方案如下:

您遇到此 PSSession 问题是因为安装包中的软链接未找到,因为它们是错误的。我不知道 MS 在这里做什么...

如果你进行库检查,你会发现某些库找不到:

ldd /opt/microsoft/powershell/7/libmi.so
   linux-vdso.so.1 (0x00007fff9617c000)
   libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f2a180a2000)
   libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f2a1809c000)
   libpam.so.0 => /lib/x86_64-linux-gnu/libpam.so.0 (0x00007f2a1808a000)
   libssl.so.1.0.0 => not found
   libcrypto.so.1.0.0 => not found
   libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f2a17e98000)
   /lib64/ld-linux-x86-64.so.2 (0x00007f2a182ad000)
   libaudit.so.1 => /lib/x86_64-linux-gnu/libaudit.so.1 (0x00007f2a17e6a000)
   libcap-ng.so.0 => /lib/x86_64-linux-gnu/libcap-ng.so.0 (0x00007f2a17e62000)

查看 /usr/lib/x86_64-linux-gnu/ 下 Ubuntu 20.04 附带的 libssl.so.1.1 和 librypto.so.1.1,并按如下方式创建软链接。

sudo ln -s /usr/lib/x86_64-linux-gnu/libssl.so.1.1 /lib/x86_64-linux-gnu/libssl.so.1.0.0
sudo ln -s /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0

如果你没有库“apt install libssl-dev”。再次检查 ldd,现在应该没问题了。

然后您还需要安装 gss-ntlmssp。

安装 gss-ntlmssp

欲了解更多信息,请看此处https://adminsnet.de/?p=184我已经全部解释了如何使用 k/ubuntu 20.04 修复 powershell 7.1。

玩得开心...K3ops

答案4

这是在 Ubuntu 20.04 中正确安装 powershell 所需的命令序列:

# Update the list of packages
sudo apt-get update
# Install pre-requisite packages.
sudo apt-get install -y wget apt-transport-https software-properties-common
# Download the Microsoft repository GPG keys
wget -q https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb
# Register the Microsoft repository GPG keys
sudo dpkg -i packages-microsoft-prod.deb
# Update the list of packages after we added packages.microsoft.com
sudo apt-get update
# Install PowerShell
sudo apt-get install -y powershell
# Remove garbage
rm packages-microsoft-prod.deb
# Start PowerShell
pwsh

库或任何其他功能都没有问题,只要执行它就会自动更新sudo -E apt update && sudo apt upgrade -y

相关内容