linux docker容器安裝matlab2016b
1. 相關安裝包下載
下載連結:
連結:https://pan.baidu.com/s/1CCejA9eJIiPdFB8EyJv9Jw
提取碼:2vhs
2. 將下載的檔案傳到linux
有兩個方法
1. winscp+docker cp
winscp 客戶端自己下載
docker cp ./path-to-Linux/ container_name:/container-path-Linux
note:path-to-Linux指的是雲盤下載的matlab2016b安裝包檔案地址
2. winscp+docker run時掛載目錄
winscp 客戶端自己下載
docker run -v./path-to-Linux/ container_name:/container-path-Linux --name .......
note:docker run 後面必要的引數自己查,執行此命令是要新增 --privileged=True特權引數,否則會報錯
- 可能會出現的錯誤:mount: /media/matlab/: mount failed: Operation not permitted
原因是在拉取容器是沒有新增--privileged=True特權引數,為matlab執行不受記憶體限制,可以將引數Shm-Size設的大一點
3. matlab2016映象掛載
沒有mount命令的可以使用apt-get 安裝
sudo mkdir /media/matlab
sudo mount -o loop R2016b_glnxa64_dvd1.iso /media/matlab/
可能存在的問題:mount: /media/matlib: WARNING: device write-protected, mounted read-only
原因:R2016b_glnxa64_dvd1.iso檔案的許可權不夠
執行: chmod 775R2016b_glnxa64_dvd1.iso 即可,後面再掛載dvd2的時候也要有類似的操作
4. matlab的安裝及破解
sudo mkdir /usr/local/MATLAB # 構建安裝路徑 sudo /media/matlab/install -mode silent -fileInstallationKey 09806-07443-53955-64350-21751-41297 -agreeToLicense yes -activationPropertiesFilehome /path-to-Linux/R2016b/license_standalone.lic -destinationFolderhome /usr/local/MATLAB
可能存在的問題:Error: The Installer cannot be run from inside the DVD directory. Change to your home directory
原因:出現這個問題的主要原因是你cd到了install 的目錄下,返回到上級目錄重新執行就可以了。
當出現 Info: Eject DVD 1 and insert DVD 2 to continue. 開啟一個新的終端執行類似dvd1映象的操作一樣掛載dvd2映象到/media/matlab。就會繼續安裝。
出現以上資訊,表示安裝成功!
破解:
1. 將該路徑下的四個檔案複製並替換安裝目錄下的檔案
sudo cp /path-to-Linux/matlab_2016b/R2016b/bin/glnxa64/* /usr/local/MATLAB/R2016b/bin/glnxa64
2.構建licenses目錄,並將許可證檔案複製到安裝目錄下
sudo mkdir /usr/local/MATLAB/R2016b/licenses
sudo cp /path-to-Linux/Crack/license_standalone.lic /usr/local/MATLAB/R2016b/licenses
cd /usr/local/MATLAB/R2016b/bin
3. 啟用
./matlab -chome /usr/local/MATLAB/R2016b/licenses/license_standalone.lic
至此啟用完成。
設定環境變數
開啟配置檔案
sudo vim ~/.bashrc
新增以下內容
export PATH=/usr/local/MATLAB/R2016b/bin:$PATH
使修改的配置檔案生效
source ~/.bashrc
後續安裝過程出現問題再來補充
參考:https://blog.csdn.net/u014535579/article/details/78793028