龙虾尝鲜记(2)——装ubuntu(续)

        装 ubuntu 还折腾了好几下,现在终于把系统能稳妥了。回头再来记一下,给看到想弄龙虾的同学提个醒,对应工作先做到前面,免得遇到问题解决不了,还没入门就出门了。

        一、系统版本的确定

        这个问题我个人以为要结合自己的实际情况:如果是在虚拟机上装,建议选择 2404 LTS,相对稳定;如果是在实体机上装,要根据自己的硬件来避坑,据某 AI 说对 N 卡的支持不是很好,有特定的版本要求。还有就是是否强烈需要蓝牙、指纹、隐藏网络、摄像头等方面的功能。

        因为装(实体机) 2404 2404 就是因为驱动(MX250)有些问题,折腾了好几下实在懒得折腾就问了下 AI,它给推荐了 Pop_OS 2404, 结果掉进更大的坑里:蓝牙键盘连上了打不出字来、指纹不能用(到现在也不能用,因为指纹不太关痛痒,没修复好就暂时作罢)、无法连接到隐藏网络……

        指纹不能用问题不大,可是这蓝牙和隐藏网络,这可是大问题。把上述问题反馈给 AI,最终确定使用 2204 LTS,并且在安装前查好驱动上问题的解决方法并保存,以便安装时参考。

        二、装实体机还是虚拟机

        这个取决于你打算做什么:玩个新鲜(就是装一下=就是装一下),或是来做研究(工作需要&兴趣爱好),以及你有几个机可用。

        机多:强烈建议装实体机,虚拟机上有时也会遇到各种奇怪的问题。否则,建议虚拟机。千万别在主力机上安装,毕竟 linux 的生态和 win 是无法比的。你靠那些吃饭的软件,很多在 linux 上是没有的,或者 bug 比较多。比如:企微虽有官版的,但写不了也看不了日报周报(可能和我装的系统有关系吧,不确定是不是企微的问题)。

        尝鲜:强烈建议虚拟机,就是为了装一下。不想玩了直接删除镜像文件就好了。否则,建议实体机。这个东西装了就是为了让它来工作的,或者研究它能做哪些工作。

        三、网络问题

        很多的源是都 github 上的,这个问题得解决,不然会很受罪,甚至有些系统依赖正常网络也是访问不了的。其实这个问题可以排在首位。如果解决不了话,就不建议尝试了。有付费手段,也有免费手段,这里不做讨论,自行网上寻找解决方法就好了。

        四、其它问题

        共享键鼠、文件传输、远程桌面等。

        喜欢用远程桌面、SSH 或各用各的键鼠,以及在虚拟机里装的可以忽略这些问题。

        1、共享键鼠

        这里我推荐 Barrier。win 上的设置基本没有问题,主要是 ubuntu 下会出现各种奇怪的问题。

        比如:服务端和客户端连不上,连上了键鼠无响应什么的。

        需要注意的几个点: 

        1.1 最关键、最容易翻车的点

  • Ubuntu 必须用 Xorg,不能用 WaylandWayland 下 Barrier 会出现:→ 连接正常、能切屏、但键鼠完全没反应
  • 检查方式:
echo $XDG_SESSION_TYPE

        必须输出 x11

        1.2 服务端(Win11)注意事项

  • 关闭防火墙 或 放行 24800 端口
  • 屏幕缩放尽量 100%缩放 125%/150% 会导致鼠标错位、按键无效
  • 服务端配置:
    • 屏幕名称使用主机名即可。默认会自动带出主机名,服务器端和客户端都一样。尽量不要改,改了可能会出现奇怪的问题,比如用热键可以切换但不响应鼠标切换。实在想改屏幕名称,先改主机名,再改屏幕名称(只有首次运行时会带出主机名,改完主机名即便重装 Barrier 屏幕名称也是上次设置的)。这个一定要注意!

        有问题的时候可以打开日志,看看问题是出在哪里了。

  • 把 Ubuntu 屏幕拖到正确位置(左 / 右 / 上 / 下)

        拽一个屏幕下来,名称要分别对应,还有就是要贴边挨在一起,不然会出现“离太远,鼠标移不过去”的问题(无法用鼠标贴边激活屏幕切换)。

        通常情况下,还是鼠标方便,热键可配可不配。

        这些设置根据个人喜好设置就好了。

  • 不要开 SSL 加密(新手直接关,最稳)

        1.3 客户端(Ubuntu 22.04)注意事项

  • 必须登录 Ubuntu on Xorg
  • 严重建议手动输入服务端 IP 地址,不论谁主谁从
  • 把当前用户加入 input 组:
sudo usermod -aG input $USER # 改完必须注销重登! # 确保 uinput 权限正常: sudo modprobe uinput 

        1.4 典型故障排查

        现象:

  • 日志显示连接成功
  • 鼠标能从 Win 切到 Ubuntu
  • 键盘没反应、鼠标点不动

        99% 原因:

        Ubuntu 在用 Wayland,不是 X11

        解决:

  • 注销
  • 登录界面(要先选中用户名,不然右下角没有设置选项,这个坑也是踩得不要不要的)点右下角 ⚙️
  • Ubuntu on Xorg
  • 重新登录 → 重启 Barrier 客户端

        1.5 出问题按这个顺序检查

  • 看 Ubuntu 是否是 Xorg
  • 看用户是否在 input
  • 看 Windows 缩放是否 100%
  • 看服务端屏幕布局是否正确
  • 重启两边 Barrier

关闭 Windows 防火墙临时测试

       2、文件共享

        这个就很简单了,装完启动就能用,没遇到问题。这行字敲完,启动 LocalSend 准备截图就发现它出问题了。

        因为前面运行是正常的,所以问题一定不是软件层面。当然我们也可更改端口来解决它,这不符合极客的专业精神。前面为了避免因为网络设置、防火墙等因素影响,关闭了防火墙,这是前提。

        解决方法:

        步骤 1:查看端口预留列表

        以管理员身份打开 PowerShell(Win+X → 选择 “Windows PowerShell (管理员)”),执行:

netsh int ipv4 show excludedportrange protocol=tcp # 以下是我的输出内容,不是代码 协议 tcp 端口排除范围 开始端口 结束端口 ---------- -------- 5357 5357 50000 50059 * 52795 52894 52995 53094 53095 53194 53195 53294 53295 53394 53395 53494 57309 57408 57443 57542 65376 65475 * - 管理的端口排除。

        查看输出里是否包含 53317 端口(比如有一行 53300-53400),如果包含 → 说明端口被系统预留。结果发现刚好被系统预留了。

        步骤 2:释放端口预留(关键)

        停止 Windows 动态端口分配服务:

# 停止 Windows 动态端口分配服务: net stop winnat # 手动排除 53317 端口(不让系统预留): netsh int ipv4 add excludedportrange protocol=tcp startport=53317 numberofports=1 store=persistent # 重启 winnat 服务: net start winnat 

        重新启动 LocalSend(如果还有问题可以管理员身份运行),此时 10013 错误会消失。

        改端口在这里改。实在搞不定或者怕麻烦就改端口好了。

        AI 分析说:winnat 动态预留端口 → 53317 被圈进禁区 → LocalSend 无权使用 → 10013。

        不是你错,不是软件错,是 Windows 自己把端口抢走了。        


     某天发生下面任意一件事,系统就会自动把一大段端口标记为 “系统独占”

  • 开了 WSL2 / 虚拟机
  • 用了手机热点、电脑开热点
  • 系统自动更新了网络组件
  • 插了新网卡、VPN、代理工具

然后 53317 就被 Windows 强行圈进 “禁止用户程序使用” 的黑名单


        上面这段就备查了,如果哪天又被抢圈了端口,那就换一个端口了。

       3、远程桌面

        有些时候要截 ubuntu 的图,在 U 上截好再传回来就有些麻烦了。还是决定装个远程桌面,这样在 win 下可以快捷截图了。

        踩了一堆坑之后终于搞定了。脚本如下,整段复制后贴到终端里运行就可以了。

#!/bin/bash set -e # 1. 清理旧的 xrdp 残留 echo "===== 清理旧 xrdp 配置 =====" sudo apt purge -y xrdp xorgxrdp sudo apt autoremove -y sudo rm -rf ~/.xsession ~/.xsessionrc sudo systemctl stop xrdp || true sudo systemctl disable xrdp || true # 2. 安装 XFCE 桌面(轻量、稳定) echo -e "\n===== 安装 XFCE 桌面 =====" sudo apt update sudo apt install -y xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils # 3. 重新安装 xrdp 并配置 echo -e "\n===== 安装并配置 xrdp =====" sudo apt install -y xrdp # 4. 配置 xrdp 启动 XFCE echo "startxfce4" > ~/.xsession chmod +x ~/.xsession # 5. 修复 xrdp 权限 echo -e "\n===== 修复权限 =====" sudo adduser xrdp ssl-cert sudo chown root:root /etc/xrdp/xrdp.ini sudo chmod 644 /etc/xrdp/xrdp.ini # 6. 放行 3389 端口 echo -e "\n===== 放行远程桌面端口 =====" sudo ufw allow 3389/tcp || true # 7. 重启 xrdp 并设置开机自启 echo -e "\n===== 启动 xrdp 服务 =====" sudo systemctl enable xrdp sudo systemctl restart xrdp # 8. 验证服务状态 echo -e "\n===== 验证 xrdp 状态 =====" sudo systemctl status xrdp --no-pager echo -e "\n===== 部署完成!=====" echo "Windows 远程桌面连接步骤:" echo "1. Win+R 输入 mstsc" echo "2. 输入 Ubuntu IP 地址" echo "3. 登录用户名/密码(就是你 Ubuntu 的账号)" echo "4. 直接进入 XFCE 桌面,无蓝屏/黑屏!"

        4、五笔输入法

        五笔在某些网页、软件不能正常输入汉字的问题。因为小学抖音实在学得差,在开始接触计算机的时候就学了当时最难的五笔,所以换其它输入法是完全不会考虑的事情。当然五笔输入法也是装了不少,还有 AI 提供的各种奇怪姿势也是没有解决,错误的方法就不说了。最后还是用的系统自带的输入法。

        划重点:

        对于不能正确输入汉字的时候,那你可以先输入个非汉字进去啊,空格、数字什么的,再输入汉字就没问题了。有些时候换个行也又不能输入了,还是先敲个非汉字就好了。据说这是什么焦点获取的问题,确实是无法解决,我总不能再重装个版本吧。

        


        到现在,系统总算是弄妥了(基本能用了,虽然摄像头、指纹还不能正常工作),至少是把烹龙虾的条件基本给具备了。

        后面将记录龙虾安装步骤了。

Read more

Python异步编程基石:深入理解asyncio核心原理与实战

Python异步编程基石:深入理解asyncio核心原理与实战

摘要 本文深入剖析Python异步编程核心库asyncio的工作原理,从事件循环、协程、Future到Task的完整技术栈。通过真实性能对比数据、企业级案例和5个架构流程图,全面解析async/await底层机制。涵盖异步编程最佳实践、性能优化技巧和故障排查方案,帮助开发者掌握高并发程序设计精髓,提升I/O密集型应用性能数倍。 1 异步编程:为什么它是Python高性能的关键 在我13年的Python开发经验中,异步编程是性能优化的分水岭。记得曾经处理一个需要调用10个外部API的任务,同步版本需要20多秒,而改用异步后仅需2秒——这种10倍性能提升让我彻底认识到异步编程的价值。 1.1 同步 vs 异步:直观对比 想象你在餐厅点餐的场景: * 同步:点完第一个菜后站着等厨师做完,再点第二个菜,效率极低 * 异步:点完所有菜后找座位等待,厨师并行制作,服务员送餐时通知你 这就是异步编程的核心优势:避免不必要的等待,充分利用等待时间执行其他任务。 import time import asyncio # 同步版本:顺序执行,总耗时=各任务耗时之和 def

By Ne0inhk
Python 小工具实战:图片水印批量添加工具

Python 小工具实战:图片水印批量添加工具

Python 小工具实战:图片水印批量添加工具 Python 小工具实战:图片水印批量添加工具,本文详细介绍了使用 Python开发 给图片加水印的工具,该工具基于 Pillow 和 tkinter 库构建,可解决单图处理耗时、专业软件操作复杂的问题。工具支持单图与批量处理,用户能自定义水印文字、字体大小、透明度及颜色,还可选择 9 个常用水印位置或设置行列重复分布。新增的全屏水印模式可通过调整旋转角度与间距,生成铺满图片的版权保护水印,且界面采用卡片式布局,搭配浅灰背景与蓝色按钮,简洁美观,底部状态栏实时显示操作进度。文中提供完整可运行代码,并给出参数校验、字体兼容、常见报错解决等实用内容,新手按步骤即可上手,或者直接运行使用。 前言     Python作为一门简洁、易读、功能强大的编程语言,其基础语法是入门学习的核心。掌握好基础语法,能为后续的编程实践打下坚实的基础。本文将全面讲解Python3的基础语法知识,适合编程初学者系统学习。Python以其简洁优雅的语法和强大的通用性,成为当今最受欢迎的编程语言。本专栏旨在系统性地带你从零基础入门到精通Python核心。无论你是

By Ne0inhk
Python 轻量化环境管理利器 UV 入门与 Windows 下安装实战

Python 轻量化环境管理利器 UV 入门与 Windows 下安装实战

文章目录 * 一、UV是什么?解决什么问题? * 1.1 传统Python环境管理的三大痛点 * 痛点1:多工具碎片化操作,效率低下 * 痛点2:依赖冲突与环境隔离难题 * 痛点3:工具学习成本高,协作壁垒明显 * 1.2 UV如何解决?核心优势解析 * 优势1:一体化设计,命令行极简主义 * 优势2:智能环境管理,冲突预警与自动隔离 * 优势3:轻量化与高性能,适配现代开发节奏 * 优势4:渐进式迁移,兼容现有生态 * 1.3 目标用户与典型场景 * 二、Windows下UV安装实战 * 2.1 前置步骤:安装Visual C++ 2015-2022运行时 * 2.1.1 为什么必须安装? * 2.1.2 安装步骤

By Ne0inhk
2026!在Windows的Python中安装GDAL包(小白能成!)

2026!在Windows的Python中安装GDAL包(小白能成!)

最近更新 2026.02.10日,GDAL发布预告:新版本将支持更多的指令! 新版本,以修复bug为主,提高稳定性! 有朋友催我赶紧更新教程,我上次更新是年前的时候了,恰好是GDAL上一个版本出来的时间。 前言 很多大气,地理,环境,生态,遥感,城市空间规划等专业的朋友,在各种终端尝试 pip install GDAL 指令时,都会遇到各种各样奇怪的报错,无论如何都安不上。说实话这条路走不通,不怪你。 因为GDAL不是标准的python库,不能直接用pip指令,进行管理操作。 实际证明,这样走不通的,请你放弃幻想。跟着这个教程一步一步的操作,你大概率是可以成功的。我会尽可能的详细,一步一步,足够缓慢,足够让每个第一次安装的朋友都能够明白。 感谢北京师范大学地理学院的朋友提供的帮助,我将把这个方法详细记录,希望可以帮助到更多朋友。 个人电脑配置说明 OS:Windows 11 Enterprise(MacOS和Linux的朋友,建议拉到文末,

By Ne0inhk