команда екрана, викликана всередині сценарію, в команді "su -c" створює файли в кореневій директорії


0

Я виконую цей скрипт із кореня користувача в каталозі "/":

su -c "sh /home/bob/start_server.sh" bob

і "start_server.sh" містить

screen -d -m -S serverscreen mono startserver.exe

Однак усі файли, створені "startserver.exe", створюються в кореневому каталозі "/", тому він виходить з ладу (я думаю, через проблеми з дозволом, оскільки він працює, якщо я перейшов до "/ home / bob" перед тим, як викликати "u -c "командний рядок)

Я перевірив посібник на команду "su", але підказки там не знайшов.

Чи може бути, що "екран" скидає поточний каталог і виконує з "/" замість "/ home / bob"?


1
Я не знайомий з моно, але чи працює це? екран -d -m -S серверний екран bash -c 'cd / home / bob; mono
startserver.exe

Так, це працює так само, як якщо б я перейшов до каталогу користувачів у файлі сценарію. Я намагаюся змусити його працювати лише з однією командою;)
NaturalBornCamper
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.