Невозможно открыть MATLAB с помощью sudo в Ubuntu 16.04

Невозможно открыть MATLAB с помощью sudo в Ubuntu 16.04

У меня установлен MATLAB R2017a на Ubuntu 16.04.

Из консоли я могу запустить matlab, успешно запустив программное обеспечение. Однако если я запущу sudo matlabвместо этого , я получу следующую ошибку:

sudo: matlab: command not found

Я получил тот же ответ, запустив сначала , sudo suа затем matlab.

Как это возможно, что я могу запустить его только без sudo? Есть ли sudoконкретный PATH для обновления?

решение1

Да, sudoесть свой secure_path. От man sudoers:

 secure_path   Path used for every command run from sudo.  If you don't
               trust the people running sudo to have a sane PATH environ‐
               ment variable you may want to use this.  Another use is if
               you want to have the “root path” be separate from the “user
               path”.  Users in the group specified by the exempt_group
               option are not affected by secure_path.  This option is not
               set by default.

(обратите внимание, что этоявляетсяустановлено по умолчанию в Ubuntu /etc/sudoers).

Если вы решите изменить его, не забудьте использовать visudoвместо него свой обычный редактор, чтобы не оказаться в затруднительном положении в случае синтаксических ошибок.

Лучшим вариантом может быть создание символической ссылки откуда-то, что уже есть в Ubuntu, sudo secure_pathнапример

$ ls -ld $(which matlab)
lrwxrwxrwx 1 root root 35 Apr 11  2017 /usr/local/bin/matlab -> /usr/local/MATLAB/R2017a/bin/matlab

Лучше всего настроить разрешения устройства так, чтобы не приходилось запускать его matlabкак root.

Связанный контент