页面“Centos7 systemctl基础用法”与“多个git账号之间的切换 多个git账号指定不同的key”之间的差异

来自linux中国网wiki
(页面间的差异)
跳到导航 跳到搜索
(导入1个版本)
 
docker>Evan
(导入1个版本)
 
第1行: 第1行:
<pre>
 
centos 7启动方式
 
  
 +
多个git账号之间的切换 多个git账号指定不同的key
  
  centos6使用的是/etc/rc.d/init.d/functions启动centos7使用的是systemd启动
+
ssh可以通过-i使用指定的私钥文件,如:
   systemd启动脚本方式
+
 
   systemctl enable httpd.service #自启动某服务
+
ssh -i ~/mykey_rsa username@host
   systemctl disable httpd.service #禁用开机启动
+
 
   systemctl status httpd.service #查看服务状态
+
但是走ssh协议的git却没有类似的参数可以指定,只能是使用用户默认的ssh私钥。
   systemctl list-units --type=service #查看所有服务
+
 
 +
而git 一般也是用key认证的,如果你来我一样的情形 ,怎么办 ? 先假设我有两个账号,一个是github上的,一个是公司gitlab上面的。先为不同的账号生成不同的ssh-key
 +
 
 +
ssh-keygen  -t rsa -f ~/.ssh/id_rsa_work -C [email protected]
 +
 
 +
然后根据提示连续回车即可在~/.ssh目录下得到id_rsa_work和id_rsa_work.pub两个文件,id_rsa_work.pub文件里存放的就是我们要使用的key
 +
 
 +
ssh-keygen -t rsa -f ~/.ssh/id_rsa_github -C [email protected]
 +
 
 +
然后根据提示连续回车即可在~/.ssh目录下得到id_rsa_github和id_rsa_github.pub两个文件,id_rsa_gthub.pub文件里存放的就是我们要使用的key
 +
 
 +
编辑 ~/.ssh/config,设定不同的git 服务器对应不同的key
 +
 
 +
在本机添加
 +
<pre>cat ~/.ssh/config
 +
 
 +
Host github.com
 +
   hostname github.com
 +
   User git
 +
   #port 22
 +
   IdentityFile /home/evan/.ssh/id_rsa_github
 +
   IdentitiesOnly yes
 
    
 
    
  systemctl start httpd.service
+
</pre>
  systemctl stop httpd.service
+
 
  systemctl restart httpd.service
+
#建一个gitlab别名,新建的帐号使用这个别名做克隆和更新
 
+
<pre>Host 192.168.11.11
  systemctl is-enabled httpd #直看httpd服务是否开机启动
+
   HostName 192.168.11.11
 
+
   User work
   也可以用于管理系统重启系统
+
   IdentityFile ~/.ssh/id_rsa_work
   systemctl reboot关闭系统
 
   systemctl poweroffCPU停止工作systemctl halt暂停系统
 
  systemcti suspend休眠
 
  systemctl hibernate进入救援模式-单用模式systemctl rescue
 
  
 
</pre>
 
</pre>
  
[[Nginx on centos7]]
+
打开 [https://github.com/settings/ssh https://github.com/settings/ssh] 把pub key (id_rsa_github.pub) 添加一下
 +
 
 +
 +
 
 +
看到 You’ve successfully 就表示OK了
 +
 
 +
多个git账号之间的切换 也可以多个github 帐号 [http://memoryboxes.github.io/blog/2014/12/07/duo-ge-gitzhang-hao-zhi-jian-de-qie-huan/ http://memoryboxes.github.io/blog/2014/12/07/duo-ge-gitzhang-hao-zhi-jian-de-qie-huan/]
 +
 
 +
命令行下的git配置问题: 多个sshkey, 多个用户身份, git alias [http://www.liaohuqiu.net/cn/posts/git-setup-and-setting/ http://www.liaohuqiu.net/cn/posts/git-setup-and-setting/]
 +
 
 +
Git Config 命令查看配置文件 [https://cnbin.github.io/blog/2015/06/19/git-config-ming-ling-cha-kan-pei-zhi-wen-jian/ https://cnbin.github.io/blog/2015/06/19/git-config-ming-ling-cha-kan-pei-zhi-wen-jian/]
 +
 
 +
ssh-keygen -t rsa -f ~/.ssh/id_rsa_evan -C [email protected]
 +
 
 +
[https://www.linuxchina.net/?p=3393 https://www.linuxchina.net/?p=3393]
 +
 
 +
&nbsp;
 +
 
 +
&nbsp;
  
[[Centos7初始化]]
+
[[Category:git]]
[[category:linux]][[category:ops]]
 

2017年1月23日 (一) 09:56的版本

多个git账号之间的切换 多个git账号指定不同的key

ssh可以通过-i使用指定的私钥文件,如:

ssh -i ~/mykey_rsa username@host

但是走ssh协议的git却没有类似的参数可以指定,只能是使用用户默认的ssh私钥。

而git 一般也是用key认证的,如果你来我一样的情形 ,怎么办 ? 先假设我有两个账号,一个是github上的,一个是公司gitlab上面的。先为不同的账号生成不同的ssh-key

ssh-keygen  -t rsa -f ~/.ssh/id_rsa_work -C [email protected]

然后根据提示连续回车即可在~/.ssh目录下得到id_rsa_work和id_rsa_work.pub两个文件,id_rsa_work.pub文件里存放的就是我们要使用的key

ssh-keygen -t rsa -f ~/.ssh/id_rsa_github -C [email protected]

然后根据提示连续回车即可在~/.ssh目录下得到id_rsa_github和id_rsa_github.pub两个文件,id_rsa_gthub.pub文件里存放的就是我们要使用的key

编辑 ~/.ssh/config,设定不同的git 服务器对应不同的key

在本机添加

cat ~/.ssh/config

Host github.com
  hostname github.com
  User git
  #port 22
  IdentityFile /home/evan/.ssh/id_rsa_github
  IdentitiesOnly yes
  
  1. 建一个gitlab别名,新建的帐号使用这个别名做克隆和更新
Host 192.168.11.11
  HostName 192.168.11.11
  User work
  IdentityFile ~/.ssh/id_rsa_work

打开 https://github.com/settings/ssh 把pub key (id_rsa_github.pub) 添加一下

ssh -vT [email protected]

看到 You’ve successfully 就表示OK了

多个git账号之间的切换 也可以多个github 帐号 http://memoryboxes.github.io/blog/2014/12/07/duo-ge-gitzhang-hao-zhi-jian-de-qie-huan/

命令行下的git配置问题: 多个sshkey, 多个用户身份, git alias http://www.liaohuqiu.net/cn/posts/git-setup-and-setting/

Git Config 命令查看配置文件 https://cnbin.github.io/blog/2015/06/19/git-config-ming-ling-cha-kan-pei-zhi-wen-jian/

ssh-keygen -t rsa -f ~/.ssh/id_rsa_evan -C [email protected]

https://www.linuxchina.net/?p=3393