國產化之路-麒麟V10作業系統安裝.net core 3.1 sdk

千島偏舟發表於2020-09-17

隨著晶片國產化,作業系統國產化,軟體國產化的聲浪越來越高,公司也已經把開發專案國產化提上了日程,最近搞來了臺長城的國產化電腦主機,用來搞試驗,安裝的是麒麟V10的作業系統,國產化折騰之路就此開始,用的是.net c#開發,首先得安裝一下環境,搜了一下微軟官方的安裝說明,版本實在是太多,搞不清楚麒麟V10的作業系統是基於Linux哪個版本的,隨便找了個CentOS的版本安裝,不成功,看樣子瞎折騰肯定不行,還是得按部就班的來,先搞清楚當前作業系統的版本,百度了一下Linux檢視版本的命令:

cat /proc/version

根據顯示資訊我們可以得到麒麟作業系統V10版本是基於ubuntul16.04版本的,這個就好辦了,找ubuntul的安裝說明,https://docs.microsoft.com/zh-cn/dotnet/core/install/linux-ubuntu, 在安裝說明中找到16.04的版本安裝說明,根據指引將 Microsoft 包簽名金鑰新增到受信任金鑰列表,並新增包儲存庫:

wget https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb

成功後繼續執行:

sudo dpkg -i packages-microsoft-prod.deb

完成上面兩步後就可以開始安裝SDK了,根據提示先執行更新操作:

sudo apt-get update

提示無法解析域名”archive.kylinos.cn“,應該是映象源有問題,檢視資源列表:

vim /etc/apt/sources.list

果不其然,需要尋找可替代的映象源地址把它替換掉應該可以解決該問題,頭疼的就是該用什麼源來替換,直接聯絡麒麟公司客服,一問說是系統升級維護中,要等2周時間,直接暈菜。

不能光等著,換其他的源試試看,阿里、清華、金山試了個遍,有部分資源下載不了,執行不了:”sudo apt-get install -y apt-transport-https“安裝命令,沒辦法,試試手動安裝看看

根據微軟官方安裝說明文件先下載.net core 3.1 SDK,文件中有下載地址連結,這裡注意要選擇ARM64版本的,執行命令下載 :

wget https://download.visualstudio.microsoft.com/download/pr/186257d9-bca2-4dda-be74-006205965ec9/b2b63d45482701473d9731abc41ecc2a/dotnet-sdk-3.1.402-linux-arm64.tar.gz

繼續跟著微軟官方安裝說明的指引使用以下命令來提取 SDK:

mkdir -p "$HOME/dotnet" && tar zxf dotnet-sdk-3.1.402-linux-arm64.tar.gz -C "$HOME/dotnet"
export DOTNET_ROOT=$HOME/dotnet
export PATH=$PATH:$HOME/dotnet

一切貌似還比較順利,檢視安裝是否成功:

dotnet --info

應該成功了,建立一個專案目錄,然後新建一個MVC的專案試試,看看是否能跑得起來:

dotnet new mvc

建立成功,然後執行看看

dotnet run

使用桌面端開啟瀏覽器輸入”http://localhost:5000“,成功顯示頁面,其預設會跳轉到”https://localhost:5001“,這個不用在意

至此在麒麟作業系統V10版本安裝.net core算是成功了。繼續看微軟的安裝文件,下面有一段提示,應該比較重要:

提示

前面的 export 命令只會使 .NET Core CLI 命令對執行它的終端會話可用。

你可以編輯 shell 配置檔案,永久地新增這些命令。 Linux 提供了許多不同的 shell,每個都有不同的配置檔案。 例如:

Bash Shell:/.bash_profile、/.bashrc
Korn Shell:~/.kshrc 或 .profile
Z Shell:~/.zshrc 或 .zprofile
為 shell 編輯相應的原始檔,並將 :$HOME/dotnet 新增到現有 PATH 語句的末尾。 如果不包含 PATH 語句,則使用 export PATH=$PATH:$HOME/dotnet 新增新行。

另外,將 export DOTNET_ROOT=$HOME/dotnet 新增至檔案的末尾。

大意應該是 export 命令只會對當前的會話終端有用,如果關閉後再次開啟估計就失效了,為了驗證這個關閉當前終端,然後重新登入,執行"dotnet --info"仍然可用,切換成其他賬號再試

出現”dotnet:未找到命令“的提示,根據微軟安裝文件的提示編輯”~/.bashrc“

vim ~/.bashrc

在末尾加上:

# .net core sdk 執行環境
export PATH=$PATH:$HOME/dotnet
export DOTNET_ROOT=$HOME/dotnet

儲存退出,執行如下命令重新載入環境變數

source ~/.bashrc

再一次”dotnet“ 仍然是”未找到命令“,算了先暫時到此為止吧,至少root賬戶可以使用了,後面再慢慢折騰,對Linux環境變數配置比較瞭解的朋友也可以在下面留言,謝謝!。

相關文章