几天没登实验室服务器,在docker插件里面右击contain,attach Visual Studio Code发现报错,具体报错内容如下
Shell server terminated (code: 255, signal: null)
Invalid XSL format (or) file name.
node:child_process:925
throw err;
^
Error: Command failed: wmic process where (commandline like "%ssh-askpass.bat%") get processid,parentprocessid /format:csv
Invalid XSL format (or) file name.
at checkExecSyncError (node:child_process:848:11)
at Object.execSync (node:child_process:922:15)
at Object.<anonymous> (node:electron/js2c/asar_bundle:5:12704)
at Object.<anonymous> (c:\Users\kozer\.vscode\extensions\ms-vscode-remote.remote-containers-0.262.3\dist\common\sshAskpass.js:5:808)
at Module._compile (node:internal/modules/cjs/loader:1165:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1220:10)
at Module.load (node:internal/modules/cjs/loader:1035:32)
at Module._load (node:internal/modules/cjs/loader:876:12)
at c._load (node:electron/js2c/asar_bundle:5:13343)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12) {
status: 44210,
signal: null,
output: [
null,
Buffer(0) [Uint8Array] [],
Buffer(37) [Uint8Array] [
73, 110, 118, 97, 108, 105, 100, 32,
88, 83, 76, 32, 102, 111, 114, 109,
97, 116, 32, 40, 111, 114, 41, 32,
102, 105, 108, 101, 32, 110, 97, 109,
101, 46, 13, 13, 10
]
],
pid: 15308,
stdout: Buffer(0) [Uint8Array] [],
stderr: Buffer(37) [Uint8Array] [
73, 110, 118, 97, 108, 105, 100, 32,
88, 83, 76, 32, 102, 111, 114, 109,
97, 116, 32, 40, 111, 114, 41, 32,
102, 105, 108, 101, 32, 110, 97, 109,
101, 46, 13, 13, 10
]
}
Permission denied, please try again.
Invalid XSL format (or) file name.
node:child_process:925
throw err;
^
Error: Command failed: wmic process where (commandline like "%ssh-askpass.bat%") get processid,parentprocessid /format:csv
Invalid XSL format (or) file name.
at checkExecSyncError (node:child_process:848:11)
at Object.execSync (node:child_process:922:15)
at Object.<anonymous> (node:electron/js2c/asar_bundle:5:12704)
at Object.<anonymous> (c:\Users\kozer\.vscode\extensions\ms-vscode-remote.remote-containers-0.262.3\dist\common\sshAskpass.js:5:808)
at Module._compile (node:internal/modules/cjs/loader:1165:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1220:10)
at Module.load (node:internal/modules/cjs/loader:1035:32)
at Module._load (node:internal/modules/cjs/loader:876:12)
at c._load (node:electron/js2c/asar_bundle:5:13343)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12) {
status: 44210,
signal: null,
output: [
null,
Buffer(0) [Uint8Array] [],
Buffer(37) [Uint8Array] [
73, 110, 118, 97, 108, 105, 100, 32,
88, 83, 76, 32, 102, 111, 114, 109,
97, 116, 32, 40, 111, 114, 41, 32,
102, 105, 108, 101, 32, 110, 97, 109,
101, 46, 13, 13, 10
]
],
pid: 23940,
stdout: Buffer(0) [Uint8Array] [],
stderr: Buffer(37) [Uint8Array] [
73, 110, 118, 97, 108, 105, 100, 32,
88, 83, 76, 32, 102, 111, 114, 109,
97, 116, 32, 40, 111, 114, 41, 32,
102, 105, 108, 101, 32, 110, 97, 109,
101, 46, 13, 13, 10
]
}
Permission denied, please try again.
Invalid XSL format (or) file name.
node:child_process:925
throw err;
^
Error: Command failed: wmic process where (commandline like "%ssh-askpass.bat%") get processid,parentprocessid /format:csv
Invalid XSL format (or) file name.
at checkExecSyncError (node:child_process:848:11)
at Object.execSync (node:child_process:922:15)
at Object.<anonymous> (node:electron/js2c/asar_bundle:5:12704)
at Object.<anonymous> (c:\Users\kozer\.vscode\extensions\ms-vscode-remote.remote-containers-0.262.3\dist\common\sshAskpass.js:5:808)
at Module._compile (node:internal/modules/cjs/loader:1165:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1220:10)
at Module.load (node:internal/modules/cjs/loader:1035:32)
at Module._load (node:internal/modules/cjs/loader:876:12)
at c._load (node:electron/js2c/asar_bundle:5:13343)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12) {
status: 44210,
signal: null,
output: [
null,
Buffer(0) [Uint8Array] [],
Buffer(37) [Uint8Array] [
73, 110, 118, 97, 108, 105, 100, 32,
88, 83, 76, 32, 102, 111, 114, 109,
97, 116, 32, 40, 111, 114, 41, 32,
102, 105, 108, 101, 32, 110, 97, 109,
101, 46, 13, 13, 10
]
],
pid: 21104,
stdout: Buffer(0) [Uint8Array] [],
stderr: Buffer(37) [Uint8Array] [
73, 110, 118, 97, 108, 105, 100, 32,
88, 83, 76, 32, 102, 111, 114, 109,
97, 116, 32, 40, 111, 114, 41, 32,
102, 105, 108, 101, 32, 110, 97, 109,
101, 46, 13, 13, 10
]
}
dev@192.168.7.12: Permission denied (publickey,password).
花了两个小时找解决方案,在github的microsoft/remote-release的issues里找到了解决方案
出错原因如上图,应该调用的是%WINDIR%\System32\wbem\zh-CN\csv.xsl,但是三天前更新的dev containers里面调用的是%WINDIR%\System32\wbem\en-us\csv.xsl,在本地路径发现C:\Windows\System32\wbem\en-US里面并没有csv.xsl文件,所以报错。那么解决方案很简单,一退回到dev containers退回到不报错的版本v0.262.3
或者把%WINDIR%\System32\wbem\zh-CN\csv.xsl复制到%WINDIR%\System32\wbem\en-us下,但是这并不安全,不建议使用
完整的解决方案有待开发人员更新,已经被列为bugs了,起码dev containers在v0.266.1这个版本还是有问题的
下面是github issues的链接
https://github.com/microsoft/vscode-remote-release/issues/7507
https://github.com/microsoft/vscode-remote-release/issues/7654