Sao chép từ câu trả lời của tôi trên Stack Overflow :
Thay vì tạo tệp passwd, mà Cygwin khuyên dùng 1 , bạn có thể chỉnh sửa /etc/nsswitch.conf . Thêm hoặc chỉnh sửa dòng sau:
db_shell: / usr / bin / cá
Mặt trái / lên của phương pháp này là, nếu bạn có nhiều người dùng, thay đổi này ảnh hưởng đến tất cả họ. Mặt lên / lên là nó chết đơn giản. Điều hấp dẫn duy nhất là bạn phải khởi động lại Cygwin.
Nếu bạn làm sử dụng mkpasswd sau sự thay đổi này, nó sẽ sử dụng vỏ mặc định mới của bạn cho tất cả người dùng được phép đăng nhập vào.
1 Tài liệu mkpasswd nói điều này:
Không sử dụng lệnh này để tạo tệp cục bộ / etc / passwd, trừ khi bạn thực sự cần nó. Xem Hướng dẫn sử dụng Cygwin để biết thêm thông tin.
Tôi thực sự không thể tìm thấy bất kỳ lý do chắc chắn nào trong hướng dẫn của người dùng , ngoài một đề cập rằng bạn sẽ phải tạo lại các tập tin / etc / passwd và / etc / group nếu người dùng và nhóm của bạn thay đổi, mà tôi cho là đủ lý do. Tôi có thể nói rằng quá trình này có phần dễ bị lỗi cho người mới.
sh.exe
thànhzsh.exe
trong Cài đặt Conemu> khởi động> tác vụ> bash Cygwin Bash>set CHERE_INVOKING=1 & %ConEmuDrive%\CygWin\bin\sh.exe --login -i