文件传不过去咋整?SSH上传服务器实战手册


​你的文件还在用微信传来传去?每次给服务器传文档都要折腾半小时?​​ 作为一个跟服务器打了十年交道的运维 *** ,今天手把手教你用SSH这把"万能钥匙"轻松传文件。咱们不整那些虚头巴脑的理论,直接上硬核操作!


工具准备:别急着动手,先把家伙什儿备齐

​记住喽,工欲善其事必先利其器。​​ 你需要准备两样东西:

  • ​本地电脑装好SSH客户端​​:Windows用户推荐PuTTY,Mac/Linux自带终端就行
  • ​服务器开通SSH服务​​:找管理员确认这两点:①22端口开放 ②你有登录权限

​举个栗子​​:我徒弟小王上周 *** 活传不上去文件,结果发现服务器SSH端口改成了2222。所以啊,​​先问清楚端口号​​比啥都重要!


基础操作:3分钟学会传文件

​重点来了!​​ 用​​scp命令​​就像用U盘拷贝文件一样简单:

bash复制
scp 本地文件路径 用户名@服务器IP:目标路径

​实际案例​​:把桌面的"年度报告.pdf"传到服务器的/home/doc文件夹

bash复制
scp /Users/你的名字/Desktop/年度报告.pdf root@192.168.1.100:/home/doc

​注意看这几个坑​​:

  1. 路径里别带中文(服务器可能不认)
  2. 传文件夹要加​​-r参数​​(就像打包快递)
  3. 首次连接会出现指纹确认,直接输yes就行

高手进阶:三种姿势任你选

​别以为scp就是全部,咱还有更骚的操作!​

​姿势一:sftp交互模式​
适合边传文件边查看目录,就跟操作本地文件夹似的:

bash复制
sftp root@192.168.1.100put 本地文件路径  #上传get 远程文件路径  #下载

​姿势二:rsync智能同步​
传大文件夹就用这个,​​只传修改过的部分​​,省时又省力:

bash复制
rsync -avz 本地文件夹/ root@192.168.1.100:/目标路径

​姿势三:sshfs挂载大法​
把服务器文件夹变成电脑本地磁盘,直接拖拽上传:

bash复制
sshfs root@192.168.1.100:/远程路径 /本地挂载点

避坑指南:新手必看的血泪教训

​这些坑我当年都踩过,现在给你划重点!​

​问题一:老提示Permission denied​
九成是因为文件权限问题,试试这两招:

  1. 上传前在本地执行chmod 600 文件名
  2. 服务器上用ls -l检查文件权限

​问题二:传一半断网了咋整​
用rsync的​​--partial​​参数支持断点续传:

bash复制
rsync -avz --partial 大文件.zip root@192.168.1.100:/backup

​问题三:想传得更安全​
建议配置​​密钥登录​​(比密码安全100倍):

  1. 本地生成密钥对:ssh-keygen -t rsa
  2. 传公钥到服务器:ssh-copy-id root@192.168.1.100

个人私货:这些年悟出的门道

说句掏心窝子的话,​​别盲目追求高级工具​​。我见过太多新手沉迷学各种GUI工具,结果遇到服务器没图形界面就傻眼。把命令行玩熟了,走到哪都是你的主场。

​给三点建议​​:

  1. 重要文件​​传两份​​:比如同时传到/home和/backup目录
  2. 定期清理旧文件:用find命令设置自动删除30天前的临时文件
  3. 传完务必验证:对比本地和远程的md5值,命令是md5sum 文件名

​最后说句实在的,技术这东西就是熟能生巧。​​ 刚开始可能觉得命令行吓人,练上十次八次就跟吃饭喝水一样自然。下次再遇到文件传不过去的情况,记得深吸一口气——你的服务器,你做主!