文章目录

  • 前言
  • 解决方案
  • 验证

前言

在我们使用CLion时,如果本地装了Linux子系统(如Ubuntu),想用WSL工具链,但Credentials一直报错,这时可以用下面的解决方案。

如果你还没有安装WSL,可以参考官方教程:使用 WSL 在 Windows 上安装 Linux

解决方案

在你的Ubuntu中任意目录下,将下面内容复制到一个脚本中(例如文件名叫ubuntu_setup_env.sh),然后执行。

#!/bin/bash
set -eSSHD_LISTEN_ADDRESS=127.0.0.1
if [ -e "/dev/vsock" ]; then # in case of WSL2SSHD_LISTEN_ADDRESS=0.0.0.0
fiSSHD_PORT=2222
SSHD_FILE=/etc/ssh/sshd_config
SUDOERS_FILE=/etc/sudoers# 0. update package lists
sudo apt-get update# 0.1. reinstall sshd (workaround for initial version of WSL)
sudo apt remove -y --purge openssh-server
sudo apt install -y openssh-server# 0.2. install basic dependencies
# sudo apt install -y cmake gcc clang gdb valgrind build-essential# 1.1. configure sshd
sudo cp $SSHD_FILE ${SSHD_FILE}.`date '+%Y-%m-%d_%H-%M-%S'`.back
sudo sed -i '/^Port/ d' $SSHD_FILE
sudo sed -i '/^ListenAddress/ d' $SSHD_FILE
sudo sed -i '/^UsePrivilegeSeparation/ d' $SSHD_FILE
sudo sed -i '/^PasswordAuthentication/ d' $SSHD_FILE
echo "# configured by CLion"      | sudo tee -a $SSHD_FILE
echo "ListenAddress ${SSHD_LISTEN_ADDRESS}"     | sudo tee -a $SSHD_FILE
echo "Port ${SSHD_PORT}"          | sudo tee -a $SSHD_FILE
echo "UsePrivilegeSeparation no"  | sudo tee -a $SSHD_FILE
echo "PasswordAuthentication yes" | sudo tee -a $SSHD_FILE
# 1.2. apply new settings
sudo service ssh --full-restart# 2. autostart: run sshd
sed -i '/^sudo service ssh --full-restart/ d' ~/.bashrc
echo "%sudo ALL=(ALL) NOPASSWD: /usr/sbin/service ssh --full-restart" | sudo tee -a $SUDOERS_FILE
cat << 'EOF' >> ~/.bashrc
sshd_status=$(service ssh status)
if [[ $sshd_status = *"is not running"* ]]; thensudo service ssh --full-restart
fi
EOF# summary: SSHD config info
echo
echo "SSH server parameters ($SSHD_FILE):"
echo "ListenAddress ${SSHD_LISTEN_ADDRESS}"
echo "Port ${SSHD_PORT}"
echo "UsePrivilegeSeparation no"
echo "PasswordAuthentication yes"

注意:脚本中我多注释了一行命令,如下所示。这些C/C++的编译工具根据自己的需要进行安装,脚本里就不强制让大家安装了,根据自己的需要进行安装。

# 0.2. install basic dependencies
# sudo apt install -y cmake gcc clang gdb valgrind build-essential

执行脚本:

sh ubuntu_setup_env.sh

验证

执行下面ssh命令连接验证(注意上面脚本中配置的端口是2222,用户名是自己的用户名)

gjh@DELL-GJH:~$ ssh gjh@localhost -p2222
The authenticity of host '[localhost]:2222 ([127.0.0.1]:2222)' can't be established.
ECDSA key fingerprint is SHA256:hopeXXXXXXXXXXXXXXXXXXXT0CzpIhuPc8zXt1w.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '[localhost]:2222' (ECDSA) to the list of known hosts.
gjh@localhost's password:
Welcome to Ubuntu 20.04.2 LTS (GNU/Linux 4.4.0-22000-Microsoft x86_64)

这样再去连接就没有问题了。

CLion配置WSL工具链相关推荐

  1. 嵌入式 配置arm工具链

    嵌入式 配置arm工具链 一.简述    记--在Ubuntu18.04配置4.4.1版本的arm工具链,使用arm工具链编译程序生成的可执行文件可以在开发板运行.         工具链:链接:ht ...

  2. Clion配置wsl远程服务器

    主要按照wsl配置教程配置: Clion中: 文件-设置-构建.执行.部署-工具链-添加WSL 文件-设置-工具-ssh配置:(这里的端口号2222就是跟着前面的链接教程中配的,主机填wsl中ifco ...

  3. CLion 使用 clang-cl 工具链时未正确链接 vcpkg 中的 Boost 外部库

    TL;DR: 简单来说是 CLion 的问题; 解决方法就是避免使用 clang-cl 工具链. 2023/02/24 更新: 最新的 CLion EAP 似乎已经修正了这个问题. 昨天比较闲, 就给 ...

  4. 制定交叉编译工具_配置交叉编译工具链-嵌入式Linux

    注意:使用我们提供的Ubuntu映象文件时,请按照我们的目录结构,手动设置交叉编译工具链以及编译的架构环境变量配置,(建议配置为永久生效),这里我们提供了两种交叉编译工具链,分别是buildroot构 ...

  5. 配置交叉编译工具链-嵌入式Linux

    在线课堂:https://www.100ask.net/index(课程观看) 论  坛:http://bbs.100ask.net/(学术答疑) 开 发 板:https://100ask.taoba ...

  6. 【dMRI】desktop docker配置FSL工具链环境

    1.自动下载并启动 docker run --rm -it -v "D:/USC/LONI-student-worker/FSL_workshop":/usr/src/app di ...

  7. CLion配置Qt环境

    配置CLion+QT5 前言 一.Qt的安装 二.安装Clion 三.配置Clion 总结 前言 我们在学习或者使用QT开发项目的时候,会使用Qt Creator进行编码,但是Qt Creator编译 ...

  8. DevOps 工具链可推动你的创新计划!

    一套完整启用的 DevOps 工具链可推动你的创新计划,实现快速部署并节约成本.不同规模和不同行业组织都致力于为提高软件交付的速度和质量提供解决方案.这不仅保证了他们的生存,还令他们在全球市场取得了成 ...

  9. arm-linux交叉编译工具链的制作(基于S3C2440)【转】

    本文转载自:http://eric-gao.iteye.com/blog/2160622 制作arm-linux交叉编译工具链一般通过crosstool工具或者crosstool-NG,前者使用方便, ...

最新文章

  1. htm tt cite em u
  2. 软件过程与项目管理(作业一)
  3. java 委托_动态代理:Java开发必学
  4. ubuntu下安装,查看,拉取docker镜像
  5. windows winrar 指令_【转】winrar命令行详解
  6. 9、10、11、12、13_添加标注 (Annotations)、添加网格线(Grid Lines)、显示中文字体、保存图形(saving Figures)、高质量矢量图输出
  7. php判断ip地址小程序
  8. CTAssetsPickerController 选中图片不显示对号的问题解决
  9. Exceptionless(二) - 使用进阶
  10. 30岁软件测试转产品_30岁的我脸上竟然出现皱纹了,求推荐抗衰老产品,最好是国外的...
  11. silverlight数据绑定
  12. 使用docker部署.net core应用
  13. apusic6.0需要新项目需要改动文件
  14. 中控考勤机二次开发 java_SDK二次开发,读取中控考勤机打卡记录测试。
  15. SqList *L 和 SqList * L的一些理解以及多重指针的简单应用
  16. 应届生面试反问环节该问什么,提高面试官好感
  17. 9月18日博文阅读数异常波动公告
  18. 查询学过“叶平”老师所教的所有课的同学的学号、姓名
  19. Android Bmob后端云—数据库、服务器!
  20. ​社交产品盈利方式产品模式设计案例

热门文章

  1. android action格式,Android ActionMode模式使用
  2. java机甲类回合制游戏,2018经典机甲游戏有哪些_好玩的机甲类游戏推荐
  3. Laya引擎对接微信小游戏
  4. elementui之table表格如何实现表头th的跨列合并
  5. UVA 438 - The Circumference of the Circle
  6. PS制作素雅白色开关按钮,UI设计教程
  7. stm32f103rbt6_5
  8. 网上零食商城基于SSM
  9. 无线局域网WLAN之组网架构
  10. script使用integrity属性进行安全验证