Matlab 安装程序空间不足

Matlab 安装程序空间不足

我正在尝试通过官方安装脚本使用 Arch linux 安装 Matlab。一切工作正常,选择所有组件后开始下载。现在的问题是,显然安装程序将下载的内容放入 /tmp 中,我已为其分配了 4GB(我的 ram 的一半)。到目前为止,这从来都不是问题。大约在安装/下载进行到 25% 时,安装程​​序会出现错误,指出 /tmp 中没有剩余空间。我在开始安装之前检查了目录,它有 4GB 的可用空间。

我可以将另一个目录重定向到有足够空间的安装程序吗,因为驱动器上有足够的可用空间?安装程序要求提供安装目录,但没有给我选择此目录的选项。

答案1

如果安装程序不支持TMPTMPDIR环境变量,正如@thrig 在他们的答案中指出的那样,并且/tmp分区/ramdisk 本身太小,那么只需在其上安装其他东西:

mkdir "$HOME/matlabdl"
mount --bind -o nonempty "$HOME/matlabdl" /tmp

与普通挂载相反,--bind挂载采用现有目录并将其挂载在不同的位置,即在这种情况下,不是下载到通常位于/tmp下载实际进入的ramdisk 中$HOME/matlabdl-o nonempty确保即使不为空也会进行安装/tmp,这通常是需要的。

安装完成后,再次卸载/tmp:

umount /tmp

这将使 ramdisk 再次可见。如果某些进程仍在使用您覆盖的进程/tmp,请使用诸如 之类的工具查找它是哪个进程lsof

答案2

安装程序会matlab_R2018b_glnxa64.zip忽略TMP并忽略TMPDIR,而是直接使用/tmp。完整下载大小为 9597 MB,安装后为 27 GB。一种方法是多次执行安装程序,并且仅安装集合的子集,以便/tmp使用永远不会超出您的限制。另一种是使用一个LD_PRELOAD技巧让它写到其他地方。另一种方法是在安装 GUI 开始下载后暂停下载,然后:

% cd /tmp
% ls | grep -v systemd
hsperfdata_jhqdoe
mathworks_24989
mathworks_jhqdoe.log
mathworks_jhqdoe.log.lck
tmw1537542523097
% mv tmw1537542523097 /some/where/with/space
% ln -s /some/where/with/space tmw1537542523097

然后取消暂停安装程序。

相关内容