Схоже , що це викликано взаємодією по замовчуванням конфігурації бродячого від config.ssh.shellбути bash -l(який імітує оболонку входу в систему , таким чином , обробка входу , пов'язані файли конфігурації , такі як .profile) з лінії в /root/.profileфайлі , принаймні , деяких дистрибутивах Linux ( в тому числі, наприклад, той, який знаходиться у вікні бродячого ubuntu / xenial64 ), у якому є:
mesg n || true
Кращим варіантом для цього рядка в цьому файлі, мабуть, буде те, щоб він сказав:
test -t 0 && mesg n
... і, враховуючи, що це важко змінити як індивідуального бродячого користувача, більш негайним рішенням є відмовитись від -lпараметра бродячої конфігурації, наприклад, з (у межах Vagrantfile):
config.ssh.shell="bash"
(Caveat: Можна вважати, що ця зміна може мати потенційно негативні побічні ефекти. Мені здається, це чудово працює для мене, хоча з деякими основними захисниками оболонки, наприклад, з apt-get updateтощо).