Неинтерактивно сменить пользователя в bash

Я хочу создать нового пользователя, добавить его в группу sudo, а затем изменить его на неинтерактивно (т.е. без ввода пароля через stdin) в тестовом сценарии на виртуальной машине. Я пробовал это, но это не дает мне войти в систему как новый пользователь kafka:

ubuntu@testvm: whoami ubuntu ubuntu@testvm: sudo useradd kafka -m ubuntu@testvm: echo kafka:test | sudo chpasswd ubuntu@testvm: sudo adduser kafka sudo ubuntu@testvm: echo "test" | sudo -S su - kafka ubuntu@testvm: whoami ubuntu 

Есть идеи, почему это не работает?

Linux и Unix - лучшая ОС в мире.