申请云服务器,运行matlab程序
前言:
实验室的破电脑跑不了复杂matlab程序,由于项目赶集,尝试用云服务器加个速。主要参考了这篇文章,自己实践过程中,也遇到许多常见问题,处理方法仅供参考。
一、申请阿里云ECS
申请方法主要参考一下文章:
阿里云服务器租用一个月教程、收费标准与活动价格参考-阿里云开发者社区
个人使用的比较便宜大约100出头,注意申请时需要保存一个.pem文件的密码,后面需要用,这里表示为secret.pem
二、下载linux版matlab和SSH工具
-
下载linux版matlab:https://pan.baidu.com/s/1ELNoRyuJ6SQaIreWuYHS5A?pwd=37l1
-
MobaXterm:
https://download.mobatek.net/2402024022512842/MobaXterm_Installer_v24.0.zip
阿里云其实自带连接手段,可能也可以传输文件。
三、SSH连接
-
进入MobaXterm
![image]()
-
点击左上角 session
![image]()
-
点击左上角 SSH
![image]()
remote host填写服务器公网IP; 选中specify, username linux下默认root ; port 为22;

这些内容如果不知道,可以在阿里云的服务器管理系统中查看。

- 在Advanced SSH settings 中,选中 use priate key 将上述 secret.pem文件添加进去。 点击OK

- 进入界面:

四、安装MATLAB
下载的MATLAB包含

这里matlab包含了两个ISO,需要多次挂载,步骤如下:
-
根目录下新建一个文件夹matlab
[root@iZ7xv60v17fn0mx988sv53Z ~]# mkdir matlab
在SSH软件左边的文件管理中,进入matlab文件夹,将文件拖拽进该栏目或点击绿色向上的箭头Upload,上传ISO到该目录下,出现上传进度条
![image]()
-
进入该文件夹并挂载dvd1
[root@iZ7xv60v17fn0mx988sv53Z ~]# cd matlab
[root@iZ7xv60v17fn0mx988sv53Z matlab]#sudo mount -t auto -o loop R2018a_glnxa64_dvd1.iso /mnt/iso
挂载命令可能出现问题,也可以尝试sudo mount-o loop R2018a_glnxa64_dvd1.iso /mnt/iso
报错找不到文件夹的,需要新建文件夹iso在/mnt里mkdir /mnt/iso -
下面需要解压crack.tar获取密钥
根目录下新建一个文件夹crack
[root@iZ7xv60v17fn0mx988sv53Z ~]# mkdir crack
[root@iZ7xv60v17fn0mx988sv53Z ~]# tar -xvf matlab/Matlab20XXaLinux64Crack.tar.gz -C crack -
在SSH软件左边的文件管理中,可以点开解压文件夹内的readme.txt,第一个出现的安装密钥是我们需要的,开始静态安装:
[root@iZ7xv60v17fn0mx988sv53Z ~]# cd /mnt
[root@iZ7xv60v17fn0mx988sv53Z mnt]# ./iso/install -mode silent -agreeToLicense yes -fileInstallationKey 09806-07443-53955-64350-21751-41297
第一挂载将开始安装,直到出现以下画面:
![image]()
-
需要弹出DVD1加载DVD2,此时不要把之前的关闭了,要保留。再开启一个新的SSH页面:
//弹出
[root@iZ7xv60v17fn0mx988sv53Z mnt]# umount iso
可以用ls查看iso内是否存在挂载。
//继续挂载
[root@iZ7xv60v17fn0mx988sv53Z mnt] sudo mount -t auto -o loop matlab/R2018a_glnxa64_dvd2.iso /mnt/iso
执行完成后,继续安装,直到安装完成:
![image]()
-
最后,删除挂载
![image]()
五、激活破解matlab和导入环境变量
- 激活,复制crack文件中license_standalone.lic到安装目录中
[root@iZ7xv60v17fn0mx988sv53Z ~]# sudo cp crack/license_standalone.lic /usr/local/MATLAB/R2018a/licenses
[root@iZ7xv60v17fn0mx988sv53Z ~]# sudo cp -r crack/R2018a /usr/local/MATLAB
- 破解 将libmwlmgrimpl.so文件复制到安装目录
[root@iZ7xv60v17fn0mx988sv53Z ~]# sudo cp crack/R2018a/bin/glnxa64/matlab_startup_plugins/lmgrimpl/libmwlmgrimpl.so /usr/local/MATLAB/R2018a/bin/glnxa64/matlab_startup_plugins/lmgrimpl/
- 创建软链接
[root@iZ7xv60v17fn0mx988sv53Z ~]# cd /usr/local/bin
[root@iZ7xv60v17fn0mx988sv53Z ~]# ln -s /usr/local/MATLAB/R2018a/bin/matlab matlab
- 导入环境变量
[root@iZ7xv60v17fn0mx988sv53Z ~]# export PATH=/usr/local/MATLAB/R2018a/bin:$PATH
检查一下:

- 运行,成功的结果如下:

可能遇到的错误:
(1)MATLAB is selecting SOFTWARE OPENGL rendering.
Fatal Internal Error: Unexpected exception: 'N5boost16exception_detail10clone_implINS0_39current_exception_std_exception_wrapperISt13runtime_errorEEEE: Bundle#1 start failed: libXt.so.6: cannot open shared object file: No such file or directory' in createMVMAndCallParser phase 'Creating local MVM'
需要下载libXt.so.6:

这里注意,apt和yum适用于不同的linux版本;检查下载:

(2)Error: Activation cannot proceed. You may either:
Set an X11 display, and restart the activation process
Use the silent activation feature
Activate using the license center
重新激活破解matlab。
六、执行matlab程序
-
cd到你存放.m文件的地方,执行:
run('main.m')
如:
![image]()
-
对于需要长时间运行的程序,使用screen 进行离线执行, 请在代码中编写save等命令存储结果。参考:
SSH 远程连接中断程序运行终止解决方法









浙公网安备 33010602011771号