Linux两台服务器之间复制文件及免密码登录的方法
<p>有时候搭建集群机器是,需要在多台机器中间相互拷贝文件,一种方式是同事sftp拷贝到本机,再分别拷贝到其他服务器上。这里介绍一种直接在两台服务器之间拷贝文件且去掉繁琐的登陆操作的方法。</p>
<p>
<span><strong>两台服务器之间拷贝文件</strong></span></p>
<p>
采用linux命令scp可以在两台电脑之间复制文件,如有两台服务器192.168.129.100/101,现在需要拷贝100 /etc/passwd文件到101服务器的/etc目录下,登陆100服务器,知道101的用户root的密码为123456</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_604843">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">scp</code> <code class="bash plain">/etc/passwd</code> <code class="bash plain">root@192.168.129.101:</code><code class="bash plain">/etc/</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
第一次会提示授权操作,输入yes后再输入root用户的密码,拷贝完成。</p>
<p>
<span><strong>服务器之间免密码登陆</strong></span></p>
<p>
现在每次拷贝文件的时候都需要输入密码非常麻烦,现在介绍一种采用公钥/私钥认证的方式去掉密码登陆</p>
<p>
在100服务器上进入.ssh目录,</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_638751">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">cd</code> <code class="bash plain">~/.</code><code class="bash functions">ssh</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash functions">ssh</code><code class="bash plain">-keygen -t rsa</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash functions">scp</code> <code class="bash plain">id_rsa.pub root@192.168.129.101:~/.</code><code class="bash functions">ssh</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
进入101服务器,将公钥导入到~/.ssh/authorized_keys,</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_945648">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">cd</code> <code class="bash plain">~/.</code><code class="bash functions">ssh</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash functions">cat</code> <code class="bash plain">~/.</code><code class="bash functions">ssh</code><code class="bash plain">/id_rsa</code><code class="bash plain">.pub >> ~/.</code><code class="bash functions">ssh</code><code class="bash plain">/authorized_keys</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash plain">~/.</code><code class="bash functions">ssh</code><code class="bash plain">权限设置为700 </code>
</div>
<div class="line number4 index3 alt1">
<code class="bash plain">~/.</code><code class="bash functions">ssh</code><code class="bash plain">/authorized_keys</code><code class="bash plain">的权限设置为600</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
这是Linux的安全要求,如果权限不对,自动登录将不会生效</p>
<p>
完毕之后,退出服务器的登录,再使用ssh登录,你就会发现服务器不会再向你询问密码了.</p>
<p>
以上所述是小编给大家介绍的Linux两台服务器之间复制文件及免密码登录的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!</p>
<p>
原文链接:http://blog.csdn.net/u011774477/article/details/49073613</p>
頁:
[1]