Technologieaustausch

Installieren Sie Linux CENTOS 07 auf einer virtuellen Maschine und stellen Sie NET8 bereit.

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Laden Sie zunächst das Centos07-Image herunter. Es wird empfohlen, die von Alibaba Cloud empfohlene Adresse zu verwenden:

https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/?spm=a2c6h.25603864.0.0.59b5f5ad5Nfr0X

Tatsächlich ist hier bereits die erste Grube entstanden.

Die libstdc++.so von Centos 07 /usr/lib64/ unterstützt nur Version 19;

GLIBCXX wird in allen Versionen nach 3.4.20 fehlen

Net 8 meldet beim Ausführen einen Fehler, da GLIBCXX_3.4.20 und GLIBCXX_3.4.21 erforderlich sind (eigentlich unterstützt NET8 CENTOS 07 nicht, wir bestehen darauf).

  1. dotnet: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by dotnet)
  2. dotnet: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by dotnet)

Nachdem wir das Problem festgestellt und gelöst haben, können wir diese Probleme direkt vermeiden, wenn wir von Anfang an eine höhere Version von Centos verwenden. Im Folgenden geht es darum, wie die Version 07 herausgekommen ist die Grube.

Der Download- und Installationsprozess entfällt übrigens, der folgende VM17-Aktivierungscode wird bereitgestellt

激活码:JU090-6039P-08409-8J0QH-2YR7F

Konfigurieren Sie zunächst das Netzwerk

Klicken Sie im Editor auf „Einstellungen“, wählen Sie dann Ihre virtuelle Maschine in der Tabelle aus und stellen Sie die Standardeinstellungen wieder her

Erklären Sie, dass Sie das Umgebungspaket später über den WGET-Befehl herunterladen müssen und dann in der Befehlszeile angezeigt wird, dass das Netzwerk nicht zulässig ist. Baidu hat einige Nachforschungen angestellt und dieser Vorgang ist ausreichend.

Erstellen Sie einen neuen Dotnet-Ordner unter /home und laden Sie dann das NET 8 SDK und die Laufzeit herunter (installieren Sie einfach eines davon. Ich habe gesehen, dass andere die Laufzeit installiert haben, also habe ich mich für die Installation des SDK entschieden. Das Net8 SDK enthält die Laufzeit)

  1. 虚拟机拖拽命令
  2. systemctl enable run-vmblock\x2dfuse.mount # 开机自启
  3. systemctl start run-vmblock\x2dfuse.mount # 启动服务
  4. sdk 下载地址
  5. wget https://download.visualstudio.microsoft.com/download/pr/dd6ee0c0-6287-4fca-85d0-1023fc52444b/874148c23613c594fc8f711fc0330298/dotnet-sdk-8.0.302-linux-x64.tar.gz
  6. runtime 下载地址
  7. wget https://download.visualstudio.microsoft.com/download/pr/ce31d92b-b514-4f9c-843b-29c466871369/b332eba5641cbc6eed1e3a98480972d2/aspnetcore-runtime-8.0.6-linux-x64.tar.gz

  1. 解压路径
  2. mkdir dotnet
  3. mkdir -p $HOME/dotnet && tar zxf dotnet-sdk-8.0.302-linux-x64.tar.gz -C $HOME/dotnet
  4. export DOTNET_ROOT=$HOME/dotnet
  5. export PATH=$PATH:$HOME/dotnet
  6. 保存到环境变量
  7. echo 'export PATH=$PATH:$HOME/dotnet' >> ~/.bashrc
  8. echo 'export DOTNET_ROOT=$HOME/dotnet' >> ~/.bashrc
  9. source ~/.bashrc
  10. dotnet --version
  11. dotnet --info

Zu diesem Zeitpunkt sollte beim Ausführen von dotnet --version eine Fehlermeldung angezeigt werden.

Da geriet ich in Schwierigkeiten

In Online-Beiträgen wird empfohlen, yum zum Aktualisieren von libstdc.so zu verwenden. Was kann man sonst noch tun, um eine neue Version von GCC zu kompilieren? ? ? ? ? ? ? ? ? ? ? ? ? ?

Ich habe die Anweisungen lange befolgt, bin oft gescheitert und habe fast versucht, die Centos 07+-Version herunterzuladen, oder habe mehrmals versucht, das System herunterzustufen und es neu zu installieren , es ist eine virtuelle Maschine, also ist sie sehr schnell)

Vielleicht liegt es daran, dass die Versionen der Oldtimer anders sind als meine, dass es nicht funktioniert hat! ! ! ! !

  1. 其实就是下载一个libstdc++.so.6.0.26 放到 usr/lib64下,
  2. 然后做一个软连接所有访问libstdc++.so.6指向libstdc++.so.6.0.26

Ich habe die Anweisungen lange befolgt, bin oft gescheitert und habe fast versucht, die Centos 07+-Version herunterzuladen, oder habe mehrmals versucht, das System herunterzustufen und es neu zu installieren , es ist eine virtuelle Maschine, also ist sie sehr schnell)

Vielleicht liegt es daran, dass die Versionen der Oldtimer anders sind als meine, dass es nicht funktioniert hat! ! ! ! !

其实就是下载一个libstdc++.so.6.0.26 放到 usr/lib64下,

然后做一个软连接所有访问libstdc++.so.6指向libstdc++.so.6.0.26

Sie können net8 erfolgreich bereitstellen und Net Core auf Centos 07 ausführen. Ein einfacher Fall

Ich habe den Download-, Upload- und Dekomprimierungsvorgang übersprungen

Die folgenden Soft-Connection-Befehle werden bereitgestellt

  1. 下载链接: libstdc.so.6.0.26 将压缩包放置/usr/lib64目录下
  2. cd /usr/lib64
  3. unzip libstdc.so_.6.0.26.zip
  4. rm libstdc++.so.6
  5. ln -s libstdc++.so.6.0.26 libstdc++.so.6

Führen Sie zu diesem Zeitpunkt den Befehl dotnet aus, um die Umgebung zu überprüfen.

  1. dotnet --version
  2. dotnet --info

Es sollte so aussehen

Ich habe vermutet, dass das Net8-SDK Runtime enthält (da mein Win10-Net8 nur ein SDK hat, aber vorher war das Net5-SDK auch auf Net Core 2.1 Rutime angewiesen).

Erstellen Sie dann einfach eine einfache Rest-API und führen Sie sie nach der Veröffentlichung unter Windows aus.

Kopieren Sie die Datei nach Linux und geben Sie den Pfad in die Datei ein

dotnet WebApplication1.dll

Zu diesem Zeitpunkt sollten wir den Netzwerkport für die Kommunikation mit der virtuellen Maschine einrichten und dann auf der physischen Maschine auf die virtuelle Maschine zugreifen

Ergebnis,,,,

Infolgedessen war ich dumm und habe in der Linux-Befehlszeile auf locslhost:5000 geklickt (weil ich aufgefordert wurde, darauf zu klicken).

Es stellt sich heraus, dass VMs höherer Versionen bereits über integrierte visuelle Operationen und eine integrierte Firefox-LINUX-Version verfügen.

Für die Bereitstellung von net8 in einer LINUX-Centos-Umgebung bietet Microsoft außerdem einfacheren Support und eine einfachere Skriptinstallation.

  1. 以下是脚本自动安装NET 8
  2. wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.sh
  3. chmod +x ./dotnet-install.sh
  4. ./dotnet-install.sh --version latest
  5. 若要安装 .NET 运行时而非 SDK,请使用 --runtime 参数。
  6. ./dotnet-install.sh --version latest --runtime aspnetcore

Es lädt so etwas herunter und installiert es dann standardmäßig entsprechend der neuesten Version des SDK. Wenn Sie andere Versionen oder Rintime installieren möchten, können Sie dies auch über die Befehlszeile ändern.

Diese Installation ist relativ einfach. Führen Sie sie einfach Zeile für Zeile aus. Sie werden jedoch auch auf die von mir erwähnten Umweltprobleme stoßen (Sie müssen sie noch lösen).

Die für diesen Artikel benötigten Ressourcen und zugehörigen Dokumente können in der Gruppenfreigabe heruntergeladen werden. Bitte beachten Sie: Werbung ist in dieser Gruppe verboten! Werbung ist in dieser Gruppe verboten! Werbung ist in dieser Gruppe verboten! Sagen Sie wichtige Dinge dreimal, danke!