Ssh dscl不';从内部重新连接的屏幕无法工作
我使用的是Mac OS X 10.5.8。我不确定这是什么时候开始的,但我发现当我重新连接到从ssh会话启动的screen会话时,任何依赖dscl(目录服务)或底层getent的东西都会失败 如果我在终端的机器上启动会话,一切正常。只有远程启动的屏幕会话在重新连接时才会出现问题Ssh dscl不';从内部重新连接的屏幕无法工作,ssh,directoryservices,gnu-screen,dscl,Ssh,Directoryservices,Gnu Screen,Dscl,我使用的是Mac OS X 10.5.8。我不确定这是什么时候开始的,但我发现当我重新连接到从ssh会话启动的screen会话时,任何依赖dscl(目录服务)或底层getent的东西都会失败 如果我在终端的机器上启动会话,一切正常。只有远程启动的屏幕会话在重新连接时才会出现问题 $ dscl . -list /Users >> works $ screen $ dscl . -list /Users >> works [detached] $ dscl . -lis
$ dscl . -list /Users
>> works
$ screen
$ dscl . -list /Users
>> works
[detached]
$ dscl . -list /Users
>> works
$ screen -x
$ dscl . -list /Users
Operation failed with error: eServerNotRunning
同样失败的是:
$ whoami
504
我已经重新启动、调试和谷歌搜索了大约6个小时,没有任何运气
这真的很痛苦,因为它会影响很多应用程序(ssh、git、rake等)
我很好奇这是否影响了其他人,或者是否有人知道如何修复它。这是同一台机器(OS 10.5.8)上两个帐户内的一个示例。在ssh上无法测试它,抱歉。考虑:
1st account = one
2nd account = two
假设登录到“一”:
现在,当登录到“2”时:
脚本已启动,输出文件为/dev/null
bash-3.2$ screen -x
bash-3.2$ dscl . -list /Users >> works
就这样;)
如果好奇的话:我遇到了同样的问题,dscl不工作,同样的错误,并且没有从屏幕重新连接,使dscl再次工作。谢谢我对此做了进一步的调查。看起来,若我从远程登录(即ssh)启动屏幕,那个么屏幕的设置就完全不同了。只是共享一个数据点。若屏幕是从终端启动的,那个么它的性能会更好;我在问题中规定,它在您刚刚测试的情况下有效。
two$ su - one
Password:
one$ script /dev/null
bash-3.2$ screen -x
bash-3.2$ dscl . -list /Users >> works