Ubuntu : 21.10
1.在VS2022里发布,
我曾经想把目标运行时改成Linux-x64,但编译时报少一个....json文件
目标框架只有一个选项,就这样编译了吧
Ubuntn上环境的搭建
这个走了一点弯路:一开始想只安装.net core 6.0运行时,然后运行dotnet XXXX.dll时报错,说要安装SDK,再运行安装SDK,却提示dotnet别名已被运行时占用了,只好卸载运行时,再次安装SDK。
安装是通过snap包方式。
安装SDK
sudo snap install dotnet-sdk --classic --channel=6.0
注册
sudo snap alias dotnet-sdk.dotnet dotnet
安装运行时
sudo snap install dotnet-runtime-60 --classic
注册
sudo snap alias dotnet-runtime-60.dotnet dotnet
卸载运行时(我就是用此命令卸载的)
sudo snap remove dotnet-runtime-60
然后将.net 项目发布文件上传到FTP服务器,在Ubuntu上安装gFtp(系统自带snap包)。
如果出现unable locate package gftp的提示,可以用sudo apt-get update 来更新
这样可以在图形模式下下载。
下载后解压缩到一个目录,进入此目录,运行:
sudo dotnet XXXXX.dll(这个dll就是项目的主dll,和项目同名的那个)
在默认的5000端口启动,
在linux上打开Firefox浏览器,访问http://127.0.0.1:5000,现在欢迎页面,初步安装成功:
另外要说的是:
在下载SDK和apt-get update都遇到了连接中断的问题,好几次都不成功,把下载源改成ftp.sjtu.edu.cn,速度像飞一样快,
修改方法参考apt-get安装软件Unable to locate package错误解决办法_liujian8654562的博客-CSDN博客
在Ubuntu中,有时候运用sudo apt-get install 安装软件时,会出现一下的情况:
Could not get lock /var/lib/dpkg/lock ,是因为有apt进程在运行,用以下命令查出进程并以kill杀之
ps afx|grep apt