.bash_profile é executado quando o Bash começa como um shell de login, não "no momento do login", como você escreveu. Isso significa que toda vez que o Bash iniciar com a opção "--login" ou como "-bash" , ele lerá e executará .bash_profile . Muito provavelmente, iniciar sua sessão X implicitamente inicia várias instâncias Bash (já que é um shell padrão no Linux). Algumas dessas instâncias provavelmente são cascas de login, seu script é chamado de várias vezes, o que faz com que o seu LED entre no modo disco.
A solução para o seu problema seria mover o script para fora do .bash_profile e criar um trabalho cron para ele ou reescrevê-lo usando inotify-tools .