Ubuntu:解决github出现 Permission denied (publickey)的问题

因为使用的Ubuntu 长久没有使用,使用下载的时候突然报错,使用ssh key这种方式进行clone ,pull github上面的项目,使用 git clone或者git pull origin master出现permission denied (publickey),原因是因为ssh key过期失效或者没有ssh key。 显示如下错误:
在这里插入图片描述
Permission denied (publickey) 没有权限的publickey ,这个错误的原因一般是两个
1.客户端与服务端未生成 ssh key
2.客户端与服务端的ssh key不匹配

找到问题的原因了,解决办法也就有了,重新生成一次ssh key,然后将这个ssh key添加到github账户上面 即可。

按照如下步骤进行重新生成:

1.检查SSH key是否已经存在

用这个命令 ls ~/.ssh/
进行检查 id_rsa.pub 是否存在,如果存在,就不用生成一个新的SSH key了,直接跳到下面的第3步。
在这里插入图片描述
2.如果第1步中的SSH key不存在,生成一个新的SSH key
命令如下,其中,your_email@example.com要修改成你的邮箱地址。

ssh-keygen -t rsa -b 2048 -C “your_email@example.com”

回车后输出如下:

Generating public/private rsa key pair.
Enter file in which to save the key (/home/xxx/.ssh/id_rsa):

其中,xxx是你的用户名,直接回车,会将key保存到默认文件中。
接着会输出:

Enter passphrase (empty for no passphrase):
Enter same passphrase again:

这两步是让你输入一个密码,以及确认密码,这个密码在你提交代码到Github时会用到【注意:记住这个密码,最简单的方式就是设置的和github账户登入密码一样,容易记住】
回车后就提示成功了:
Your identification has been saved in /home/xxx/.ssh/id_rsa.
Your public key has been saved in /home/xxx/.ssh/id_rsa.pub.
The key fingerprint is:
01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com
到这一步,你会发现 ~/.ssh/id_rsa.pub 文件已经生成了。
(3)将SSH key添加到ssh-agent
先确认ssh-agent处于启用状态:

ssh-agent -s

输出类似于:
在这里插入图片描述
然后将SSH key添加到ssh-agent(此处如果出现could not open a connection to your authentication agent 参考此处步骤4):

ssh-add ~/.ssh/id_rsa

这时又会要你输入密码:

Enter passphrase for /home/xxx/.ssh/id_rsa:

输入刚才记起来的密码,然后回车

(4)将SSH key添加到Github账户中
直接在打开id_rsa.pub这个文件(这就是我们刚刚生成的ssh key文件),

gedit .ssh/id_rsa.pub

在这里插入图片描述
打开github.com,登入账户,点击头像旁边的下拉按钮,选择settings —- 。如下图:
在这里插入图片描述
选择ssh and gpg keys —— new ssh key —- 粘贴 —- 保存

在这里插入图片描述在这里插入图片描述

(5)保存后,就能看到建立的ssh key,git 客户端就能够正常使用了

使用ssh测试链接。

ssh -T git@github.com

提示:如下信息就OK了。会发现,出现下面的情况 不用担心没什么影响,这句话其实一直存在,它只是想告诉你,github 不允许 shell 交互。仅此而已。
在这里插入图片描述

现在整个git 就能正常的下载和使用了。
感谢下面作者的参考:
permission denied (publickey)问题的解决 和 向github添加ssh key

解决git@github.com: Permission denied (publickey)

解决You‘ve successfully authenticated, but GitHub does not provide shell access.

解决git@github.com: Permission denied (publickey). fatal: Could not read from remote repository.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/32552.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

0 知识的补充

目录 矢量运算 矢量加法 矢量减法 矢量点乘 矢量叉乘 矢量混合积 坐标系 直角坐标系 柱坐标系 球坐标系 ​​​​​​​ 矢量运算 矢量加法 矢量减法 矢量点乘 矢量叉乘 ​​​​​​​ 矢量混合积 坐标系 直角坐标系 柱坐标系 ​​​​​​​ 球坐标系

AcWing算法基础课笔记——求组合数2

求组合数Ⅱ 1万组数据, 1 ≤ b ≤ a ≤ 1 0 5 1 \le b \le a \le 10^5 1≤b≤a≤105,预处理阶乘。时间复杂度 O ( N l o g N ) O(NlogN) O(NlogN) C a b a ! ( b − a ) ! b ! C_a^b \frac{a !}{(b - a)! b!} Cab​(b−a)!b!a!​ 预处理出 i ! i ! i…

力扣148A

文章目录 1. 题目链接2. 题目代码3. 题目总结 1. 题目链接 Insomnia cure 2. 题目代码 #include<iostream> using namespace std; int main(){int dragonDamagedByPan;int dragonDamagedByDoor;int dragonDamagedByheel;int dragonDamagedBythreat;int totalNumberOfDra…

高速缓存存储器(Chche)

为了解决CPU和主存之间速度不匹配的问题&#xff0c;计算机系统中引入了高速缓存&#xff08;Chche&#xff09;的概念。 基本想法&#xff1a;使用速度更快但容量更小、价格更高的SRAM制作一个缓冲存储器&#xff0c;用来存放经常用到的信息&#xff1b;这样一来&#xff0c;…

Geopandas函数大全

GeoSeries函数和方法解析 GeoSeries.plot(self, *args, **kwargs) 几何图形空间可视化GeoSeries.area 返回几何图形的面积GeoSeries.bounds 返回几何图形x、y的最大最小值GeoSeries.length 返回几何图形的长度GeoSeries.geom_type 返回几何类型GeoSeries.distance(self, other…

嵌入式系统固件升级方案设计

文章目录 0. 概要1. 存储布局2. 升级文件格式配置文件格式 3. UML图组件图状态图活动图 4. C代码示例异常处理模块化代码示例实用工具函数 5. 其它故障处理方案性能优化安全性分析版本控制策略 6. 总结 0. 概要 在嵌入式系统中&#xff0c;固件升级是一个至关重要的功能。为了…

小白指南:前端使用javascript如何判断集合是不是空集合?

背景 最近在开发一个Web应用时&#xff0c;我遇到了一个关于集合处理的问题。具体来说&#xff0c;我需要判断一个集合是否为空。集合可以是数组、对象、Map或Set等不同的数据结构。就简单的整理了一下如何在JavaScript中有效地判断一个集合是否为空呢&#xff1f; 解决方案 …

鸿枫网盘,文件夹面包屑跳转实现功能

新增功能&#xff0c;磁盘格式化&#xff0c;层级面包屑跳转&#xff0c;视频预览优化 主要记录一下面包屑的实现思路 2.1 面包屑渲染 <el-breadcrumb separator-class"el-icon-arrow-right"> <el-breadcrumb-item> <el-link :under…

Pytorch(5)-----梯度计算

一、问题 如何使用Pytorch计算样本张量的基本梯度呢&#xff1f;考虑一个样本数据集&#xff0c;且有两个展示变量&#xff0c;在给定初始权重的基础上&#xff0c;如何在每次迭代中计算梯度呢&#xff1f; 二、如何运行 假设有x_data 和 y_data 列表&#xff0c;计算两个列表需…

树莓派4B设置AP热点步骤

树莓派4B设置AP热点步骤&#xff1a;先进入root模式 预先进行apt-get update 第1步&#xff1a;安装network-manager ​sudo apt-get install network-manager第2步&#xff1a;安装git apt-get install git apt-get install util-linux procps hostapd iproute2 iw haveged …

Chrome插件: Octotree让你GitHub代码浏览速度飙升

在GitHub上浏览和管理项目代码时&#xff0c;您是否曾为复杂的目录结构感到困惑&#xff1f;如果有一种工具能够让您轻松浏览项目的文件和目录&#xff0c;会不会大大提升您的工作效率&#xff1f;这正是Octotree浏览器插件所能做到的。 不过说实话&#xff0c;GitHub自带的代码…

HMI 的 UI 风格,超凡脱俗

HMI 的 UI 风格&#xff0c;超凡脱俗

代码随想录算法训练营day62 | 42. 接雨水、84.柱状图中最大的矩形

42. 接雨水 暴力解法 遍历每根柱子(第一个和最后一个不需要遍历&#xff0c;因为不可能存住水)&#xff0c;找到当前柱子的左边最高柱子lHeight&#xff0c;右边最高柱子rHeight&#xff0c;当前柱子能存的水为min(min(lHeight, rHeight) - 当前柱子的高度, 0) class Soluti…

mediasoup专栏介绍

mediasoup专栏介绍 mediasoup基础概览网络编程-libuv介绍mediasoup源码分析-v2和v3版本差异mediasoup日志模块mediasoup源码分析(一)编译及部署mediasoup源码分析(二)--worker启动golang实现mediasoup的tcp服务及channel通道mediasoup源码分析(三)channel创建及信令交互mediaso…

ARM功耗管理软件之WFIWFE

安全之安全(security)博客目录导读 思考&#xff1a;功耗管理软件栈及示例&#xff1f;WFI&WFE&#xff1f;时钟&电源树&#xff1f;DVFS&AVS&#xff1f; ARM功耗管理精讲与实战汇总参见&#xff1a;Arm功耗管理精讲与实战

java中Object和json相互转换的方式

1.org中jackson转换json,springboot中内置jackson ObjectMapper onew ObjectMapper(); List<>listnew ArrayList(); String jonso.writeAsValueString(list); 2.alibaba中fastjson转换成json GetMapping("/test")public TbUser testHttpClient(){String url…

Day11 —— 大数据技术之Spark

Spark快速入门系列 Spark的概述什么是Spark&#xff1f;Spark的主要特点Spark的主要组件 Spark安装Spark三种运行模式Spark Standalone架构Spark Standalone的两种提交方式Spark On YARN架构 RDD算子转化算子行动算子 Spark RDDRDD的创建从对象集合创建RDD从外部存储创建RDD Sp…

[C/C++][VsCode]使用VsCode在Linux上开发和Vscode在线调试

目录 0. 前言1. win10上搭建环境Linux环境2.编写makefile3.怎么在线调试结语 0. 前言 在开发中&#xff0c;可以一边开发一边调试&#xff0c;这样可以大大的减少bug&#xff1b;但是正常来说一个大点的项目&#xff0c;是不太可能单步调试的&#xff0c;因为一般都是用make或…

java打印金字塔paremid和空心金字塔

java打印金字塔 首先确定每行打印几个空格&#xff0c;在确定每行打印几个* 设总层数为layers&#xff0c;当前层数为i。 则每行打印空格数layers-i&#xff0c;每行打印星号数2*i-1 import java.util.Scanner;public class Paremid{public static void main(String[] args) …

基于Pico和MicroPython点亮ws2812彩色灯带

基于Pico和MicroPython点亮ws2812彩色灯带 文章目录 基于Pico和MicroPython点亮ws2812彩色灯带IntroductionPracticeConclusion Introduction 点亮发光的LED灯是简单有趣的实验&#xff0c;点亮多个ws2812小灯串联起来的灯带&#xff0c;可对多个彩色小灯进行编程&#xff0c;…