32ビットKaliオペレーティングシステムへのPowerShellのインストールが失敗する

32ビットKaliオペレーティングシステムへのPowerShellのインストールが失敗する

32ビットKali Linux PCにPowerShellをインストールする際にいくつかの問題があります。フォローするこのガイド次に始めます。

apt update && apt -y install curl gnupg apt-transport-https

次に、APTがパッケージを信頼し、パッケージ署名に関連するすべての問題をユーザーに通知できるように、公開ストレージGPGキーをダウンロードして追加しました。

curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -

GPGキーを追加した後、Microsoftパッケージストアを独自のパッケージリストファイルに追加し、/etc/apt/sources.list.d/利用可能なパッケージリストを更新しました。

echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-debian-stretch-prod stretch main" \
                                                > /etc/apt/sources.list.d/powershell.list
apt update

これまでの更新中にエラーは発生しませんでしたが、Microsoftのソースコードが私のsource.listにあるので、すべてが正常になります。

私が実行したとき:

apt -y install powershell

私は得る:

root@kali:/opt# apt -y install powershell
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package powershell

答え1

Powershellリポジトリをsources.list

ただし、32ビットアーキテクチャシステムを使用していると報告します。出力は、apt-cacheリポジトリにPowershellパッケージが含まれていないことを確認します。

見てパワーシェルGitHub、Microsoftは32ビットLinuxシステム用のPowershell用のLinuxパッケージを提供していないようです。ここにあるLinux用のソースコードとバイナリパッケージはどちらも64ビットシステム用です。

Bobユーザーがコメントで指摘したように、Linux用のPowershellは次のものを使用します。.Net コア

ソースからのビルドに慣れている場合は、32ビットパッケージをビルドすることもできますが、これは他の種類の問題です。 Powershellには64ビットのガイドラインと最適化に関する厳しい要件がある可能性があるため、実際には機能しない可能性があります。

答え2

PowerShellリポジトリを追加しましたが、これはamd64バイナリのみを提供します(Microsoftが含める必要があるアーキテクチャ修飾子に示されているように)。 32ビットシステムではバイナリを実行できません。つまり、CPUが64ビットモードをサポートし(lmでプロセッサフ​​ラグを見つけて確認できる/proc/cpuinfo)、システムを正しく設定しない限りです。

(ライブKaliシステムを実行している場合は、64ビットKali設定で再起動することもできます。)

以下のガイドラインは Kali に限定されず、すべての Debian 派生製品に適用されます。

64ビットサポートを追加:

  • アクティベーションamd64:

    dpkg --add-architecture amd64
    
  • システムが最新であることを確認してください。

    apt update && apt upgade
    
  • 適切なカーネルをインストールします(これはインストールされているディストリビューションと現在適用されているカーネルによって異なります。uname -r使用するパッケージ名を見つけるには実行してください)。

    apt install linux-image-4.19.0-kali4-amd64
    
  • Grubメニューの詳細オプションから再起動し、amd64カーネルを選択します。

  • MicrosoftのPowerShellリポジトリはDebian 9に基づいているため、これらのリポジトリを追加する必要があるかもしれません(Kali設定では通常推奨されませんが、カリーが直接録音しました。だから...):

    echo deb http://deb.debian.org/debian stretch main > /etc/apt/sources.list.d/stretch.list
    

    (今、Kaliではlibicu57パッケージが利用できなくなるため、これが必要なので、フォローしている場合でもこれを行う必要があります。Kali PowerShellインストールガイド)

  • PowerShellを再アップデートしてインストールします。

    apt update && apt install powershell
    

これで、ほとんどの32ビットインストールを実行できますが、必要に応じて64ビットパッケージをインストールできます。

関連情報