1. 程式人生 > 其它 >艱難的 debug 經歷,vscode 無法獲取遠端環境 ssh 報錯,windows 11 ssh

艱難的 debug 經歷,vscode 無法獲取遠端環境 ssh 報錯,windows 11 ssh

背景介紹

要做系統結構實驗,學校和華為雲合作使用華為雲的 aarch64 裸機,需要使用 ssh 遠端開發,筆者為了追求良好的開發體驗,決定使用 vscode 開發,實驗環境配置過程中遇到了兩個問題,在此記錄一下(非常痛苦的被折磨了一上午+一中午)

windows ssh

報錯:openssh windows bad owner or permissions

友鏈:https://stackoverflow.com/questions/49926386/openssh-windows-bad-owner-or-permissions
友鏈:https://blog.csdn.net/chaoenhu/article/details/103698804


解決辦法,在其他博文中修改許可權的基礎上,刪除 .ssh 中的所有檔案(請你先備份,筆者不保證不出問題)

vscode 無法獲取遠端環境

可以去伺服器中檢視 error log ,注意這裡的檔名請自行 ls 檢視

$ grep -i error ~/.vscode-remote/.xxx.log 

友鏈:https://code.visualstudio.com/docs/remote/linux

首先了解一下 vscode 遠端開發的原理:https://segmentfault.com/a/1190000019927446
這裡的問題其實是沒有滿足 vscode 的環境:https://code.visualstudio.com/docs/remote/linux

檢視報錯資訊,類似 version GLIBCXX_3.4.20 not found
友鏈:https://blog.csdn.net/xg123321123/article/details/78117162

方法一:直接安裝這個動態連結庫(沒成功)
缺少這個庫,可以直接安裝 https://blog.csdn.net/edj_13/article/details/118699846
但是會找不到包,需要新增阿里雲的包 https://blog.csdn.net/l1160504510/article/details/113501513
方法二:編譯gcc,並把編譯好的動態連結庫,通過軟連結連結過去
首先使用 yum install devtoolset-11-*(大概) 然後手動編譯 gcc ,編譯用時很長,大約1小時左右
友鏈:

https://bbs.huaweicloud.com/blogs/266161
在編譯的過程中,還沒有完全編譯好的時候,就已經可以找到編譯出來的部分檔案了,然後按照上面部落格裡介紹的做就可以了

然後刪除之前失敗的remote,並reload 視窗

ctrl+shift+p 後 輸入 remote uninstall ...
ctrl+shift+p 後 輸入 reload (看清楚是重新載入視窗,不是其他的)

遠端機器環境

[root@xxx]# lsb_release -a
LSB Version:    :core-4.1-aarch64:core-4.1-noarch
Distributor ID: CentOS
Description:    CentOS Linux release 7.9.2009 (AltArch)
Release:        7.9.2009
Codename:       AltArch

[root@xxx]# uname -a
Linux ecs-65e4-0012 4.18.0-80.7.2.el7.aarch64 #1 SMP Thu Sep 12 16:13:20 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux

相關連結(筆者自用)

Linux From Scratch (簡體中文版):https://lctt.github.io/LFS-BOOK/lfs-sysv/index.html