Linux环境无root权限无图形界面安装Matlab2018b

https://blog.csdn.net/Jasper_he/article/details/98860071
https://blog.csdn.net/StayFoolish_Fan/article/details/53998734
https://blog.csdn.net/Xiao_Song_PKU/article/details/82700228
https://blog.csdn.net/Mr_Zing/article/details/80245292

MATLAB2018b三个版本,下载其中的Linux版本就行
链接: https://pan.baidu.com/s/1HPscHmYO_hJIEG3EkIO6cA 提取码: wtmy

超算机器上的账号,由于非root用户权限限制,在安装上会比root用户安装多许多限制,使用图形界面也有限制,参考网上教程自己动手安装,记录过程如下,希望对碰到类似困难的朋友有所帮助。
亲测安装过程中不用断网,激活时选择离线激活模式就可以。

下载和解压

下载matlab2018b for linux的iso文件,root用户可以直接挂载查看iso文件,非root用户不能挂载,这里采用7z软件linux版解压,可以直接解压iso文件
下载地址:
http://sourceforge.net/projects/p7zip/files/p7zip/

tar -jxvf p7zip*.tar.bz2

  
  
  • 1

按照安装README说明

mv makefile.linux_any_cpu_gcc_4.X makefile.linux
make all3

  
  
  • 1
  • 2

install文件中更改$DEST_HOME路径
./install
加入环境变量,安装完成

解压命令 7z x *.iso -o destination_dir

  
  
  • 1

命令行界面安装

序列号和破解补丁可以网上搜索下载
安装对应的路径序列号等信息在installer_input.txt指定
激活信息文件activationPropertiesFile(即activate.ini)可以先不指定,后面再激活,license文件也是后面在activate.ini中指定
./install -v -inputFile /absolute_path/installer_input.txt执行安装
其中-v可以输出详细安装信息

安装中出现的问题及其解决方法

1.出现问题:输入安装命令后出现三行

Preparing installation files ...
Installing
Finished!

  
  
  • 1
  • 2
  • 3

但是安装并未进行,未生成任何文件
解决方法参考帖子
https://blog.csdn.net/StayFoolish_Fan/article/details/53998734
问题出现在install脚本调用的install_unix中

eval "$java_cmd 2> /dev/null"

  
  
  • 1

这一行,将丢掉错误信息的命令去掉,改为

eval "$java_cmd"

  
  
  • 1

这样可以看到报错信息,便于查错
更改后发现sys/java/jre/glnx86/jre/bin/java路径下的java缺少可执行权限的问题
到相应路径下,执行chmod +x java
2.出现问题:缺少Java库libjli.so
解决方法:到/usr路径下执行

find ./ -name libjli.so

  
  
  • 1

然后将对应的路径加入到LD_LIBRARY_PATH中
3.出现问题

Error: missing `server' JVM at `/tmp/mathworks_55825/sys/java/jre/glnxa64/jre/lib/amd64/server/libjvm.so'.
Please install or use the JRE or JDK that contains these missing components.

  
  
  • 1
  • 2

java问题频发,看来要重装jdk了
下载jdk7,解压,由于是预先编译好的文件,设置环境变量即可使用

export JAVA_HOME=your_path
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH

  
  
  • 1
  • 2
  • 3

安装jdk以后,依旧出现各种各样的问题,缺少java库,版本不兼容之类的
最终解决方式:(重要!针对网上各类帖子未解决的问题的最终方案)
到iso解压生成的文件夹中,进入目录
sys/java/jre/glnxa64/,执行如下命令

mv jre jre_backup
cp -r your_jdk7_path/jre ./

  
  
  • 1
  • 2

即使用新安装的jdk中的jre库替换matlab的iso安装包中的jre库,再重新执行安装,再也没有java的库的错误了,折腾了大半天的问题顺利解决!!!分析原因是matlab安装包中自带了jre的库,但是这些库存在各种各样的问题,而安装程序默认是调用安装包中的库,所以我们即使重新安装jdk依然无效。而用我们新安装的库替换原来的库后,问题得到圆满解决。
默认完整安装所有组件,耗时近5个小时,安装完成后提示还有一些需要的库如下,后面需要再安装了。

Your installation may require additional configuration steps.
  1. The following products require a supported compiler:

Stateflow 9.2
Simulink Coder 9.0
MATLAB Coder 4.1
Simulink Test 2.5

  1. Simulink requires a C compiler for simulation acceleration, model reference, and MATLAB Function Block capabilities. It is recommended that you install a supported compiler on your machine.

  2. To accelerate computations with the following products, a supported compiler is required:

SimBiology 5.8.1
Fixed-Point Designer 6.2

  1. MATLAB Compiler SDK 6.6 requires the following:

● a supported compiler for creation of C and C++ Shared libraries
● a Java JDK for creation of Java packages

(Aug 09, 2019 04:32:53) Exiting with status 0
(Aug 09, 2019 04:32:57) End - Successful.
Finished

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

最后用网上下载的license文件激活

在activate.in中设置
isSilent=true
activateCommand=activateOffline
licenseFile=/your_path/license_standalone.lic
执行命令
/install_path/bin/activate_matlab.sh -propertiesFile /your_src_path/activate.in

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

成功激活,在~/.bashrc中添加环境变量

export PATH="/your_install_path/bin:$PATH"

 
 
  • 1

最后将激活文件夹中的文件覆盖安装目录中的文件即可完成。
matlab命令行运行不启动图形界面

matlab -nodisplay

 
 
  • 1

加入.bashrc别名

alias matlabnd="matlab -nodisplay"

 
 
  • 1

-nodesktop 启动jvm(Jave Virtual Machine),不启动desktop,但help 界面,preferences界面等仍可通过cmdline 调出,即jvm启动但不启动desktop,可以启动其他显示;但是matlab不会在cmd history记录本次执行的命令
-nodisplay 启动jvm,不启动desktop,不启动任何显示相关,忽略任何DISPLAY 环境变量;即jvm启动但不能显示
-nojvm 不启动jvm,则与之相关的一切活动将无法进行,包括图形界面显示,help 界面,preferences界面等 即jvm不启动故不能显示
-nosplash 只是不显示启动时的log画面,jvm,desktop等正常启动

                                </div>

https://blog.csdn.net/StayFoolish_Fan/article/details/53998734

       这篇博客主要介绍无root权限的时候在linux下安装matlab2016b遇到的一些问题。顺便感慨一下:身边总有很多牛逼的人一句话就能点破困惑你好几天的问题。

       最近跑算法需要在服务器上进行,所以matlab就需要在linux上安装,我这里的是ubuntu14.04,matlab版本为2016b。弄了几天,都是各种permission denied ,而且还有些时候还没有提示,怎么也不知道问题出现在哪里。还好身边大神比较多,顺利解决。

       这篇文章主要讲自己遇到的一些问题,不讲流程,大家可以看参考链接,若遇到相应问题再来看看这篇文章中有没有。主要参考链接如下:

ubuntu16.04安装matlab 2016b教程【root安装,且有matlab2016b_linux安装包】

ubuntu上matlab的安装【很幸运他没有碰到什么permission denied的问题】

1:无root权限如何解决解压缩问题

       (1)在windows下面解压缩然后上传服务器。(我采用的是这种)

       (2)mount挂载iso文件需要root权限,下面给个链接,里面提到了几种无root权限解压缩iso文件的方法。 http://superuser.com/questions/180744/how-do-i-extract-an-iso-on-linux-without-root-access

2:各种permission denied问题

       (1)./install:premission deind 。解决方法: 在install文件所在文件夹下执行:chmod 777 install 就可以了。也就是给了install文件可执行权限。

       (2)./install: 1: exec: /home/xxx/R2016b/bin/glnxa64/install_unix: Permission denied 。解决方法:和(1)一样,切换到install_unix文件所在的路径下,执行chmod 777 install_unix就好了。

       (3)install :1:eval:/tmp/mathworks_6992/sys/java/jre/glnx86/jre/bin/java:permission deined 。这是最让我头疼的一个问题,不是因为问题本身难,而是这个错误提示没有打印出来而我怎么也发现不了。师兄建议我看了下install和install_unix的脚本文件,师兄点拨了下才解决的。解决方法:切换到安装包下对应的sys/java/jre/glnx86/jre/bin/java路劲,执行chmod +x java就好了。

       (4)最后在复制crack文件夹/R2016b/bin/glnxa64下的四个文件到安装目录下的/bin/glnxa64中时出现了cp : cannot create regular file 'xxxxxxxx':permission deined问题。解决方法:直接执行chmod -R 777 path就可以搞定了。其中path为对应文件夹的绝对路径。

3:install和install_unix脚本文件

       其实在matlab安装的过程中实际上是通过执行脚本文件install来安装的,而install实际上是调用了install_unix来执行的,真正的java安装指令是在install_unix中。

      文件中相关的bash语法就不细说了,自己也刚刚接触,就说一下为何上面第3个permission deined没有提示,关键在这一句:eval "$java_cmd 2> /dev/null" 。这后面的2> /dev/null是指如果你的命令出错的话,错误报告就直接删除了,不会显示在屏幕下,或者以邮件的形式发给你了。将这条指令改为eval "$java_cmd" 后就可以在屏幕看到上面这个错误了。


      总结一下,困惑自己这么久的不是这些permission deined如何解决,而是自己对这些bash脚本文件不熟悉,得花点时间学学这个linux基本技能bash了。





linux下无图形界面安装matlab,也称静默安装

(由于环境的差异以及matlab的版本差异,在网上搜寻一顿材料,感谢文后的几个参考链接,虽然说每一个单独安装未成功,但是整合了一下,还是成功的安装了,总结一下)

安装环境ubuntu16.04

matlab版本:2017b / 2019b

一、下载matlab2017 linux的破解版安装包(感谢参考1中的安装包分享:链接:https://pan.baidu.com/s/1wijZCXIWsNXgz0yYYBXHnQ 密码:e8b2 ),并解压 。(2019b下载链接:https://pan.baidu.com/s/1pIuXfxuzEjWm1IOJ_JgPnA 提取码:hCYZ  复制这段内容后打开百度网盘手机App,操作更方便哦)

二、挂载镜像(挂载步骤均一致)

  • mount -o loop R2017b_glnxa64.iso /media/matlab   (/media/matlab是挂载路径)

三、安装

  • 进入/media/matlab目录安装

  • ./install -mode silent -fileInstallationKey 09806-07443-53955-64350-21751-41297 -agreeToLicense yes -activationPropertiesFile /home/gpu-server02/software/MATLAB_R2017b_Linux/MATLABR2017b_Linux_Crack/activate.ini -destinationFolder /usr/local/matlab2017b

    <ul><li>
    	<p>说明:/home/gpu-server02/software/MATLAB_R2017b_Linux/MATLABR2017b_Linux_Crack/activate.ini是/media/matlab/activate.ini复制过来并且进行修改的(先进行复制,然后修改写权限:用chmod +w,因为直接修改/media/matlab/activate.ini不能成功,所以复制一份再修改),修改的内容如下所示:(注意:对应的激活文件路径以及激活码(在自己下载的matlab安装包中,以license为字眼进行寻找。2019b的Key在readme.txt里面))</p>
    	</li>
    	<li>
    	<p>-------/home/gpu-server02/software/MATLAB_R2017b_Linux/MATLABR2017b_Linux_Crack/activate.ini修改后的内容-------------</p>
    	</li>
    	<li>
    	<p><img alt="" class="has" height="819" src="https://img-blog.csdn.net/2018091411261161?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1hpYW9fU29uZ19QS1U=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70" width="866"></p>
    	</li>
    </ul></li>
    <li>
    <p>然后显示安装完成,即为成功安装。</p>
    </li>
    

四、激活(可能是为了防止第一次启动需要激活吧,原因不清楚,保险起见再使用activate_matlab.sh激活一次)

  • 进入目录:/usr/local/matlab2017b/bin

  •  ./activate_matlab.sh -propertiesFile /home/gpu-server02/software/MATLAB_R2017b_Linux/MATLABR2017b_Linux_Crack/activate.ini

  • 显示静默激活成功(Slient activation succeeded),完成激活

五、破解(如果是破解版的。当前分享的版本,2017b是破解版的;2019b不是破解版的,但是必须要复制license_standalone.lic)

  • rm -rf /usr/local/matlab2017b/bin/glnxa64/libmwservices.so (2017b执行)

  • cp /home/gpu-server02/software/MATLAB_R2017b_Linux/MATLABR2017b_Linux_Crack/libmwservices.so /usr/local/matlab2017b/bin/glnxa64/   (2017b执行)

  • cp /home/gpu-server02/software/MATLAB_R2017b_Linux/MATLABR2017b_Linux_Crack/license_standalone.lic /usr/local/matlab2017b/licenses/    (2017b以及2019b都要执行)

  • 安装2019b注意:在matlab2019b的安装路径里面找不到licenses,这里直接在安装路径下mkdir licenses,然后再进行cp操作

  • 安装2019b注意:需要将安装包里面的glnxa64复制到安装包的bin路径下:cp -a /home/gpu-server02/software/MATLAB_R2019b_linux/Matlab_R2019b_Linux64_Crack/R2019b/bin/glnxa64 /usr/local/matlab2019b/bin/ (假如安装2019b的路径是/usr/local/matlab2019b)

六、去挂载(不知道为什么,开始我安装的差不多的步骤,不能成功,后来把挂载去掉,就成了。反正这么操作吧)

  • umount -l /media/matlab/

七、配置

  • 打开~/.bashrc,在后面加上(/usr/local/matlab2017b是matlab安装目录):

    <ul><li>
    	<p>alias matlab='/usr/local/matlab2017b/bin/matlab'</p>
    	</li>
    </ul></li>
    <li>
    <p>打开/etc/bash.bashrc,在后面添加path&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</p>
    
    <ul><li>export PATH=/usr/local/matlab2017b/bin${PATH:+:${PATH}}</li>
    </ul></li>
    
  • source ~/.bashrc 使其生效

八、启动

  • 直接在命令行输入matlab就OK(配置~/.bashrc后就可以随便在任意目录下运行matlab)

  • 利用sh等等调用matlab也OK(配置了/etc/bash.bashrc,被全局变量文件/etc/profile调用)

 

大功告成(不容易啊)

 

参考:

https://blog.csdn.net/qq_32892383/article/details/79670871

https://blog.csdn.net/fengtian12345/article/details/80198796

https://www.cnblogs.com/vincent-vg/p/8053152.html

MATLAB R2016b 静默安装、激活(Ubuntu 16.04)

概要

无图形界面环境下,静默安装、激活MATLAB。R2016b的iso安装包分两份,静默安装时需要合并为一份,否则要处理换碟问题。

注意:本文的所有命令使用root权限执行。

系统环境

Ubuntu 16.04

文件准备

下载安装包(放置在”~/Matlab/”目录下):
1. R2016b_glnxa64_dvd1.iso
2. R2016b_glnxa64_dvd2.iso

准备激活码及激活证书。

解压安装文件

本文使用7zip作为解压工具,分别解压两个dvd,得到R2016b_installerR2016b_dvd2两个文件夹。

# 安装7-Zip准备解压
apt-get install p7zip-full -y
# 定义安装路径,准备解压两个DVD
MATLAB_HOME=/usr/local/MATLAB
# dvd1
mkdir -p "${MATLAB_HOME}/R2016b_installer"
7z x ~/Matlab/R2016b_glnxa64_dvd1.iso -r -o"${MATLAB_HOME}/R2016b_installer"
# dvd2
mkdir -p "${MATLAB_HOME}/R2016b_dvd2"
7z x ~/Matlab/R2016b_glnxa64_dvd2.iso -r -o"${MATLAB_HOME}/R2016b_dvd2"
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

然后将dvd2中的archives文件夹合并到dvd1的archives文件夹中,再将隐藏文件.dvd2复制到dvd1的文件夹中,完成文件合并。

# 合并
rsync -a --progress "${MATLAB_HOME}/R2016b_dvd2/archives/" "${MATLAB_HOME}/R2016b_installer/archives"
mv "${MATLAB_HOME}/R2016b_dvd2/.dvd2" "${MATLAB_HOME}/R2016b_installer/"
# 清理一下dvd2
rm "${MATLAB_HOME}/R2016b_dvd2" -rf
 
 
  • 1
  • 2
  • 3
  • 4
  • 5

创建安装所需文件

创建${MATLAB_HOME}/etc文件夹,将激活文件解压到里面。

### 准备激活文件 ###
apt-get install unrar -y
mkdir -p "${MATLAB_HOME}/etc"
unrar x ~/Matlab/Matlab-2016b-Linux64-Crack.rar "${MATLAB_HOME}/etc"
 
 
  • 1
  • 2
  • 3
  • 4

创建安装配置installer_input.txt,静默安装时使用-inputFile参数将其传给安装程序。解压出来的安装文件中有installer_input.txt文件的模板,具体参数意义可以参照该模板的说明。这里要注意的是,很多教程里配置文件中有#开头的“注释”,这种不合法的语句会导致静默安装失败,启动图形界面进行安装。
在下面的安装配置中,重点关注:
1. destinationFolder(MATLAB安装路径)
2. fileInstallationKey(激活码,和激活证书文件配对,注意别用到Matlab Production Server的)
3. activationPropertiesFile(激活脚本,待会创建)
4. licensePath(激活证书文件路径,和激活码配对)

### 写入安装配置 ###
MATLAB_INSTALLER_INPUT="${MATLAB_HOME}/etc/installer_input.txt"
touch "${MATLAB_INSTALLER_INPUT}"
echo "destinationFolder=${MATLAB_HOME}/R2016b"                  >> "${MATLAB_INSTALLER_INPUT}"
echo "fileInstallationKey=09806-07443-53955-64350-21751-41297"  >> "${MATLAB_INSTALLER_INPUT}"
echo "agreeToLicense=yes"                                       >> "${MATLAB_INSTALLER_INPUT}"
echo "outputFile=/tmp/mathwork_install.log"                     >> "${MATLAB_INSTALLER_INPUT}"
echo "mode=silent"                                              >> "${MATLAB_INSTALLER_INPUT}"
echo "activationPropertiesFile=${MATLAB_HOME}/etc/activate.ini" >> "${MATLAB_INSTALLER_INPUT}"
echo "licensePath=${MATLAB_HOME}/etc/license_standalone.lic"    >> "${MATLAB_INSTALLER_INPUT}"
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

创建激活文件activate.ini,安装结束后,使用激活程序的-propertiesFile参数将其传入。其中licenseFile为激活证书文件路径。

### 写入激活配置 ###
MATLAB_INSTALLER_ACTIVATE="${MATLAB_HOME}/etc/activate.ini"
touch "${MATLAB_INSTALLER_ACTIVATE}"
echo "isSilent=true"                                         >> "${MATLAB_INSTALLER_ACTIVATE}"
echo "activateCommand=activateOffline"                       >> "${MATLAB_INSTALLER_ACTIVATE}"
echo "licenseFile=${MATLAB_HOME}/etc/license_standalone.lic" >> "${MATLAB_INSTALLER_ACTIVATE}"
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

开始安装

修改文件权限,保证安装程序顺利运行。

mkdir -p "${MATLAB_HOME}/R2016b"
chmod +x "${MATLAB_HOME}/R2016b_installer/install"
chmod +x "${MATLAB_HOME}/R2016b_installer/bin/glnxa64/install_unix"
chmod +x "${MATLAB_HOME}/R2016b_installer/sys/java/jre/glnxa64/jre/bin/java"
chmod +w "${MATLAB_INSTALLER_INPUT}"
chmod +w "${MATLAB_INSTALLER_ACTIVATE}"
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

启动安装程序。

# 安装!
${MATLAB_HOME}/R2016b_installer/install -inputFile "${MATLAB_INSTALLER_INPUT}"
 
 
  • 1
  • 2

拷贝新文件以激活。注意激活脚本的-isSilent参数,保证该脚本不会执行图形化激活程序。

# 备份后拷贝新文件
mv "${MATLAB_HOME}/R2016b/bin/glnxa64/libmwservices.so" "${MATLAB_HOME}/R2016b/bin/glnxa64/libmwservices.so.bak"
mv "${MATLAB_HOME}/R2016b/bin/glnxa64/libinstutil.so" "${MATLAB_HOME}/R2016b/bin/glnxa64/libinstutil.so.bak"
mv "${MATLAB_HOME}/R2016b/bin/glnxa64/libmwlmgrimpl.so" "${MATLAB_HOME}/R2016b/bin/glnxa64/libmwlmgrimpl.so.bak"
cp "${MATLAB_HOME}/etc/R2016b/bin/glnxa64/libmwservices.so" "${MATLAB_HOME}/R2016b/bin/glnxa64/libmwservices.so"
cp "${MATLAB_HOME}/etc/R2016b/bin/glnxa64/libinstutil.so" "${MATLAB_HOME}/R2016b/bin/glnxa64/libinstutil.so"
cp "${MATLAB_HOME}/etc/R2016b/bin/glnxa64/libmwlmgrimpl.so" "${MATLAB_HOME}/R2016b/bin/glnxa64/libmwlmgrimpl.so"

# 激活!
${MATLAB_HOME}/R2016b/bin/activate_matlab.sh -isSilent -propertiesFile "${MATLAB_INSTALLER_ACTIVATE}"
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

写入PATH变量。

### 写入PATH ###
echo "export PATH=${MATLAB_HOME}/R2016b/bin:$PATH" >> /etc/profile
source /etc/profile
 
 
  • 1
  • 2
  • 3

收工

echo "收工!"
exit 1
 
 
  • 1
  • 2
  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值