1.安装前准备
1.1首先下载好安装过程需要用到的文件:
(1)下载MATHWORKS_R2014A.iso(下载地址请网搜);
(2)下载Matlab2014a for Linux安装包的破解包(下载地址:点击打开链接);
(3)下载jdk-7u71-linux-x64.tar(下载地址:http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html#jdk-7u71-oth-JPR,注意:matlab2014a在jdk8似乎不能安装,我没有验证,建议安装jdk7);
(4)下载caffe镜像,创建并进入caffe容器(过程略,不清楚的可参考docker文档)
注意:创建caffe容器时要加上--privileged参数,如"docker run --name wxb-caffe -it --privileged wxb/caffe /bin/bash",否则在第(7)步挂载matlab镜像时会出现"mount:could not find any loop device"错误。
(5)将上面下载好的三个文件拷贝到caffe容器的某个目录下,我拷贝到了/root目录(其他目录也可以)。
注:将你电脑中的文件拷贝到容器中时,参考下面的步骤(我是将自己电脑上的这三个文件拷贝到实验室服务器上运行的容器中)
a.用SecureCRT将本地电脑上的文件传输到服务器中,对于比较小(小于4G)文件,例如这里的jdk安装文件,可参考http://blog.csdn.net/ithomer/article/details/9503123。而对于大于4G的文件rz命令就不行了,这时可以用SecureCRT自带的SFTP来完成传输,具体方法是点击File->Connect SFTP Session或者按ALT+P,然后键入命令"put 文件在本地电脑中的位置"即可。例如"put E:\1_soft\savefile\MATHWORKS_R2014A.iso";
b.在服务器中,先退出容器,然后用命令"docker cp 文件在服务器中的位置 容器名:文件在容器中的位置"将服务器中的文件拷贝到容器中。例如我的MATHWORKS_R2014A.iso文件存放在/home/wxb/soft中,要将它拷贝到容器名为wxb-caffe的某个目录下(我的放在了/root目录),则用下面的命令:docker cp /home/wxb/soft/MATHWORKS_R2014A.iso wxb-caffe:/root即可。
(6)所有三个文件都拷贝到容器内后,解压破解包到/root/Crack文件中
(7)将下载好的iso文件挂载。方法是进入/root目录,然后键入下面的命令进行挂载:
mount -o loop MATHWORKS_R2014A.iso /media/cdrom
由于我是在caffe容器中安装matlab2014a,挂载时出现"mount point media cdrom does not exist"错误,不用担心,只需要用mkdir命令创建/media/cdrom文件夹即可,然后从新挂载就会成功。
1.2 安装JDK
(1)用命令tar -xzvf jdk-7u71-linux-x64.tar.gz将其解压,然后用下面的命令将jdk1.7.0_71移动到/usr/lib/jvm/jdk1.7.0_71中:
mv jdk1.7.0_71 /usr/lib/jvm/jdk1.7.0_71
(2)设置环境变量
vim /etc/profile
在文件末尾添加
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_71
保存并推出,然后使用下面的命令是设置生效
source /etc/profile
修改系统的默认jdk
update-alternatives --install/usr/bin/java java /usr/lib/jvm/jdk1.7.0_71/bin/java 300
update-alternatives --install/usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_71/bin/javac 300
update-alternatives --config java
update-alternatives --config javac
输入java -version,看到如下信息则表明设置成功
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build1.7.0_71-b14)
Java HotSpot(TM) 64-Bit Server VM (build24.71-b01, mixed mode)
1.3 创建安装目录
mkdir -p /usr/local/matlab/etc
mkdir -p /usr/local/matlab/2014a
2.安装Matlab
2.1 编辑配置文件
将配置文件拷贝到/usr/local/matlab/etc中,命令如下:
cp /media/cdrom/installer_input.txt /usr/local/matlab/etc
cp /media/cdrom/activate.ini /usr/local/matlab/etc
cp ~/Downloads/Crack/ /usr/local/matlab/etc
修改文件的读写属性,命令如下:
chmod +w/usr/local/matlab/etc/installer_input.txt
chmod +w /usr/local/matlab/etc/activate.ini
编辑installer_input.txt文件,按如下内容设置配置项:
destinationFolder=/usr/local/matlab/2014a #安装目录
fileInstallationKey= 12345-67890-12345-67890#序列号,似乎可以随便写
agreeToLicense=yes #同意协议
outputFile=/tmp/mathwork_install.log #安装日志
mode=silent #开启无人值守安装
activationPropertiesFile=/usr/local/matlab/etc/activate.ini#激活文件
licensePath= /usr/local/matlab/etc/license_405329_R2014a.lic#license文件
编辑activate.ini文件,按如下内容设置
isSilent=true #开启silent模式
activateCommand=activateOffline #设置激活方式,离线激活 无需联网
licenseFile=/usr/local/matlab/etc/license_405329_R2014a.lic#license文件位置
2.2 安装
执行如下安装命令
/media/cdrom/install -inputFile/usr/local/matlab/etc/installer_input.txt
2.3 激活
安装完成后,对matlab进行破解
mv /usr/local/matlab/2014a/bin/glnxa64/libmwservices.so /usr/local/matlab/2014a/bin/glnxa64/libmwservices.so.bak
cp /root/Crack/Cract/Linux/libmwservices.so /usr/local/matlab/bin/glnxa64/
使用如下命令激活
/usr/local/matlab/2014a/bin/activate_matlab.sh -propertiesFile /usr/local/matlab/etc/activate.ini
2.4 设置环境变量
设置环境变量:
vim /etc/profile
在文件末尾添加
export PATH=/usr/local/matlab/2014a/bin:$PATH
保存并退出后使设置生效:
source /etc/profile
但是,如果以这种方式设置环境变量的话,每次退出容器后再用docker attach命令进入容器时,都需要先source /etc/profile才能使用matlab。为了不至于这么麻烦,可将环境变量添加到.bashrc文件中:
vim .bashrc
在文件末尾添加
export PATH=/usr/local/matlab/2014a/bin:$PATH
保存后退出即可,从此每次进入容器后直接键入matlab命令就可以使用matlab了。
至此安装完成!