
1. 为什么 Linux 下装 MATLAB 值得单独写一篇在 Linux 上装 MATLAB 这件事说简单也简单说折腾也真能折腾掉一整个下午。我见过太多人卡在三个地方一是下载下来的 ISO 镜像不知道怎么挂载二是安装完了终端里敲matlab提示 command not found三是装完发现启动器里没有图标、每次都得手动进安装目录去点。这三个问题本质上都不是 MATLAB 本身的问题而是 Linux 的文件系统逻辑和 Windows 完全不一样导致的。这篇内容面向的是有一定 Linux 基础、但没在 Linux 上装过 MATLAB 的开发者或者之前装过但装得不太顺、想重新理一遍流程的人。我会从 ISO 镜像的获取和校验开始一路讲到安装、环境变量配置、桌面快捷方式创建最后把常见的坑和排查方法整理出来。整个过程我会给出具体的命令和参数你照着敲基本不会出问题。需要提前说明的是MATLAB 是商业软件你需要有合法的授权学校邮箱注册的账号、公司购买的 License 或者个人版。这篇内容只讨论安装流程本身不涉及任何授权获取的旁门左道。另外我用的环境是 Ubuntu 22.04 LTS其他发行版比如 Fedora、Debian、CentOS在包管理和依赖处理上会有细微差别我会在涉及的地方标注出来。2. 安装前的准备工作别急着挂载 ISO2.1 确认系统架构和磁盘空间第一步不是下载而是先看清楚自己的机器。MATLAB 的安装包体积不小完整安装含所有工具箱能到 30GB 以上就算只装核心组件也要 5-8GB。所以先跑两条命令确认一下uname -m df -h /homeuname -m输出x86_64说明是 64 位系统MATLAB 从 R2016b 之后就不再支持 32 位 Linux 了。df -h /home看的是你打算把 MATLAB 装到哪个分区。默认安装路径是/usr/local/MATLAB/R20xxx这个路径在根分区下所以你要确认根分区有足够空间。如果根分区紧张可以在安装时自定义路径到/home下。我个人的习惯是单独划一个目录比如/opt/matlab然后安装时把路径指过去。这样做的好处是卸载的时候直接删目录就行不会在系统目录里留一堆散落文件。2.2 下载 ISO 镜像与校验MATLAB 的 Linux 版本官方提供的是 ISO 格式的镜像文件。你登录 MathWorks 官网在下载页面选择 Linux 版本会得到一个.iso文件和一个.sha256校验文件。下载完成后第一件事是校验完整性sha256sum -c matlab_R2024a_Linux.iso.sha256如果输出OK说明文件没问题。这一步很多人会跳过但我踩过一次坑下载过程中网络抖动导致 ISO 文件损坏挂载的时候没报错安装到一半才提示某个压缩包解压失败回头重新下载又花了两个小时。所以校验这一步千万别省。注意如果你是从学校或公司内部镜像站下载的校验文件可能和官方的不一致这时候以内部镜像站提供的校验值为准。2.3 安装依赖包MATLAB 在 Linux 上运行需要一些系统库。Ubuntu/Debian 系用apt装Fedora/RHEL 系用dnf。以下是 Ubuntu 下的命令sudo apt update sudo apt install -y libx11-6 libxext6 libxmu6 libxt6 libxpm4 libxft2 \ libgtk-3-0 libnss3 libasound2 libcups2 libxtst6这些包涵盖了图形界面、声音、打印、网络等模块的依赖。如果你装的是最小化系统比如服务器版 Ubuntu这些包大概率都没装不提前装好后面启动 MATLAB 会报各种.so文件找不到的错误。Fedora 系的对应命令是sudo dnf install -y libX11 libXext libXmu libXt libXpm libXft gtk3 nss alsa-lib cups-libs libXtst2.4 挂载 ISO 镜像Linux 下挂载 ISO 不需要额外软件用mount命令就行。先创建一个挂载点sudo mkdir -p /mnt/matlab_iso sudo mount -o loop matlab_R2024a_Linux.iso /mnt/matlab_iso-o loop的意思是把这个文件当成块设备来挂载。挂载成功后ls /mnt/matlab_iso应该能看到install、bin、archives等目录。这里有个细节如果你用的是 Ubuntu 桌面版直接双击 ISO 文件也能挂载系统会自动挂到/media/用户名/下面。但我不推荐这种方式因为自动挂载的路径里有空格和特殊字符后面写脚本的时候容易出问题。手动挂载到/mnt下路径干净操作起来省心。3. 执行安装命令行才是正道3.1 用 install 脚本启动安装程序MATLAB 的安装程序有图形界面和命令行两种模式。图形界面在桌面环境下直接跑就行sudo /mnt/matlab_iso/install但如果你是在远程服务器上装没有图形界面或者图形界面因为显卡驱动问题起不来就用命令行模式sudo /mnt/matlab_iso/install -mode silent -agreeToLicense yes \ -destinationFolder /opt/matlab/R2024a \ -fileInstallationKey 你的安装密钥 \ -licensePath /path/to/license.lic命令行模式适合批量部署但第一次装的话我还是建议用图形界面因为可以直观地选择要安装的工具箱。MATLAB 的工具箱有几十个全装的话磁盘占用很大按需选择比较合理。3.2 安装过程中的关键选择图形界面启动后会依次让你做几个选择安装路径默认是/usr/local/MATLAB/R2024a。如果你想改到/opt/matlab/R2024a直接在这里改。注意路径里不要有中文和空格。许可证选择如果你有 License 文件选第二项“使用文件安装密钥”然后指向你的.lic文件。如果是用账号登录激活选第一项输入 MathWorks 账号密码。工具箱选择这一步是最耗时的。我的建议是如果你不确定用不用某个工具箱先不装后面需要了再通过安装程序添加。核心的 MATLAB 和 Simulink 必装其他的按你的工作领域来。比如做信号处理的装 Signal Processing Toolbox做机器学习的装 Statistics and Machine Learning Toolbox。创建符号链接安装程序会问你要不要在/usr/local/bin下创建matlab的符号链接。一定要选“是”。这样装完之后在任何目录下敲matlab都能启动不用写全路径。3.3 安装完成后的目录结构安装完成后/opt/matlab/R2024a下的目录结构大致是这样的/opt/matlab/R2024a/ ├── bin/ # 可执行文件matlab 和 mex 都在这里 ├── etc/ # 配置文件 ├── extern/ # 外部接口包括 C/C 头文件 ├── help/ # 帮助文档 ├── toolbox/ # 工具箱 ├── sys/ # 系统相关文件 └── licenses/ # 许可证文件bin/目录下有matlab、mex、mcc等命令。mex是用来编译 C/C 扩展的如果你要做混合编程会用到。licenses/目录下放着你的 License 文件如果后面激活出问题可以来这里检查。4. 环境变量配置让终端认识 matlab4.1 PATH 变量的正确加法安装程序如果创建了符号链接/usr/local/bin/matlab会指向/opt/matlab/R2024a/bin/matlab。但有时候安装程序不会自动创建或者你想用特定版本的 MATLAB这时候就需要手动配 PATH。打开你的 shell 配置文件。如果是 bash编辑~/.bashrc如果是 zsh编辑~/.zshrcecho export PATH/opt/matlab/R2024a/bin:$PATH ~/.bashrc source ~/.bashrc注意$PATH要放在后面这样系统会优先使用你指定的 MATLAB 版本。如果你把$PATH放在前面系统可能会找到/usr/bin/matlab如果之前装过旧版本而不是你新装的。验证一下which matlab matlab -versionwhich matlab应该输出/opt/matlab/R2024a/bin/matlabmatlab -version会打印版本信息。如果which找不到说明 PATH 没生效检查一下配置文件里有没有拼写错误。4.2 其他有用的环境变量除了 PATH还有几个环境变量值得配置MATLAB_ROOT指向 MATLAB 安装根目录方便写脚本时引用。export MATLAB_ROOT/opt/matlab/R2024aLD_LIBRARY_PATH如果你要用 MATLAB 的共享库做混合编程需要把这个路径加进去。export LD_LIBRARY_PATH$MATLAB_ROOT/bin/glnxa64:$MATLAB_ROOT/sys/os/glnxa64:$LD_LIBRARY_PATHMLM_LICENSE_FILE指定 License 文件的位置网络许可证环境下会用到。export MLM_LICENSE_FILE27000license_server这些变量不是必须的但配好之后后面做开发会方便很多。我建议一次性写进~/.bashrc省得每次开新终端都要重新设。4.3 多版本共存的处理如果你机器上装了多个版本的 MATLAB比如 R2022b 和 R2024aPATH 里只能有一个版本生效。我的做法是给每个版本建一个别名alias matlab2022export PATH/opt/matlab/R2022b/bin:$PATH matlab alias matlab2024export PATH/opt/matlab/R2024a/bin:$PATH matlab这样想用哪个版本就敲哪个别名。或者更优雅的方式是用update-alternatives来管理但配置起来稍微麻烦一点适合对 Linux 比较熟的人。5. 桌面快捷方式与启动器配置5.1 手动创建 .desktop 文件MATLAB 安装程序在桌面环境下通常会自动创建启动器图标但有时候不会或者创建的位置不对。手动创建一个.desktop文件是最稳妥的方式sudo nano /usr/share/applications/matlab.desktop写入以下内容[Desktop Entry] TypeApplication NameMATLAB R2024a CommentMATLAB R2024a Exec/opt/matlab/R2024a/bin/matlab -desktop Icon/opt/matlab/R2024a/toolbox/shared/dastudio/resources/MatlabIcon.png Terminalfalse CategoriesDevelopment;Science; StartupNotifytrueExec后面的-desktop参数是告诉 MATLAB 以桌面模式启动。Icon的路径指向 MATLAB 自带的图标文件这个路径在不同版本里可能略有不同你可以用find命令找一下find /opt/matlab/R2024a -name *.png | grep -i icon | head -55.2 图标不显示或启动失败的排查.desktop文件写好后有时候图标不显示或者点击没反应。常见原因有三个一是文件权限不对。.desktop文件需要可执行权限sudo chmod x /usr/share/applications/matlab.desktop二是Exec路径写错了。用ls确认一下matlab可执行文件确实在那个位置。三是桌面环境缓存没刷新。GNOME 下可以跑update-desktop-database ~/.local/share/applications如果还是不行把.desktop文件复制到~/.local/share/applications/下试试这是用户级别的应用目录优先级比系统级的高。6. 常见问题与排查技巧实录6.1 启动时报 libXp.so.6 找不到这是最经典的问题。MATLAB 依赖一个叫libXp的老库新版的 Ubuntu 默认不装。解决方法sudo apt install libxp6如果 apt 源里没有这个包Ubuntu 22.04 之后确实移除了可以从旧版本的 deb 包里提取或者用libxp6的替代方案。我实测下来Ubuntu 22.04 上直接装libxp6会提示找不到包这时候可以手动下载 deb 包安装wget http://archive.ubuntu.com/ubuntu/pool/main/libx/libxp/libxp6_1.0.2-2_amd64.deb sudo dpkg -i libxp6_1.0.2-2_amd64.deb6.2 终端启动 MATLAB 后没有图形界面如果你在终端敲matlab后只出现命令行提示符没有弹出图形窗口大概率是DISPLAY环境变量没设对。检查一下echo $DISPLAY正常应该输出类似:0或:1。如果是空的说明当前 shell 没有连接到图形会话。如果你是通过 SSH 登录的需要加上-X或-Y参数开启 X11 转发ssh -X userhost然后在远程终端里启动 MATLAB窗口会转发到你本地。不过 X11 转发下 MATLAB 的响应速度会比较慢适合临时用一下长期使用还是建议本地安装。6.3 安装过程中提示“无法写入目标目录”这个错误通常是因为权限不够。如果你用sudo启动安装程序但目标目录的所有者是普通用户就会出这个问题。解决方法是确保目标目录的权限正确sudo mkdir -p /opt/matlab sudo chown $USER:$USER /opt/matlab然后再运行安装程序。或者干脆用sudo安装到/usr/local/MATLAB这个目录默认就是 root 所有不会有权限冲突。6.4 卸载 MATLAB 的正确姿势MATLAB 没有提供卸载脚本卸载就是删目录。但删之前要先确认没有正在运行的 MATLAB 进程pkill -f matlab sudo rm -rf /opt/matlab/R2024a然后清理一下配置文件rm -rf ~/.matlab rm -rf ~/.MathWorks~/.matlab目录下放着你的个人配置、历史命令、自定义路径等。如果你打算重装后保留这些配置可以先备份再删。6.5 常见问题速查表问题现象可能原因解决方法启动报 libXp.so.6 缺失系统缺少 libXp 库安装 libxp6 包终端敲 matlab 无反应PATH 未配置检查 ~/.bashrc 中的 PATH图形界面不弹出DISPLAY 未设置检查 DISPLAY 变量或使用 ssh -X安装时提示权限不足目标目录所有者不对chown 修改目录所有者启动器图标不显示.desktop 文件权限或路径错误chmod x 并检查 Exec 路径安装到一半失败ISO 文件损坏重新下载并校验 sha256多版本冲突PATH 中有多个 matlab用别名或 update-alternatives 管理7. 装完之后值得做的几件事MATLAB 装好只是第一步后面还有几件事做了会舒服很多。第一是配置 MATLAB 的默认工作目录。默认是~/MATLAB你可以改成自己的项目目录。在 MATLAB 里跑userpath(/home/你的用户名/projects/matlab)就行下次启动会自动切过去。第二是设置matlab命令的启动参数。如果你觉得启动速度慢可以加-nosplash跳过启动画面加-nodesktop直接进命令行模式。我平时做脚本开发就用matlab -nodesktop -nosplash需要图形界面的时候再开完整的。第三是检查工具箱的 License 状态。在 MATLAB 命令行里跑ver可以列出所有已安装的工具箱和对应的 License 状态。如果某个工具箱显示未授权说明安装时选的 License 不包含它需要单独处理。第四是配置代码的字体和配色。MATLAB 默认的字体在 Linux 下有时候会发虚进 Preferences - Fonts 改成DejaVu Sans Mono或者JetBrains Mono字号调到 12-14看起来会舒服很多。我在实际使用中的体会是Linux 下 MATLAB 的稳定性比 Windows 好不少尤其是跑长时间计算任务的时候不会因为系统更新或者杀毒软件扫描导致中断。但图形界面的响应速度确实不如 Windows 流畅这跟 Linux 的图形栈有关系不是 MATLAB 本身的问题。如果你主要做数值计算和脚本开发Linux 下的体验是很好的如果重度依赖 Simulink 做图形化建模可能还是 Windows 更顺手一些。