在虚拟机上搭建lnmp环境时遇到的坑,如下:

使用 wget 从网站下载php的压缩包时,发现下载速度超级无敌慢…所以想着在 win 上先下载然后复制到 CentOS 中。这个过程比较简单,我是直接将 php 的压缩文件复制粘贴到的 CentOS(这雷就埋下了),然后在一顿操作后,执行 “./configure --prefix=…”命令时报错,提示找不到 configure 文件。网上找了一堆方法仍没有解决,我就想这个文件是不是在解压之前就丢失了一部分呢(压缩包本身问题)。于是查看了一下文件大小 “ls -lh php-7.2.20.tar.gz ” ,哟呵,不查不知道,一查吓一跳,显示文件大小只有 2M 多(正常压缩包大小为18M左右)。

到这我们就发现了问题的关键,压缩包在直接从 win 拷贝到 CentOS 的过程中,部分数据丢失。所以使用 pscp 工具进行文件传输。步骤如下:

1. 首先下载 pscp.exe ,地址为:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html;
2. 将下载完成的 pscp.exe 文件拷贝到 C:\Windows\System32 文件夹下;
3. 以管理员的方式打开 cmd,切换到 C:\Windows\System32 目录下,接着输入以下指令:
(此时假设你要传输的文件 php-7.2.20.tar.gz 放在D盘下,将要把它传输到 IP 地址为192.168.47.128的 CentOS 的 home 文件夹下)

pscp D:\php-7.2.20.tar.gz root@192.168.47.128:/home/
root@192.168.47.128's password: (输入密码, 回车)

正常情况下文件就已经传输过去了,但是我却显示这个错误:
pscp ssh_init: Network error: Cannot assign requested address
解决方法为加上端口号再进行传输,命令为:
pscp -P 22 D:\php-7.2.20.tar.gz root@192.168.47.128:/home/

OK,大功告成。

Logo

更多推荐