Bem, se userA usar su
para se tornar userB, então o userB ainda não está logado.
No entanto, e quanto a isso:
ps -u <username>
Em seguida, você pode verificar $? -eq 0
para ver se algum processo foi encontrado pertencente a esse usuário. No entanto, se houver algum processo de longa duração pertencente a esse usuário, ele ainda será exibido. Se isso não for bom, você pode verificar o shell deles.