网线用于连接两台 ubuntu 用于快速传输数据
我把一根网线分别连到了两台电脑的网口上,系统都是 ubuntu。可以使用这种方式把两台电脑连接起来,用来传输数据吗?
可以的!
1. 物理连接
使用网线直接将两台电脑的网口连接起来。
2. 配置静态 IP 地址
在每台电脑上配置静态 IP 地址。假设您使用的是 Ubuntu 系统。
现代 Linux 发行版(如 Ubuntu 18.04 及以后)使用 predictable network interface names
,这些名称通常是 enp0s3
、ens33
等。
您可以通过以下命令来列出网络接口并找到正确的接口名称:
ip link show
这个命令将显示所有网络接口的列表,类似如下输出:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 08:00:27:58:94:0a brd ff:ff:ff:ff:ff:ff
在这个例子中,网络接口名称是 enp0s3
。找到您的接口名称后,可以使用正确的接口名称配置 IP 地址。
3. 配置网络
假设您的网络接口名称是 enp0s3
,可以按以下步骤配置:
使用 ip
命令配置 IP 地址
- 电脑1:
配置静态 IP 地址:
sudo ip addr add 192.168.1.11/24 dev enp0s3
sudo ip link set enp0s3 up
- 电脑2:
配置静态 IP 地址:
sudo ip addr add 192.168.1.12/24 dev enp0s3
sudo ip link set enp0s3 up
4. 测试连接
配置完成后,您可以使用 ping
命令测试两台电脑之间的连接:
- 从电脑1:
ping 192.168.1.12
- 从电脑2:
ping 192.168.1.11
通过正确的网络接口名称配置,您应该能够顺利建立两台电脑之间的网络连接并传输数据。
是的,您可以通过一根网线将两台电脑直接连接起来,用于数据传输。以下是具体的步骤来配置和实现数据传输:
5. 数据传输
有多种方法可以在两台电脑之间传输数据。以下是几种常用方法:
方法1:使用 scp
(安全复制)
scp
命令用于通过 SSH 进行文件复制。确保两台电脑上都安装了 SSH,并启动了 SSH 服务。
- 从电脑1传输文件到电脑2:
scp /path/to/local/file username@192.168.1.12:/path/to/remote/destination
- 从电脑2传输文件到电脑1:
scp /path/to/local/file username@192.168.1.11:/path/to/remote/destination
方法2:使用 rsync
rsync
是一个用于文件和目录同步的工具。
- 从电脑1同步文件到电脑2:
rsync -avz /path/to/local/file username@192.168.1.2:/path/to/remote/destination
- 从电脑2同步文件到电脑1:
rsync -avz /path/to/local/file username@192.168.1.1:/path/to/remote/destination
方法3:使用 ftp
可以使用 FTP 服务进行文件传输,配置 FTP 服务并使用 FTP 客户端连接。
这里我们使用 scp
命令。
错误:
scp ./vins-mono-melodic.tar h@192.168.1.12:/home/h/
ssh: connect to host 192.168.1.12 port 22: Connection refused
lost connection
这个错误信息表明,目标电脑的 SSH 服务没有运行,或者目标电脑的防火墙阻止了端口 22 的连接。以下是一些解决办法:
5.1. 确保 SSH 服务已安装并正在运行
确保两台电脑上都安装了 SSH,并启动了 SSH 服务。这里本地电脑也要开启 SSH。
在目标电脑(IP 地址为 192.168.1.12
)上执行以下命令来检查并启动 SSH 服务:
sudo apt update
sudo apt install openssh-server
sudo systemctl enable ssh
sudo systemctl start ssh
然后检查 SSH 服务状态:
sudo systemctl status ssh
5.2. 检查防火墙设置
如果您的系统使用 ufw
(Uncomplicated Firewall),确保端口 22 已被允许:
sudo ufw allow 22
sudo ufw enableScreenshot from 2024-07-18 09-47-06
检查防火墙状态:
sudo ufw status
5.3. 尝试重新连接
在源电脑上再次尝试使用 scp
进行文件传输:
scp ./vins-mono-melodic.tar h@192.168.1.12:/home/h/
# 输入 目标电脑的密码,我们成功了。
5.4. 确保两台电脑在同一网络中
确保两台电脑在同一网络中,并且可以通过 ping
命令相互通信。例如,从源电脑上 ping
目标电脑:
ping 192.168.1.12
示例操作步骤
- 在目标电脑(192.168.1.12)上:
sudo apt update
sudo apt install openssh-server
sudo systemctl enable ssh
sudo systemctl start ssh
sudo ufw allow 22
sudo ufw enable
- 在源电脑上再次尝试使用
scp
:
scp ./vins-mono-melodic.tar h@192.168.1.12:/home/h/
通过这些步骤,您应该能够解决 ssh: connect to host 192.168.1.12 port 22: Connection refused
错误,并成功传输文件。
此外,需要使用:https://blog.csdn.net/xuzhengzhe/article/details/136271161 中的方法进行设置。
只是通过命令设置 会一直 弹网络连接失败。
然后我们就可以登录:
ssh h@192.168.1.11
ssh h@192.168.1.12