两台Linux电脑之间一键传输硬盘数据的方法
两台Linux电脑之间的数据怎么互相拷贝呢?用移动硬盘吗?不用这么麻烦,只要这两台Linux连在同一个局域网下就可以互相传输数据,不需要依赖移动硬盘或者NAS之类的第三方设备。
我双12买了2TB的nvme固态硬盘,京东自营保修5年的,不知道什么颗粒,5年质保放心用:
为什么买这个牌子?因为预算有限,这是双12最便宜的2TB的nvme了吧?
有硬盘空间了,就尝试着把桌面Linux工作站的计算也分一点给笔记本Linux工作站(两条Linux一起算更快呀)。别看我下面这台电脑是2019年买的i5-9400的神舟笔记本,我升级成64GB的DDR4内存(两个内存插槽都插满了),还升级了共4TB的固态硬盘,做Linux笔记本工作站绰绰有余了:
第一步、要传入数据的Linux电脑开启SSH
要传入数据的那台Linux电脑要开启SSH,要传出数据的Linux电脑是否要开启SSH我就不确定了(因为要传出数据的那台电脑我之前也开启了ssh)。假如遇到报错,就把要传出数据的那台电脑也开启SSH吧。
开启SSH非常简单,在要传入数据的那台电脑输入下面的命令:
sudo apt-get install openssh-server
输入密码回车后,会出现下图的提示,如果问你 [Y/n], 一律输入 y 回车:
安装设置完成后,会出现命令提示符等待你的下一步命令:
输入下面的命令, 回车:
就是用vi软件进入sshd_config文件进行编辑:
先按键盘上的ESC键,再按键盘上的 i 字母键,这时候会进入insert模式,用键盘上的“向下”方向键将光标拖到sshd_config文件末尾,在sshd_config文件末尾加上下面的这一句话:
PermitRootLogin yes
加上PermitRootLogin yes这句话之后(见上图),点击ESC键,之后按键盘上的4个按钮 :wq! 回车,即可保存你刚才输入的PermitRootLogin yes这句话。记住是:wq!这4个键再回车,也就是“冒号wq感叹号”这4个键,再回车,其中wq是两个字母键(我也不知道为什么vi编辑器保存要设置成:wq!再回车,反正如果你要用vi或者是vim只能这么来保存退出)。
之后敲下面的4条命令,每条命令敲完之后,回车一下:
sudo /etc/init.d/ssh stop
sudo /etc/init.d/ssh start
sudo service ssh start
sudo systemctl enable ssh
上面的4条命令敲完之后,你的SSH就开启了。
第二步、用scp来传输单个文件或整个文件夹(一条命令搞定)
用下面的命令来传输单个文件,在第一台Linux电脑上输入下面的命令,你的第一台电脑上的/home/work/source.txt 这个文件,就会被拷贝到第2台Linux电脑的/home/work/ 文件夹下了。
scp /home/work/source.txt 要传入的电脑名@192.168.0.10:/home/work/
注意:192.168.0.10是你要传入的Linux电脑的IP地址(原文件所在电脑的ip地址无需输入,只要将两台Linux连接到同一个局域网即可)
如果你的第2台电脑名字是yasden,IP地址是192.168.1.32就用下面的命令:
scp /home/work/source.txt yasden@192.168.1.32:/home/work/
这样你的第一台电脑上面的/home/work/source.txt文件,就被拷贝到yasden电脑的/home/work/文件夹下面了。拷贝完成后可以看到文件传输速度:
如果你用scp来拷贝文件夹,例如下面的命令,回车后,会报错:
scp /home/yasden/data/download yasden2@192.168.31.152:/home/yasden/
会提示 /home/yasden/data/download不是一个文件:
如果拷贝文件夹,需要在scp后面接一个-r,这样才不会报错。也就是加上-r可以拷贝文件夹,例如下面的命令用来将第一台电脑的/home/yasden/data/download文件夹拷贝到yasden2电脑的/home/yasden2/data_3T文件夹下面:
scp -r /home/yasden/data/download yasden2@192.168.31.152:/home/yasden2/data_3T
拷贝过程中,会提示每个文件的传输速度:
第三步、用rsync传输文件(一条命令搞定)
还可以用rsync这个命令来拷贝文件(注意rsync拷贝文件夹的话,后面需要加-r):
rsync -r /home/work/sourcedir 要传入的电脑名@192.168.0.10:/home/work/
如果你的第2台电脑名字是yasden,IP地址是192.168.1.32就用下面的命令:
rsync -r /home/work/sourcedir yasden@192.168.1.32:/home/work/
这样,你的第一台电脑的/home/work/sourcedir这个文件夹下面的所有文件,都被拷贝到yasden电脑的/home/work/文件夹下面了。
命令输入回车之后,会让你输入第2台电脑的登录密码,输完密码之后,就开始文件传送了。
其他传输方法
除了上面说的rsync和scp,还有其他的传输方式,大家自行检索吧。
全文完,谢谢观看。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
Eitetsu
校验提示文案
没钱也来看看
校验提示文案
一动不动
校验提示文案
shanes
校验提示文案
值友7380412226
校验提示文案
值友3742379866
不过我用verysync
校验提示文案
z小新
校验提示文案
shanes
校验提示文案
Eitetsu
校验提示文案
z小新
校验提示文案
值友3742379866
不过我用verysync
校验提示文案
一动不动
校验提示文案
值友7380412226
校验提示文案
没钱也来看看
校验提示文案