Мне установили MATLAB R2017a на Ubuntu 16.04.
От консоли я могу работать matlab
, успешно запуск программного обеспечения. Однако, если я работаю sudo matlab
вместо этого, я получаю следующую ошибку:
sudo: matlab: command not found
Я получил тот же ответ путем выполнения сначала sudo su
и затем matlab
.
Как возможно, что я могу только выполнить его без sudo
? Есть ли a sudo
- определенный ПУТЬ к обновлению?
Да, sudo
имеет свои secure_path
. Из man sudoers
:
blockquote>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.