Як root, я підключаюсь до віддаленого хоста, щоб виконати команду. Тільки "standardduser" має відповідний id-файл та правильний .ssh / config, тому я спочатку перемикаю користувача:
su standarduser -c 'ssh -x remotehost ./remotecommand'
Команда працює чудово, але, незважаючи на те, що я використав "-x" (вимкнути X11-Forwarding) і відключив X11Forwards /etc/ssh/ssh_config
, я все одно отримую повідомлення про помилку:
X11 connection rejected because of wrong authentication.
Я не отримую повідомлення про помилку, коли я ввійшов як "standardduser".
Це дуже дратує, оскільки я хотів би інтегрувати команду у файл завдання cron. Я розумію, що повідомлення про помилку стосується неправильної автентифікації файлу .XAuth кореня, але я навіть не намагаюся підключитися через X11.
Чому "ssh -x" не вимикає з’єднання X11 та передає повідомлення про помилку?
ОНОВЛЕННЯ : Повідомлення відображається лише під час входу в екран, при використанні команди, зазначеної вище на самій локальній машині (без екрана), я не отримую повідомлення про помилку, тому це має бути добре і з cron .
Я також запустив ту саму команду -v
і напрочуд отримав повідомлення про помилку ПЕРШЕ, ще до того, як інформація про стан SSH:
root@localhost:~# su standarduser -c 'ssh -x remotehost ./remotecommand'
X11 connection rejected because of wrong authentication.
OpenSSH_6.2p2 Ubuntu-6ubuntu0.1, OpenSSL 1.0.1e 11 Feb 2013
Це призвело до самої проблеми, це НЕ, ssh
що кидає повідомлення про помилку, це su
:
root@localhost:~# su standarduser -c 'echo Hi'
X11 connection rejected because of wrong authentication.
Hi
Чому я отримую лише цю помилку всередині screen
? Як я можу відключити це повідомлення про помилку?
-v
до ssh-параметрів, а потім вставте вихід у своє запитання.