利用WinScp解决Windows与Linux文件对传问题


虽然现在Linux操作系统越来越受企业的欢迎。与Windows操作系统相比,其具有免费、稳定等方面的特点。但是在线阶段要全部普及Linux操作系统仍然是一件不可能完成的任务。因为现在很多软件,如AutoCAD等作图软件,只能够在微软的操作系统上运行。为此在很长一段时间内,Windows操作系统与Linux操作系统必将共存一段时间。但是,让人遗憾的是,Linux操作系统与Windows操作系统由于文件处理机制的不一样,为此在他们之间进行文件共享的话,会产生格式化的兼容问题。

笔者在Linux操作系统上安装了Oracle数据库系统。如上图所示,这是在Linux操作系统Oracle系统的一个脚本文件。其中addNode是在Linux操作系统上显示的原始格式。但是将这文件利用共享文件夹复制到Windows操作系统上就变为了“AddNode-backup”显示的格式。从上面这个图中可以看出,在微软操作系统上其格式全部混乱了。也就是说,多行内容变为了同一行。这显然给系统管理员带来了一定的苦难。无论是阅读还是修改,都比较麻烦。那么是否有其他好的工具,可以解决这个问题呢?答案当然是肯定的。现在Linux操作系统与Windows操作系统之间有很多兼容的工具,可以帮助系统管理员解决这个文件格式不兼容的问题。笔者这里将给大家推荐一款WinSCP工具。利用这款工具可以在两个操作系统之间实现文件的对传,而且不用担心这个格式不兼容的问题。因为利用这款工具从Linux操作系统上复制文件到Windows操作系统上时,其自动会对格式进行调整,以满足Windows客户端电脑显示的需要。

一、WinSCP工具可以提供比较好的安全性。

Winscp工具是基于ssh协议实现的,而不是基于Telnet协议实现的。这两个协议在安全性上是不同的。Telnet协议在网络传输过程中,账户名、密码等等都是明文传输的。为此在使用这个协议时,其可能会被非法攻击者窃取帐号、密码等宝贵信息。而且Telnet协议并不是Linux操作系统采用的默认协议。如果要使用Telnet协议的话,那么需要在Linux操作系统上经过一系列复杂的配置才能够使用。而Winscp工具所采用的协议是ssh协议。则是Linux操作系统所采用的默认远程登录协议。为此在使用这个工具的时候,不需要再Linux操作系统上进行任何的设置。这无疑提高了这个小工具的使用价值。最重要的是,ssh协议其安全性很高,因为其在传输过程中,账号密码都是加密处理的,为此就不用担心数据的外泄。

WinSCP的安全性不仅体现在这个协议的安全性上,而且其也对权限进行了限制。如通常情况下,普通用户是无法访问/root目录的。因为这个目录是特权用户root所专享的。现在如果用户利用WinSCP来访问Linux操作系统,想要复制/root目录中的文件时,系统会提出错误信息。因为普通用户无法访问这个目录,为此用户的这次访问会被拒绝。

为此,使用这个WinSCP工具,其不仅方便,而且安全性又有所保证。这也是笔者推荐大家使用这个工具的一个重要原因。

二、自动定位用户主目录。

众所周知,在Linux操作系统中,root账户的根目录就是/root。在Linux操作系统中,还有一个home 目录,其下面存储着各个用户的主目录。如在安装Oracle数据库时,笔者创建了一个oracle用户。那么默认情况下,在/home目录下就会有一个/oracle目录。当这个用户创建的文件、这个用户的邮件等等,都是会保存在这个用户主目录下。而且出于安全与独立性的考虑,往往这个用户的主目录只有用户自己可以访问。当以这个用户登录到系统中去,其默认打开的目录就是这个用户的主目录。所以,如果采用中间工具,如笔者现在介绍的这个WinSCP工具来登录Linux操作系统的话,如果其也能够自动定位到用户的主目录,那么无疑可以提高文件复制的效率。那么这个工具可以实现这个目标吗?

如上图所示,这是使用WinSCP工具登录到Linux操作系统上的界面。左面是Windows客户端上的内容。右面是Linux操作系统上内容。当以Oracle用户登录时,默认情况下其会把路径定位到自己的主目录下。通常情况下,用户的各个主目录都是相互独立的。为此一登录就定位到用户的主目录,可以节省用户切换目录的麻烦。这可以提高用户文件复制的效率。另外,我们也可以看到,在Linux窗口的显示钟,其目录分为灰色与黑色两种字体,这主要是他们目录或者文件的性质不一样所造成的。灰色的表示隐藏文件(以英文点号开头的文件或者目录),一般都是系统目录或者文件。而黑色字体一般为用户自己的文件。分字体来显示文件,能够给用户一种直观的感觉。这对于他们进行文件的操作,也能够带来很大的方便。至少可以帮助用户比较快的选种自己的文件。另外值得一提的就是,使用WinSCP工具进行操作时,不需要Linux操作系统进行任何的响应。如使用PSI等工具进行文件传输时,必须要等待Linux操作系统响应才行。而使用这个WinScp工具的话,在Linux操作系统上不需要任何响应。都可以在WinSCP一端完成。

所以说在WinSCP工具中,其通过多种手段来帮助用户定位自己所需要操作的文件。这看起来虽然是小事情。即使没有这个功能也不影响用户的使用。但是,这却是一种很人性化的设计。其大大方便了用户的操作。

三、对格式进行自动转换。

如果现在Linux操作系统在担任一个服务器的角色。而且没有为其配备键盘、鼠标等外围设备。此时,系统管理员往往只有通过远程登录来维护服务器。而在对其进行维护的时候,配置文件是其必须要维护的内容。但是通过Linux操作系统自带的vi文本编辑器,来修改配置文件,很多系统管理员可能不习惯。因为其不能够通过鼠标来定位(如果鼠标存在的话),而只能够通过上下左右的方向键来进行光标的移动。为此在书写脚本的时候,非常的不方便。

如现在笔者自己采用的是Windows操作系统,而Oracle数据库服务器采用的是Linux服务器。笔者现在要写一个脚本文件,用来实现对Oracle数据库的备份。其实Linux操作系统中的脚本文件跟Windows操作系统中的批处理文件相同,都可以通过记事本来编写。只是扩展名不同而已。只要将扩展名改为sh,就变成了Linux操作系统上的脚本文件。但是在微软操作系统上编写好的脚本文件,如果有多行的话,则无法在Linux操作系统上直接运行。这主要是因为他们之间格式不兼容所导致的。为此现在需要有一种机制,能够根据Linux操作系统的需要,自动对这个脚本文件的格式进行转换。让Linux操作系统能够正确识别这个脚本文件,并执行它。

显然WinSCP能够很好的担任这个角色。首先系统管理员可以在Windows电脑上编写脚本程序。如可以利用记事本编写一个Oracle数据库备份的脚本程序,注意在文件命名的时候要采用sh扩展名。然后再利用这个工具,将这个文件直接从左面的窗口(Windows操作系统)移动到右面的窗口(Linux操作系统)的对应目录中。在这个复制的过程中,这个工具会自动转换这个脚本文件的格式。如果直接通过共享文件夹来传输文件的话,则需要手工使用命令来进行强制转换。显然这操作起来并不是很方便。而现在由这个工具来自动对文件进行转换,可以免除用户的烦恼。

WinSCP是一个免费的工具,只需要在Windows客户端上安装即可(微软操作系统默认情况下不支持ssh协议);而在Linux操作系统上则不用进行任何的配置。所以这个工具是Linux系统管理员的一个好帮手。其可以轻松实现在Windows客户端与Linux服务器之间实现文件的传送,而不用担心安全或者格式方面的问题。当初学者不怎么熟悉Linux操作系统的命令行操作方式时,这个工具可以非常轻松的帮助他们克服这个障碍,顺利的在两个操作系统上进行切换与文件的传输。

相关内容