说实话,刚用Pop!_OS那会儿,我最大的痛点不是驱动兼容,而是“我的照片还在安卓手机里”。
以前在Windows上,装个软件、插根线就搞定。但在Linux上,Google对MTP(Media Transfer Protocol)的支持一直是个谜——有时能用,有时读不到文件,有时传着传着就断连。更别提无线同步了,各种App各搞一套,体验支离破碎。
后来我摸索出一套纯本地、无线、双向的方案,完全不需要上传到云端,不花一分钱流量,速度取决于你的WiFi质量,通常能跑到20-50MB/s。今天就把这套“折腾成果”毫无保留地分享给你。
第一步:先解决“看屏幕+传文件”的核心工具——Scrcpy
很多人知道Scrcpy是用来投屏的,但其实它的文件传输功能被严重低估了。而且它开源、免费、无广告,对Linux极其友好。
1. 安装Scrcpy
Pop!_OS基于Ubuntu,安装非常简单:
# 更新源并安装
sudo apt update
sudo apt install scrcpy
# 如果版本太老,建议添加官方PPA获取最新版
sudo add-apt-repository ppa:maestroosh/scrcpy
sudo apt update
sudo apt install scrcpy
小贴士:Scrcpy需要你的手机开启开发者选项和USB调试。如果只想无线传输,还需要开启无线调试(Android 11及以上支持)。
2. 无线连接Scrcpy(真正的无数据线!)
这是最关键的一步。传统方式是通过USB线配对一次,之后就可以无线连接了。
2.1 先用USB线连接一次
用数据线把手机连上Pop!_OS,终端输入:
scrcpy
如果能正常显示手机屏幕,说明USB连接成功。此时终端会打印出手机IP地址,记下它,比如192.168.1.100。
2.2 切换到无线模式
断开USB线,在终端执行:
scrcpy --tcpip=192.168.1.100:5555
如果连接成功,恭喜你!现在你可以随意移动手机,Scrcpy依然稳定投屏。
注意:如果提示连接失败,试试在手机上手动配置无线调试:
- 进入设置 > 系统 > 开发者选项
- 找到无线调试,点击进入
- 选择使用配对码配对设备
- 在Pop!_OS终端执行:
scrcpy --tcpip=192.168.1.100:5555 --pair- 按提示输入配对码
3. 用Scrcpy双向传输文件
Scrcpy 2.0+版本内置了文件拖放功能,太香了!
- 从电脑传文件到手机:直接把文件拖进Scrcpy窗口,手机就会收到。
- 从手机传文件到电脑:在Scrcpy窗口中右键点击文件,选择“发送文件到PC”,文件会自动保存到
~/Scrcpy/目录下(你可以提前在启动时指定保存路径)。
# 指定文件保存目录
scrcpy --tcpip=192.168.1.100:5555 --video-source=no --window-title="传文件专用"
第二步:打造“自动同步相册”的懒人方案——Syncthing
如果你想要的是照片自动备份、音乐库实时同步,那Scrcpy的手动拖拽就不够用了。这时候需要引入Syncthing——一个开源、去中心化、隐私优先的文件同步工具。
为什么选Syncthing而不是AirDroid?
- AirDroid:体验好,但免费版有限制,且文件是走云端中转的(延迟高、有隐私顾虑)。
- Syncthing:点对点直连,数据不过第三方服务器,速度极快,完全免费。
1. 在Pop!_OS上安装Syncthing
sudo apt install syncthing
syncthing
第一次运行后,Syncthing会在浏览器打开管理界面(默认http://127.0.0.1:8384)。
2. 在安卓手机上安装Syncthing
从F-Droid或Google Play安装Syncthing App,首次运行会生成一个设备ID。
3. 配对并设置同步文件夹
在电脑端(浏览器管理界面):
- 点击右上角“操作 > 添加远程设备”
- 输入手机的设备ID
- 点击“共享文件夹”,勾选你要同步的文件夹(比如
DCIM相机目录、Music音乐目录) - 点击“保存”
在安卓手机端:
- 打开App,点击“添加远程设备”,输入电脑的设备ID
- 确认同步文件夹
4. 效果
- 手机拍的照片,几秒内自动同步到电脑的
~/Syncthing/DCIM/ - 电脑下载的音乐,自动推送到手机的
~/Syncthing/Music/ - 完全无线,后台运行,无感同步
小技巧:可以在Syncthing设置中开启“仅Wi-Fi同步”,避免消耗移动数据。
第三步:AirDroid作为“补充神器”
虽然Syncthing适合自动化,但AirDroid在某些场景下更直观,比如临时传几个大文件或从浏览器管理手机。
1. 安装与连接
在手机上安装AirDroid,打开Web版(web.airdroid.com)或Linux客户端(如果有的话,否则用浏览器)。
2. 本地网络传输(无需云端)
AirDroid有个“本地传输”功能,前提是和电脑在同一WiFi下:
- 手机和电脑连同一个WiFi
- 在AirDroid App中点击“文件传输 > 本地传输”
- 电脑浏览器访问App显示的地址(如
http://192.168.1.100:8888) - 直接拖拽文件,双向互传
3. 注意事项
- 免费版有传输文件大小限制(通常128MB),大文件请用Syncthing或Scrcpy。
- AirDroid的界面更友好,适合不熟悉命令行的用户。
第四步:音乐同步的特别优化
照片可以用Syncthing,但音乐文件大、数量多,同步速度慢怎么办?试试这个组合拳:
方案A:Syncthing + 过滤器
在Syncthing中设置文件夹过滤,只同步特定格式:
<!-- Syncthing配置文件中的文件夹过滤示例 -->
<folder id="music" label="音乐库" path="/home/user/Music/Sync" type="sendreceive">
<fileFilter>
<accept type="regex" pattern="\.(mp3|flac|wav|ogg)$"/>
<ignore type="regex" pattern="^\."/>
</fileFilter>
</folder>
方案B:使用rsync命令行(适合极客)
如果你熟悉终端,rsync是最高效的选择:
# 假设手机通过Scrcpy挂载在/media目录下(需要MTP支持)
# 或者通过SSH/FTP共享
# 从手机同步音乐到电脑
rsync -avz --progress user@192.168.1.100:/sdcard/Music/ ~/Music/
# 从电脑同步音乐到手机
rsync -avz --progress ~/Music/ user@192.168.1.100:/sdcard/Music/
前提:手机上需要安装并启用SSH Server(如
sshd)或使用SFTP功能。很多文件管理器(如Solid Explorer)支持SFTP连接。
常见问题排查
Q1:Scrcpy无线连接总是失败怎么办?
- 检查手机和电脑是否在同一WiFi网络(注意5GHz和2.4GHz频段差异,建议都连5GHz)。
- 尝试重启
adb服务:adb kill-server adb start-server scrcpy --tcpip=192.168.1.100:5555 - 某些手机(如小米)需要在开发者选项中开启“USB调试(安全设置)”。
Q2:Syncthing同步速度慢?
- 检查防火墙是否放行端口(默认22000/TCP和22000/UDP)。
- 在Syncthing设置中启用“Local Discovery”和“Global Discovery”。
- 确保手机不处于省电模式(省电模式会限制后台网络活动)。
Q3:照片同步后顺序混乱?
Syncthing会保留原始时间戳,但如果文件名冲突,可能需要手动整理。建议使用Nextcloud或PhotoPrism进行相册管理,它们能更好地处理元数据。
总结:我的推荐组合
| 场景 | 推荐工具 | 理由 |
|---|---|---|
| 临时传几个文件 | Scrcpy拖放 | 无需安装额外App,直观 |
| 照片自动备份 | Syncthing | 自动化、点对点、隐私好 |
| 音乐库同步 | Syncthing + rsync | 灵活、高效 |
| 浏览器管理手机 | AirDroid本地传输 | 界面友好,适合新手 |
这套方案的核心思路是:去云端化,回归本地网络。只要手机和Pop!_OS在同一WiFi下,所有传输都是高速、私密、免费的。
刚开始设置可能有点繁琐,但一旦配好,你就再也不用插线、再也不用担心云端泄露隐私、再也不用忍受缓慢的传输速度了。
如果你在安装过程中遇到任何具体问题,欢迎随时问我——毕竟,谁还没个折腾Linux的夜晚呢?😄
