Primeiro, eu verificaria todos os locais onde o tcsh executa comandos quando ele for iniciado.
A página man tem isto a dizer (eu coloquei os locais dos arquivos em negrito):
A login shell begins by executing commands from the system files /etc/csh.cshrc and /etc/csh.login. It then executes commands from files in the user's home directory: first ~/.tcshrc (+) or, if ~/.tcshrc is not found, ~/.cshrc, then ~/.history (or the value of the histfile shell variable), then ~/.login, and finally ~/.cshdirs (or the value of the dirsfile shell variable) (+). The shell may read /etc/csh.login before instead of after /etc/csh.cshrc, and ~/.login before instead of after ~/.tcshrc or ~/.cshrc and ~/.history, if so compiled; see the version shell variable. (+)
Se isso não levar você a lugar nenhum, tentarei as duas coisas a seguir:
- Faça login como o usuário ofensivo e deixe-o travado, mude para um console diferente e verifique
w
- que deve mostrar o que esse usuário está executando. -
Ctrl+Z
em vez deCtrl+C
- que deve suspender o processo em execução em vez de interrompê-lo. Entãojobs
para ver o que foi suspenso.
EDIT: Como JdeBP apontou nos comentários, você também pode definir as opções -x
e -V
para tcsh em su - embora eu ache que você poderia encontrar a coisa ofensiva com -X
. Algo parecido com isto:
su - troublesome_user -- -X
- -x ecoa todos os comandos antes da execução A entrada do comando
- -v é ecoada após a substituição do histórico
- -X igual a -x mas aplica-se mesmo antes de o .tcshrc ser processado
- -V mesmo que -v mas aplica-se mesmo antes de o .tcshrc ser processado