
我有兩台 Win10_64 Pro 電腦。一個的行為符合預期,另一個則不然,我不知道如何解決有問題的電腦上的問題。還有一點可能值得注意的是,我剛從 cygwin 版本 1.7 升級到 3.0.7,升級後就引入了問題(之前運行得很好)。
有問題的電腦存在管理員帳號不是管理員群組成員的問題:
$ groups
None Users INTERACTIVE CONSOLE LOGON Authenticated Users This Organization Local account CurrentSession LOCAL NTLM Authentication Medium Mandatory Level
然而,工作電腦有不同的群組輸出:
$ groups
None Local account and member of Administrators group Administrators Users NETWORK Authenticated Users This Organization Local account CurrentSession NTLM Authentication High Mandatory Level
在這兩種情況下,我都使用快捷方式來執行 cygwin shell(不使用「以管理員身份執行」)。除了沒有管理員群組之外,我發現高強制等級與中強制等級之間存在差異,我認為這些也與問題相關。
我知道我可以在提升的提示下運行 cygwin shell,但我想透過 SSH 登入並擁有完整的管理員權限,這就是為什麼我想在有問題的電腦上解決此問題。我只是不知道該怎麼做。
我已使用“電腦管理”->“使用者”->“管理員”->“成員”標籤驗證兩台電腦上的管理員帳戶是管理員群組的成員,並驗證它們是否匹配。我還運行了mkpasswd -l > /etc/passwd
和mkgroup -l > /etc/group
,重新啟動,問題仍然存在(以防在 cygwin 升級過程中遺漏了某些內容)。不過,我在網路上看到了相互矛盾的回饋;這意味著,cygwin 可能不會對這些文件做太多事情,和/或忽略它們。
我在兩台電腦上都有預設的 /etc/nsswitch.conf :
$ cat /etc/nsswitch.conf
# /etc/nsswitch.conf
#
# This file is read once by the first process in a Cygwin process tree.
# To pick up changes, restart all Cygwin processes. For a description
# see https://cygwin.com/cygwin-ug-net/ntsec.html#ntsec-mapping-nsswitch
#
# Defaults:
# passwd: files db
# group: files db
# db_enum: cache builtin
# db_home: /home/%U
# db_shell: /bin/bash
# db_gecos: <empty>
我的電腦不是 AD 的一部分,我們嚴格使用本機登入(與 Microsoft Live ID 沒有關聯)。
任何幫助是極大的讚賞。非常感謝!
答案1
這很有趣。經過幾天的適應後,這個問題已經自行解決。我沒有採取任何行動,但有一個自動 Windows 更新透過該更新重新啟動了電腦。我希望我能得到更明確的答案。也許是重新啟動,也許需要一些浸泡時間。