密钥登录时遇到的问题
- 大坑!设置服务器使用密钥登录时,需要更改authorized_keys文件和.ssh文件夹的权限
chmod 600 authorized_keys
chmod 700 ~/.ssh
当然还需要设置/etc/ssh/sshd\_config这个文件,将PubkeyAuthentication yes的注释去掉、将AuthorizedKeysFile .ssh/authorized\_keys 注释去掉
- id_rsa文件的默认权限是600,如果改成其他的话会报出以下错误
[root@backup .ssh]# ssh -p 6022 inboc@10.11.1.15
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/root/.ssh/id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/root/.ssh/id_rsa": bad permissions
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
Git使用问题
- 奇怪的错误,运行以下时报错
(base) ➜ pytest git:(main) git push -u origin "master"
error: src refspec master does not match any
error: failed to push some refs to 'main'
这个错误来自于使用Gitee时,默认的仓库提交提示是git puish -u origin "master",但是实际上要将master换成main,即git push -u origin main就能提交到远程仓库
暂不清楚原因
找到了一个解释
- git push 主要对git push -u origin main这一命令进行解释: -u指的是设定默认值,此处设为origin main后之后若直接使用git push,则是默认向该远程分支push。 origin是之前提到的在git init时git会将远程仓库地址的URL别名为origin,可用于快速访问。 main表示的是分支。