Обеспечение доступности пандо c для пользователя root на linux - PullRequest
0 голосов
/ 16 января 2020

Я пытаюсь визуализировать некоторые .rmd файлы в слайды .pdf beamer из удаленного блока linux. Это будут cron задания, поэтому они будут выполняться su.

. Когда я вошел в систему как мой пользователь, я вижу, что pandoc установлено и мой оператор render() выполняется

enter image description here

Версия pando c, доступная моему пользователю через rmarkdown::pandoc_version(), равна 2.3.1.

enter image description here

Когда я повышаю до пользователя root с sudo su и пытаюсь выполнить операторы render(), я получаю ошибку:

enter image description here

Я ищу pando c как root и получаю ошибку:

enter image description here

Я запускаю R как root и используйте rmarkdown::pandoc_version() и получите

enter image description here

Я пробовал запустить две последние команды на этой странице но это не помогло.

Как я могу сделать пандо c доступным для моего пользователя, также доступным для root?

1 Ответ

3 голосов
/ 16 января 2020

Когда вы изменяете на root, ваш PATH изменяется и больше не включает /usr/local/bin. Из вывода which видно, что он ищет только /sbin, /bin, /usr/sbin и /usr/bin.

Таким образом, вы можете добавить /usr/local/bin к своему пути: как root,

export PATH=$PATH:/usr/local/bin

или вы можете просто запустить pando c с явным путем:

/usr/local/bin/pandoc --version
...