Немногие знают, что существует возможность выполнения команды в консоли сервера в момент входа или выхода из сессии. Этот специфический функционал относится к командной строке unix-систем. Это может быть команда на удаление файла или запуска какого-либо сервиса.
Рассмотрим вариант с использованием bash, как наиболее популярного командного интерпретатора в Linux и csh/tsch - для FreeBSD.
Вход в консоль
Для того, чтобы запустить команду и увидеть ее вывод при авторизации в консоль, поместите ее в файл .bash_login или .login (в случае использования Linux или FreeBSD соответственно). Например, это может быть команда информации об использовании дискового пространства:
df -h
Выход из консоли
В домашней директории находится файл .bash_logout (в случае использования bash) или .logout (для csh/tcsh). В который можно поместить команду для выполнения при закрытии сессии. Например, удаление файлов из директории /tmp
rm -f /tmp/*
Обратите внимание, что помещение в файл большого количества команд, запуска ресурсоемкого скрипта или скрипта с ошибками может послужить причиной потери доступа к серверу или получения доступа к учетной записи постороннего путем завершения выполнения этой команды. Поэтому рекомендую все же выполнять скрипты либо в screen, либо пока вы еще авторизованы на сервере.