缘起

随着芯片国产化,操作系统国产化,软件国产化的声浪越来越高,公司也已经把开发国产化项目提上了日程,最近搞来了台长城的电脑主机用来做开发试验,机子从里到外都是国产的,安装的操作系统是麒麟V10,国产化折腾之路也就此开始了。

开始折腾

一直用的是微软的全家桶,首先得安装一下环境,搜了一下微软官方的安装说明,版本实在是太多,搞不清楚麒麟V10的操作系统是基于Linux哪个版本的,随便找了个CentOS的版本安装不成功,看样子瞎折腾肯定不行,还是得按部就班的来,先搞清楚当前操作系统的版本再说,百度了一下Linux查看版本的命令:

cat /proc/version

国产化之路-麒麟V10操作系统安装.net core 3.1 sdk-LMLPHP

根据显示的信息麒麟操作系统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

国产化之路-麒麟V10操作系统安装.net core 3.1 sdk-LMLPHP

成功后继续执行:

sudo dpkg -i packages-microsoft-prod.deb

国产化之路-麒麟V10操作系统安装.net core 3.1 sdk-LMLPHP

完成上面两步后就可以开始安装SDK了,根据提示先执行更新操作:

sudo apt-get update

国产化之路-麒麟V10操作系统安装.net core 3.1 sdk-LMLPHP

提示无法解析域名”archive.kylinos.cn“,应该是镜像源有问题,查看资源列表:

vim /etc/apt/sources.list

国产化之路-麒麟V10操作系统安装.net core 3.1 sdk-LMLPHP

果不其然,应该找个可替代的镜像源就可以解决这个问题,头疼的就是该用什么源来替换,直接联系麒麟公司客服,一问说是系统升级维护中,要等两周时间,直接晕菜。

国产化之路-麒麟V10操作系统安装.net core 3.1 sdk-LMLPHP国产化之路-麒麟V10操作系统安装.net core 3.1 sdk-LMLPHP

不能光等着,换其他的源试试看吧,阿里云、清华、金山试了个遍,有部分资源下载不了,执行不了:”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

国产化之路-麒麟V10操作系统安装.net core 3.1 sdk-LMLPHP

应该成功了,创建一个项目目录,然后新建一个MVC的项目试试,看看是否能跑得起来:

dotnet new mvc

国产化之路-麒麟V10操作系统安装.net core 3.1 sdk-LMLPHP

创建成功,然后运行看看

dotnet run

国产化之路-麒麟V10操作系统安装.net core 3.1 sdk-LMLPHP

使用桌面端打开浏览器输入”http://localhost:5000“,成功显示页面,其默认会跳转到”https://localhost:5001“,这个不用在意
国产化之路-麒麟V10操作系统安装.net core 3.1 sdk-LMLPHP

至此在麒麟操作系统V10版本安装.net core算是成功了。继续看微软的安装文档,下面有一段提示,应该比较重要:

大意应该是 export 命令只会对当前的会话终端有用,如果关闭后再次打开估计就失效了,为了验证一下,退出当前账号关闭终端,然后重新登录,运行"dotnet --info",结果仍然可用,切换成其他账号看看
国产化之路-麒麟V10操作系统安装.net core 3.1 sdk-LMLPHP
出现”dotnet:未找到命令“的提示,估计就这个问题吧!根据提示,编辑”~/.bashrc“

vim ~/.bashrc

在末尾加上:

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

保存退出,运行如下命令重新加载环境变量

source ~/.bashrc

再一次”dotnet“ 仍然是”未找到命令“,想想已经是折腾了一天了,先暂时作罢吧!至少root账户可以使用了,后面再慢慢研究。

后记

弯弯绕绕地折腾了不少时间,竟然还遇上了麒麟资源站升级这个事情,运气真是爆棚,一天下来,虽然环境是装起来了,但还是存在几个未解决的问题:
(1)使用APT安装因为麒麟资源站升级无法更新,半路中止了,等他们资源站能用了再试试;
(2)手动安装虽然成功了,但也还是留下了一个小问题,切换成其他账号找不到"dotnet"命令,安照安装提示配置环境变量还是无法解决,是配置错误还是其他原因,不得而知,对Linux环境变量配置比较了解的朋友也可以在下面留言,欢迎提供思路,谢谢!
当前也只是开个头,国产之路长的很,希望大家一起来铺路,扫扫地也行,哈哈~下一步计划安装宝塔,听说使用宝塔可以通过Web端轻松管理服务器,我们也体验一番,还有Nginx还是得装的,Web服务还是得有一个的;接下来就是安装国产数据库了,数据库是少不了的,计划使用达梦D8数据库,后面就是做一些案例和一些技术点的应用,敬请期待。

09-18 04:18