-
su - usernameexecuta o shell de login deusernamecomo um shell interativo. -
su username command argumentsexecutacommand argumentsnão interativamente na contausername.
Você comanda su lfs - -c "source ~/.bash_profile" significa executar - -c "source ~/.bash_profile" como o usuário lfs não interativamente . Agora o shell vê a opção - e diz: Eu devo executar como um shell de login interativo e tentar inicializar o terminal, mas su desconectou o processo filho do terminal de controle.
Em suma: O - está perdido ou errado.
Para uma discussão mais longa, veja praticamente o a mesma pergunta no serverfault.