1、linux 下 scp 命令详解-主机之间拷贝文件不同的 Linux 之间 copy 文件常用有 3 种方法,第一种就是 ftp,也就是其中一台 Linux 安装 ftp Server,这样可以另外一台使用 ftp 的 client 程序来进行文件的 copy。第二种方法就是采用 samba 服务,类似 Windows 文件 copy 的方式来操作,比较简洁方便,第三种就是利用scp 命令来进行文件复制。scp 是有 Security 的文件 copy,基于 ssh 登录。操作起来比较方便,比如要把当前一个文件 copy 到远程另外一台主机上,可以如下命令。scp /home/daisy/fu
2、ll.tar.gz root172.19.2.75:/home/root然后会提示你输入另外那台 172.19.2.75 主机的 root 用户的登录密码,接着就开始 cp 和ungzip 了如果想反过来操作,把文件从远程主机 copy 到当前系统,也很简单。scp root172.19.2.75:/home/root /home/daisy/full.tar.gz例如: copy 本地的档案到远程的机器上 scp /etc/lilo.conf knet67.ee.oit.edu.tw:/home/k 会将本地的 /etc/lilo.conf 这个档案 copy 到 net67.ee.oit.
3、edu.tw,使用者 k 的家目录下。copy 远程机器上的档案到本地来 scp knet67.ee.oit.edu.tw:/etc/lilo.conf /etc 会将 net67.ee.oitdu.tw 中 /etc/lilo.conf 档案 copy 到本地的 /etc 目录下。 保持从来源 host 档案的属性 scp p knet67.ee.tw:/etc/lilo.conf /etc 在此必须注意使用者的权限是否可读取远程上的档案,若想知道更多关于 scp 的使用方法,可去看看 scp 的使用手册。 ssh-keygen 产生公开钥 (pulib key) 和私人钥 (private
4、 key),以保障 ssh 联机的安性, 当 ssh 连 shd 服务器,会交换公开钥上,系统会检查 /etc/ssh_know_hosts 内储存的 key,如果找到客户端就用这个 key 产生一个随机产生的 session key 传给服务器,两端都用这个 key 来继续完成 ssh 剩下来的阶段。 它会产生 identity.pub、identity 两个档案,私人钥存放于 identity,公开钥 存放于 identity.pub 中,接下来使用 scp 将 identity.pub copy 到远程机器的家目录下.ssh 下的authorized_keys。 .ssh/authorized_keys(这个 authorized_keys 档案相当于协议的 rhosts 档案), 之后使用者能够不用密码去登入。RSA 的认证绝对是比 rhosts 认证更来的安全可靠。 执行: scp identity.pub klinux1.ee.oit.edu.tw:.ssh/authorized_keys 若在使用 ssh-keygen 产生钥匙对时没有输入密码,则如上所示不需输入密码即可从 net67.ee.oit.edu.tw 去登入 linux1.ee.oit.edu.tw。在此,这里输入的密码可以跟帐号的密码不同,也可以不输入密码。