Quando você executa su - username
, realiza um login completo como aquele usuário, o que significa que você é transferido para o diretório pessoal do usuário. Ao executar touch c
dessa forma, você tenta executar esse comando no diretório pessoal do usuário.
Em vez disso, elimine o -
da linha de comando:
su user1 -c "touch c"
Isso executaria touch c
as user1
no diretório atual .
Especulação:
O comando su -
original falhou porque já existe um arquivo chamado c
no diretório pessoal de user1
de propriedade de outro usuário.