Экран не отображается в списке при использовании sudo

под root пользователя (печатается по whoami), исполнение

sh -c "screen -d -m -S testscreen sh -c "echo asd; echo qwe""

создает экран с двумя выходными строками, которые могут быть присоединены через screen -r testcreen

но если я использую

sudo -n -u root sh -c "screen -d -m -S testscreen sh -c "echo asd; echo qwe""

экран не отображается в списке. Что случилось, и что мне делать вместо этого?

(CentOS 5.2)

28
задан slhck
24.01.2023 23:24 Количество просмотров материала 2858
Распечатать страницу

2 ответа

Это звучит как ваш бинарный экран не в $Path используется ш. Поэтому, когда вы sudo, потому что вы не вызываете оболочку входа для установки новой среды, команда не будет существовать. Вы можете проверить это, проверив пару вещей.

root-права:

$ sudo -s
# which screen
/some/path/to/screen
# echo $PATH

самый простой способ исправить это-указать полный путь к экрану в используемой команде:

$ sudo -n -u root sh -c "/some/path/to/screen -d -m -S testscreen sh -c \"echo asd; echo qwe\""

Если это не исправить, было бы полезно, чтобы захватить, если sh имеет некоторые другие проблемы, начиная экран, делая:

$ sudo -n -u root sh -c "set -x ; screen -d -m -S testscreen sh -c \"echo asd; echo qwe\""
1
отвечен polynomial 2023-01-26 07:12

экран добавляется к пользователю root, использовать sudo screen -raAd подключить

1
отвечен Ravi 2023-01-26 09:29

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх