2653885 发表于 2018-6-23 13:39:06

Windows终端使用FTP访问Linux-DevilRex119

  在很多大型的企业级地理数据库建设中,服务器一般都是Linux、AIX、Solaris等操作系统,一般情况下,用户使用Windows终端来访问这些操作系统,包括命令行终端,文件传输软件,常见的包括Putty、SSH、Xmanager等,根据每个用户先入为主,一般先学哪一个,就比较习惯于该软件,但是往往到客户那边情况就大相径庭了,有可能你习惯的工具人家根本都没有安装,那么碰到不太熟悉的环境,只掌握一种本领就显得捉襟见肘了。
  这次就碰到了一个问题,我习惯使用putty+SSH这种软件,我希望获得用户AIX操作系统导出的DMP文件,拷贝到我的Windows操作系统中做测试,但是如果没有按照以Binary方式进行导出,该DMP在我的操作系统中是不能使用的,而且用户那边只有Xmanager,这个我也不太习惯,那么使用FTP传输不失为一个很好的解决方法。
  使用FTP,可以直接设置以Binary的方式下载到用户本地,非常方便。
  1、确保操作系统安装VSFTPD
  可以使用如下命令行进行验证:

[*]  # cd /etc/vsftpd
[*]  # ls
[*]  ftpusersuser_listvsftpd.confvsftpd_conf_migrate.sh
[*]  #
  如果没有安装,可以下载相关Tar包安装即可,vsftpd.conf包括对FTP服务配置参数的相关设置。
  2、确保服务器FTP服务在开启状态

[*]  # service vsftpd status
[*]  vsftpd is stopped
[*]  # service vsftpd start
[*]  Starting vsftpd for vsftpd:                              
  3:建议服务器的防火墙或者SELinux处于关闭状态,或者开放21端口。
  4:使用Windows的CMD进行FTP连接即可。
  FTP服务器IP地址:

[*]  C:\Users\Administrator>ftp 192.168.220.133
[*]  连接到 192.168.220.133。
[*]  220 (vsFTPd 2.2.2)
[*]  用户(192.168.220.133:(none)): root
[*]  331 Please specify the password.
[*]  密码:
[*]  230 Login successful.
  5:连接成功之后,就可以输入类似命令

[*]  ftp> help
[*]  命令可能是缩写的。命令为:
[*]  !               delete          literal         prompt          send
[*]  ?               debug         ls            put             status
[*]  append          dir             mdelete         pwd             trace
[*]  ascii         disconnect      mdir            quit            type
[*]  bell            get             mget            quote         user
[*]  binary          glob            mkdir         recv            verbose
[*]  bye             hash            mls             remotehelp
[*]  cd            help            mput            rename
[*]  close         lcd             open            rmdir

[*]  ftp> dir
[*]  200 PORT command successful. Consider using PASV.
[*]  425 Failed to establish connection.
  建议关闭Windows操作系统的防火墙即可解决按问题。
  6、命令介绍
  当断开连接之后,可以使用Open命令重新连接,也可以使用User命令继续连接该IP,DIR命令类似于DOS的列出所有目录文件列表,类似于Linux的ls命令:

[*]  ftp> dir
[*]  远程主机关闭连接。
[*]  ftp> open
[*]  到 192.168.220.133
[*]  连接到 192.168.220.133。
[*]  220 (vsFTPd 2.2.2)
[*]  用户(192.168.220.133:(none)): root
[*]  331 Please specify the password.
[*]  密码:
[*]  230 Login successful.
[*]  ftp> dir
[*]  200 PORT command successful. Consider using PASV.
[*]  150 Here comes the directory listing.
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Desktop
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Documents
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Downloads
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Music
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Pictures
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Public
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Templates
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Videos
[*]  -rw-------    1 0      0            3135 Aug 292013 anaconda-ks.cfg
[*]  -rw-r--r--    1 0      0         2062384 Jan 02 05:54 ceshi_ora_11016.trc
[*]  -rw-r--r--    1 0      0      14415564 Jan 02 06:51 ceshi_ora_11620.trc
[*]  drwxr-xr-x   18 0      0            4096 Mar 05 02:12 gdal-1.9.2
[*]  -rw-r--r--    1 0      0      11532797 Mar 05 01:50 gdal192.zip
[*]  -rw-r--r--    1 0      0         59875 Aug 292013 install.log
[*]  -rw-r--r--    1 0      0            9548 Aug 292013 install.log.syslog
[*]  drwxr-xr-x    2 0      0            4096 Mar 06 02:44 shp_data1
[*]  -rwxr-xr-x    1 0      0             701 Feb 27 03:34 test.pl
[*]  226 Directory send OK.
[*]  ftp: 收到 1164 字节,用时 0.06秒 18.77千字节/秒。
  查看状态Status,重点关注类型ascii,也就是传输的数据以ascii码形式:

[*]  ftp> status
[*]  连接到 192.168.220.133。
[*]  类型: ascii;详细: 开 ;铃声: 关 ;提示: 开 ;通配: 开
[*]  调试: 关 ;哈希标记打印: 关 。
  如果希望用户使用binary方式传输,比如上述dir之后,在root的根目录下有一个test.pl文件,我希望使用binary形式传入到Windows终端。使用FTP获得文件使用get命令:

[*]  ftp> binary
[*]  200 Switching to Binary mode.
[*]  ftp> get test.pl
[*]  200 PORT command successful. Consider using PASV.
[*]  150 Opening BINARY mode data connection for test.pl (701 bytes).
[*]  226 Transfer complete.
[*]  ftp: 收到 701 字节,用时 0.00秒 701000.00千字节/秒。
  mget命令一次获取多个远程文件。
  mget命令的一般格式为:mget   文件名列表
  使用用空格分隔的或带通配符的文件名列表来指定要获取的文件,对其中的每个文件都要求用户确认是否传送。获得的test.pl文件在默认命令行输入的文件夹中,即C:\Users\Administrator文件夹中。

[*]  C:\Users\Administrator>ftp 192.168.220.133
  使用send命令,将本地文件传入到目标服务器中:

[*]  ftp> send test1.pl
[*]  200 PORT command successful. Consider using PASV.
[*]  150 Ok to send data.
[*]  226 Transfer complete.
[*]  ftp: 发送 701 字节,用时 0.00秒 701.00千字节/秒。
[*]  ftp> dir
[*]  200 PORT command successful. Consider using PASV.
[*]  150 Here comes the directory listing.
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Desktop
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Documents
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Downloads
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Music
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Pictures
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Public
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Templates
[*]  drwxr-xr-x    2 0      0            4096 Aug 292013 Videos
[*]  -rw-------    1 0      0            3135 Aug 292013 anaconda-ks.cfg
[*]  -rw-r--r--    1 0      0         2062384 Jan 02 05:54 ceshi_ora_11016.trc
[*]  -rw-r--r--    1 0      0      14415564 Jan 02 06:51 ceshi_ora_11620.trc
[*]  drwxr-xr-x   18 0      0            4096 Mar 05 02:12 gdal-1.9.2
[*]  -rw-r--r--    1 0      0      11532797 Mar 05 01:50 gdal192.zip
[*]  -rw-r--r--    1 0      0         59875 Aug 292013 install.log
[*]  -rw-r--r--    1 0      0            9548 Aug 292013 install.log.syslog
[*]  drwxr-xr-x    2 0      0            4096 Mar 06 02:44 shp_data1
[*]  -rwxr-xr-x    1 0      0             701 Feb 27 03:34 test.pl
[*]  -rw-r--r--    1 0      0             701 Apr 18 01:38 test1.pl
[*]  226 Directory send OK.
[*]  ftp: 收到 1230 字节,用时 0.01秒 94.62千字节/秒。
  同样也可以使用Put 命令,该命令与send比较类似。
  put和mput命令用于向远程机发送文件;
  Put命令的一般格式为:put 文件名
  mput命令一次发送多个本地文件;
  mput命令的一般格式为:mput 文件名列表
  使用用空格分隔的或带通配符的文件名列表来指定要发送的文件。对其中的每个文件都要求用户确认是否发送。使用cd命令切换目标服务器的目录:

[*]  ftp> cd /home/oracle
[*]  250 Directory successfully changed.
[*]  ftp> dir
[*]  200 PORT command successful. Consider using PASV.
[*]  150 Here comes the directory listing.
[*]  -rw-r--r--    1 500      501      1170432000 Jan 14 01:01 DBCGW.DMP
[*]  drwxrwxr-x    9 500      501          4096 Jan 14 01:07 apache-tomcat-7.0.42
[*]  drwxrwxr-x    4 500      501          4096 Sep 092013 app
[*]  -rwxrwxr-x    1 500      501         493 Jan 14 01:03 export.log
[*]  -rwxrwxr-x    1 500      501          1402 Jan 14 01:04 import.log
[*]  drwxr-xr-x    6 500      501          4096 Nov 29 08:24 sdeexe102
[*]  226 Directory send OK.
[*]  ftp: 收到 411 字节,用时 0.01秒 29.36千字节/秒。
  如果不希望本地默认路径为C:\Users\Administrator,希望修改为C:\为默认路径,使用lcd命令修改

[*]  ftp> lcd c:\
[*]  目前的本地目录 C:\。
  其他命令大家可以自己来进行测试和学习!
页: [1]
查看完整版本: Windows终端使用FTP访问Linux-DevilRex119