Condivisione della tecnologia

Installa Linux CENTOS 07 su una macchina virtuale e distribuisci NET8.

2024-07-12

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

Per prima cosa scarica l'immagine centos07. Si consiglia di utilizzare l'indirizzo consigliato da Alibaba Cloud:

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

In effetti, qui è già apparsa la prima fossa.

Il libstdc++.so di centos 07 /usr/lib64/ supporta solo la versione 19;

GLIBCXX mancherà in tutte le versioni successive alla 3.4.20

Net 8 segnalerà un errore durante l'esecuzione, perché richiede GLIBCXX_3.4.20 e GLIBCXX_3.4.21 (in realtà NET8 non supporta CENTOS 07, insistiamo su questo)

  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)

Ora che abbiamo riscontrato e risolto il problema, se utilizziamo una versione superiore di centos dall'inizio, possiamo evitare direttamente questi problemi. Naturalmente, questa è una storia per dopo. Quello che segue spiega come è uscita la versione 07 fossa.

Il processo di download e installazione viene omesso, viene fornito il seguente codice di attivazione VM17

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

Configura prima la rete

Nell'editor, fai clic su Preferenze, quindi seleziona la tua macchina virtuale nella tabella e ripristina le impostazioni predefinite

Spiega che in seguito dovrai scaricare il pacchetto dell'ambiente tramite il comando WGET, quindi la riga di comando ti dirà che la rete non è consentita, infine Baidu ha fatto alcune ricerche e questa operazione è sufficiente;

Crea una nuova cartella dotnet in /home, quindi scarica NET 8 SDK e runtime (in effetti, basta installarne uno. Ho visto che altri installavano runtime, quindi ho scelto di installare l'sdk. Net8 sdk include il runtime)

  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

A questo punto, dovresti ricevere un errore quando esegui dotnet --version.

È stato allora che ho cominciato a mettermi nei guai

I post online dicono di usare yum per aggiornare libstdc.so Cos'altro si può fare per compilare una nuova versione di GCC? ? ? ? ? ? ? ? ? ? ? ? ? ?

Ho seguito le istruzioni per molto tempo, ho fallito molte volte e ho dubitato della mia vita molte volte. Ho quasi provato a scaricare la versione centos 07+ o ho provato a eseguire il downgrade di NET8; ho incasinato il sistema e l'ho reinstallato più volte , è una macchina virtuale, quindi è molto veloce)

Forse è perché le versioni dei veterani sono diverse dalla mia che non ha funzionato! ! ! ! !

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

Ho seguito le istruzioni per molto tempo, ho fallito molte volte e ho dubitato della mia vita molte volte. Ho quasi provato a scaricare la versione centos 07+ o ho provato a eseguire il downgrade di NET8; ho incasinato il sistema e l'ho reinstallato più volte , è una macchina virtuale, quindi è molto veloce)

Forse è perché le versioni dei veterani sono diverse dalla mia che non ha funzionato! ! ! ! !

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

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

Puoi distribuire con successo net8 ed eseguire net core su centos 07. Un caso semplice

Ho saltato i processi di download, caricamento e decompressione

Vengono forniti i seguenti comandi di connessione software

  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

A questo punto, esegui il comando dotnet per controllare l'ambiente.

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

Dovrebbe sembrare come questo

Ho immaginato che l'SDK di net8 contenga runtime (perché il mio win10 net8 ha solo un sdk, ma prima che l'SDK di net5 si affidasse anche a net core 2.1 rutime)

Quindi crea semplicemente una semplice API di riposo ed eseguila sotto Windows dopo averla pubblicata.

Copia il file su Linux e inserisci il percorso nel file

dotnet WebApplication1.dll

A questo punto dovremmo configurare la porta di rete per comunicare con la macchina virtuale, quindi accedere alla macchina virtuale sulla macchina fisica

risultato,,,,

Di conseguenza, sono stato stupido e ho fatto clic su locslhost:5000 sulla riga di comando di Linux (perché richiedeva che fosse possibile fare clic su di esso)

Si scopre che le VM di versione superiore hanno già operazioni visive integrate e una versione Firefox LINUX integrata.

Per la distribuzione di net8 nell'ambiente LINUX centos, Microsoft fornisce anche un supporto più semplice e un'installazione di script.

  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

Scaricherà qualcosa del genere e quindi lo installerà. Per impostazione predefinita, verrà installato in base all'ultima versione dell'SDK. Se desideri installare altre versioni, oppure rintime può anche modificare la riga di comando sopra per ottenerlo

Questa installazione è relativamente semplice, basta eseguirla riga per riga ma incontrerai anche i problemi ambientali di cui ho parlato (devi ancora risolverli);

Le risorse e i documenti correlati necessari per questo articolo possono essere scaricati nella condivisione del gruppo. Eventuali problemi tecnici possono essere comunicati nel gruppo. Nota: la pubblicità è vietata in questo gruppo. La pubblicità è vietata in questo gruppo! La pubblicità è vietata in questo gruppo! Dì cose importanti tre volte, grazie!