Добрый вечер.
Решил поделиться такой вот темой с вами - после блокировки экрана в Ubuntu 16.04 LTS GNOME 3 отказывается принимать пароль пользователя в окне авторизации GNOME. Пароль вводится заведомо правильный - язык правильный, капс не зажат...ничто не предвещает беды. Если выполнить переключение пользователя, то возвращаешься в стандартное окно входа в систему с выбором оболочки. После ввода пароля в стандартном окне в систему заходит без проблем.
После чтения форумов по аналогичным проблемам со входом выяснил, что проблема в файлах /home/имя_пользователя/.Xauthority и /home/имя_пользователя/.ICEauthority. После удаления соответствующего в систему пускает без проблем, но после перезагрузки системы все возвращается к прежнему состоянию. Иногда откат к прежнему состоянию происходит и во время сессии пользования. Я так понял, что данный файл генериться после каждого входа в оболочку.
Поскольку каждый раз удалять ручками данный файл не кошерно, то было решено написать небольшой bash-скрипт dellete_Xauthority.sh:
#!/bin/bash
find /home/andrey/ -name ".Xauthority" -mmin +15 -type f -exec rm -rf {} \;
find /home/andrey/ -name ".ICEauthority" -mmin +15 -type f -exec rm -rf {} \;
find /home/andrey/ -name ".xsession-errors" -type f -exec rm -rf {} \;
exit 0
Суть сего скрипта, думаю, понятна: поиск в директории пользователя файлы ".Xauthority"и ".ICEauthority" старше 15 минут и его удаление, а также ".xsession-errors" если таковой присутствует. Скрипт сохранил в папку /home/имя_пользователя/.scripts.
После чего прописал права для данного скрипта на запуск:
chmod +x /home/имя_пользователя/.scripts/dellete_Xauthority.sh
Добавляем расписание для выполнения скрипта в cron:
EDITOR=gedit crontab -e
Для того, чтобы задать расписание добавляем в конец файла:
*/15 * * * * /home/имя_пользователя/.scripts/dellete_Xauthority.sh
Теперь каждые 15 минут выполняется наш скрипт. Как следствие - проблема с авторизацией gnome решена.
Может быть данный материал из таких же новичков как я будет полезен.
Более же опытных пользователей прошу дать свои комментарии, все ли я правильно сделал. Может можно что-то еще допилить?