我在 下安装了 Matlab /home/fer/Matlab
,主执行文件是/home/fer/Matlab/R2014b/bin/matlab
。它有些奇怪,只有使用 用终端打开它时它才有效sudo
。如果我不使用 sudo 运行它,它会抛出权限错误并关闭(我猜它正在某处读取)。
无论如何,我试图创建一个.desktop
文件以便能够从菜单中打开它,并且因为它需要在 sudo 下运行,所以在 exec 行中我写道:
Exec=gksudo -u root /home/fer/Matlab/R2014b/bin/matlab
当我单击快捷方式时,它会要求我输入密码,然后出现 Matlab 启动画面,然后关闭,什么也没发生。这看起来很像是 Matlab 本身的问题,但我对 .desktop 文件的 exec 行做对了吗?我还需要添加其他内容吗?如果程序需要从终端运行,我能否从桌面文件模拟一个终端?
编辑:正如评论中所问:whoami 输出fer
,Matlab/R2014b 中的所有文件和子目录都归用户fer
和组所有fer
。错误写在 Matlab 窗口中,说 /home/fer/.matlab/R2014b/temp0x... 没有写权限。我将尝试查看该目录。
答案1
剪切并重新措辞@MyUserIsThis 对他的问题的编辑:
好的,我chown
递归地编辑了整个目录,/home/<user>/.matlab
这样我就有写入的权限,并且它已修复。
顺便说一句,以防其他人遇到这种情况,桌面文件的 exec 行应该包含-desktop
脚本在未从终端调用时正常工作的选项:
Exec=/home/<user>/Matlab/R2014b/bin/matlab -desktop