Вопрос или проблема
Я использую Cygwin уже много лет. Одна из причин – это наличие полноценной командной строки на моем компьютере с Windows. Вдруг терминал перестал запускаться. Он просто ничего не делал, поэтому я изменил ярлык, чтобы удерживать его при ошибке. Теперь мой ярлык запускает
C:\cygwin64\bin\mintty.exe --hold error -i /Cygwin-Terminal.ico -
И теперь он говорит, что “Эта учетная запись в настоящее время недоступна” и /sbin/nologin: Exit 1
Это произошло сразу перед моим отдыхом, поэтому я не на 100% уверен в порядке событий, но думаю, что это случилось после обновления Windows. В то время мне также пришлось изменить пароль для моей учетной записи домена.
Я пытался очистить папку кэша установщика cygwin и переустановить mintty и все, что связано с “bash” в названии. Никакой помощи. Запуск от имени администратора дает тот же результат.
Я использую Windows 11 Pro 23H2.
Что может быть не так? Куда мне следует посмотреть дальше?
Ответ или решение
Проблема, с которой вы столкнулись, связана с тем, что ваша учетная запись Windows, судя по всему, не имеет доступа к оболочке Cygwin. Ошибка "This account is currently not available" и сообщение от nologin
указывают на то, что ваша учетная запись, возможно, была временно отключена или не настроена должным образом. Я предоставлю вам несколько шагов для диагностики и решения вашей проблемы.
-
Проверка учетной записи:
- Убедитесь, что ваша учетная запись не была отключена или заблокирована. Попробуйте выполнить вход в систему с другой учетной записью администратора (если такая есть) и проверьте, доступна ли ваша основная учетная запись.
-
Проверьте настройки Cygwin:
- Откройте файлы конфигурации Cygwin, такие как
/etc/passwd
и/etc/group
. Убедитесь, что ваша учетная запись правильно настроена. Ваша строка в файле/etc/passwd
должна выглядеть примерно так:ваш_логин:*:1000:1000::/home/ваш_логин:/bin/bash
Если там указано
nologin
, замените его на/bin/bash
.
- Откройте файлы конфигурации Cygwin, такие как
-
Обновление Cygwin:
- Если вы недавно обновляли Windows или Cygwin, могут возникнуть проблемы совместимости. Запустите Cygwin Installer и выберите опцию обновления установленных пакетов, чтобы убедиться, что у вас установлены последние версии.
-
Проверка переменных среды:
- Убедитесь, что переменные среды Windows корректно настроены. В частности, проверьте переменную
HOME
, она должна указывать на правильный каталог для вашей учетной записи, напримерC:\cygwin64\home\ваш_логин
.
- Убедитесь, что переменные среды Windows корректно настроены. В частности, проверьте переменную
-
Проверка прав доступа:
- Убедитесь, что у вас есть соответствующие права на папки Cygwin и ваш домашний каталог. Проверьте, что доступ к ним открыт для вашей учетной записи.
-
Создание новой учетной записи:
- Если ни одно из вышеизложенного не помогает, вы можете попробовать создать новую учетную запись в Cygwin. Для этого откройте командную строку от имени администратора и выполните:
mkpasswd -l -c > /etc/passwd
Это создаст файл
/etc/passwd
с актуальными учетными записями.
- Если ни одно из вышеизложенного не помогает, вы можете попробовать создать новую учетную запись в Cygwin. Для этого откройте командную строку от имени администратора и выполните:
-
Журнал событий Windows:
- Проверьте журнал событий Windows на наличие ошибок или предупреждений, связанных с аутентификацией и доступом к системным ресурсам.
Если после выполнения всех этих шагов проблема не устраняется, возможно, потребуется переустановить Cygwin полностью с удалением всех связанных файлов и настроек. Убедитесь, что вы сделали резервные копии всех необходимых данных перед этим.
Надеюсь, это поможет вам восстановить работу Cygwin. Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать!