Mac下使用ssh、scp

使用SSH

Windows下我习惯用PUTTY来ssh登录,Mac直接使用Terminal即可。

ssh的一些常用命令:

使用root账号登录指定ip的服务器。下面需要把ip换成你自己服务器的ip。
ssh root@ip

如果服务器使用的不是标准端口,比如是4567端口,则是:
ssh root@ip -p 4567 

MAC下还有窗口方式:

先打开一个终端,在菜单栏点选 Shell  - 新建远程连接,如下

NewImage

这时候会出新一个窗口,如下:

NewImage

选择安全Shell(ssh),输入服务器ip地址和用户名

完成后在SSH菜单上点选 导出设置,在你的桌面就会看到一个你刚刚命名的 test.terminal。

使用SCP

下面是一个简单例子:

首先创建一个本地文件

echo hello, world > a-file.txt

copy本地文件到服务器的命令如下:

scp <local file> <remote user>@<remote machine>:<remote path>

如果想Copy远程文件到本地,则是:

scp <remote user>@<remote machine>:<remote path> <local file>

如果想复制目录也是可以的:

scp -r local_folder remote_username@remote_ip:remote_folder

比如下面命令:scp -r /home/space/music/ root@www.cumt.edu.cn:/home/root/others/

参数说明:

[root@tank test]# scp --help 
usage: scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] 
[-l limit] [-o ssh_option] [-P port] [-S program] 
[[user@]host1:]file1 [...] [[user@]host2:]file2  

-1                        强制scp命令使用协议ssh1 
-2                        强制scp命令使用协议ssh2 
-4                        强制scp命令只使用IPv4寻址 
-6                        强制scp命令只使用IPv6寻址 
-B                        使用批处理模式(传输过程中不询问传输口令或短语) 
-C                        允许压缩。(将-C标志传递给ssh,从而打开压缩功能) 
-p                         保留原文件的修改时间,访问时间和访问权限。 
-q                         不显示传输进度条。 
-r                          递归复制整个目录。 
-v                          详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。 
-c cipher              以cipher将数据传输进行加密,这个选项将直接传递给ssh。 
-F ssh_config      指定一个替代的ssh配置文件,此参数直接传递给ssh。 
-i identity_file      从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。 
-l limit                    限定用户所能使用的带宽,以Kbit/s为单位。 
-o ssh_option      如果习惯于使用ssh_config(5)中的参数传递方式, 
-P port                  注意是大写的P, port是指定数据传输用到的端口号 
-S program         指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。

http://blog.51yip.com/linux/1027.html

参考资料:

Mac上使用SSH
http://2friend.org/2008/10/02/mac%E4%B8%8A%E4%BD%BF%E7%94%A8ssh/

Using SSH/SCP on Mac OS X in the Terminal app
http://ged.msu.edu/angus/tutorials/using-ssh-scp-terminal-macosx.html