分类 闲杂记事 下的文章

Docker 部署 Transfer 在线文件传输

  1. Docker Compose 模板
version: '3.5'
services:
  # transfer
  coturn-transfer:
    image: coturn/coturn:latest
    restart: ${RESTART_POLICY:-unless-stopped}
    command: -u ${ICE_USERNAME:TEST}:${ICE_PASSWORD:TEST} -r ${TRANSFER_DOMAIN:localhost} -X ${HOST_IP:127.0.0.1} -E ${HOST_IP:127.0.0.1} --listening-port 5678 -f -a -v --no-cli --no-tls --no-dtls --check-origin-consistency
    ports: 
      - "5678:5678/tcp"
    networks:
      transfer:

  transfer:
    image: kern/filepizza:master
    restart: ${RESTART_POLICY:-unless-stopped}
    environment:
      PORT: ${TRANSFER_PORT:80}
      ICE_SERVERS: '[{"urls": "turn:${HOST_IP:127.0.0.1}:5678?transport=tcp","username": "${ICE_USERNAME:TEST}","credential": "${ICE_PASSWORD:TEST}"}]'
    depends_on:
      - coturn-transfer
    networks:
      transfer:

networks:
  transfer:
  1. 环境变量配置:
TRANSFER_DOMAIN=transfer.test.com
TRANSFER_PORT=10080
ICE_USERNAME=TEST
ICE_PASSWORD=TEST

甲骨文云服务器上ubuntu的坑

防火墙

甲骨文云的ubuntu默认使用iptables管理防火墙规则,但是防火墙服务又不是ufw,导致很多脚本关闭防火墙失败。
正确的办法应该是

sudo iptables -F
sudo netfilter-persistent save

缺少的组件

甲骨文云的ubuntu默认没有安装cron和unzip

apt install cron unzip -y

Linux Mint 前置音频面板无声音的解决办法

起因

最近安装了Linux Mint,目的是减少工作的时候,无关事情的干扰。由于用的廉价机箱,前置面板的线序还是老的AC97的规范,而现在的主板都是针对AUDIO HD的线序,包含了插入检测。在Windows下可以直接在螃蟹驱动里关闭前置面板检测来强制输出到前置面板的音频接口,把前置面板的接口当做一个独立的输出通道。而在Linux桌面下,却没有这个考虑。系统自带的声音设置根本没有前置面板的输出通道。
2022-12-13 02-10-04屏幕截图.png

解决办法

安装pavucontrol:

sudo apt install pavucontrol

然后在所有程序里找到PulseAudio音量控制,在“回放”里面切换为headphones即可(虽然显示未插入,实际已经插入),可以将这个设备设置为默认,这样就默认输出到headphones了。

2022-12-13 02-12-24屏幕截图.png

一个三无工控机的折腾日记

前言

之前给人做一个快递柜控制系统留下的样机,把外面的铁壳子扔了,留下了里面的工控机,这个机器自带的某国产“优化增强版”Windows 7,启动要半个小时,进入系统映入眼帘的就是各种垃圾网页游戏弹窗,以及一大堆捆绑软件在桌面上,这还是“出厂”自带系统,不知道这个厂家负责装系统的人员是不是此类国产优化版系统的长期受害者。既然是工控机,就对配置没啥期望,打开设备管理器,果然n2840的CPU,还行吧,少说也是个多核处理器,内存4GB。只有一个网口,搞不了软路由,但是USB口居然高达5个(但是只有1个是USB3),拿来外挂硬盘做NAS应该还行。内置硬盘是一个mSATA的32GB闪迪的SSD。

折腾之旅开始

既然做NAS,首先考虑的就算是黑群晖了。网上找了篇教程,看着挺简单,跟装Windows差不多,只不过它是做成了img镜像,用类似linux下dd的工具把这个镜像写入U盘就能引导了。

踩无数坑

然而,事情发展没有想象的顺利。
这破工控板开机提示按DEL键进入BIOS,按ESC或者F11进入启动菜单,然而我把键盘都快按爆了,都不理我,我怀疑是不是这个BIOS开机是不是不初始化USB控制器,只能识别PS2键盘,不认USB键盘,问题是它也没有PS2接口,我也没有PS2键盘啊。好吧,那我先用U盘做引导。
因为默认启动顺序是内置SSD优先,只能先把内置了“优化增强版”的SSD拆了,看U盘能不能“顺位”接替启动。
然而我想得太美好了,拆掉了内置SSD以后,直接进入EFI Shell了,感情除了内置SSD,第二顺位就是EFI Shell了吧,这可咋整。于是我干脆拆了它,然后尝试清空COMS看能不能有幸让优先从USB设备启动。拆开设备外壳,发现居然没有清空COMS的跳线,于是用最古老的办法——抠电池。
然而我又错付了,清空COMS以后,现在启动顺序优先EFI Shell了,就算把SSD装回去,启动以后还是优先进入EFI Shell,这就操了。要是之前,好歹还能SSD优先启动,大不了把SSD拆下来用其它电脑装好系统再塞回去。现在可好,开机优先进入EFI Shell,又进不了BIOS改启动顺序……
事已至此,死马当活马骑,大不了每次开机都通过EFI Shell输命令来启动EFI引导吧。现学EFI Shell的用法,了解如何挂载硬盘,如何执行EFI程序就行了。在EFI Shell里手动执行grub的EFI引导程序,顺利引导。安装黑群晖的过程没有遇到任何问题。
到这一步了,用起来应该没啥问题了,毕竟NAS也不需要经常重启吧。
但是即便NAS并不需要频繁重启,强迫症让我无法接受每次开机都要手动在EFI Shell里输入命令来启动引导。于是网上各种搜索无法进入BIOS的问题的解决方案。
关键是这个工控机厂家不明,主板厂家也不明,根本无从搜索,搜索到相关的问题,比如Intel的NUC也有人反应开机键盘无反应,无法进入BIOS的,键盘只在启动系统以后才有反应,刚好也是bay trail凌动的方案,简直跟我遇到的状况一模一样!官方的说明是因为BIOS开启了快速启动,所以开机跳过了USB设备的检查,解决办法是长按电源键3秒开机,就能关闭快速启动。所以我以为找到了最终解决方案,然而我尝试了不下于20次,都没能“关闭所谓的快速启动”,没有任何作用,开机键盘的大小写都能切换,然而依然进不了BIOS或者启动菜单,仿佛开机显示的那个按键提示是随便写的一样,于是我把F1-F12都试了一遍,全都没反应。所以应该不是按键不对的问题了,而就是这个BIOS开机不认键盘的输入。
既然是EFI引导的,那我记得可以在系统中设置EFI引导顺序,甚至在系统中设置下次开机直接进入BIOS,于是做了个Win PE,用引导工具,发现真的可以让EFI下次启动直接进BIOS。
于是,真的进入BIOS了,熟悉的经典的蓝色皮肤的AMI的BIOS,然而,键盘依旧不起作用!我操了!
但是首页让我看到了一个信息,Project Name,项目名称?RZBYT1 v0.26? RZBYT是什么鬼?去百度搜索,发现当我输入RZBYT的时候,已经有前人搜索过了。
微信截图_20221117042719.png
我以为我能顺藤摸瓜,找到厂家信息,甚至能找到问题解决办法,然而,除了前人搜索过以外,搜索结果里没有任何相关内容。使用谷歌搜索,搜到了ebay上有人卖这个二手板子的。再也没其它有用信息了。
问题回到原点,于是我在想会不会换个USB接口就好了,我把5个接口挨着试了一遍,但是开机依旧没反应。

最终结局

折腾了很久,直到无意中,我在BIOS界面下,不重启的情况下,直接换USB接口,擦,居然有反应了。这什么鬼问题?!?!
也就是说:如果键盘在开机前就已经插上USB接口了,开机的时候反而会没反应,在开机以后,再插,BIOS反而有反应了。我都怀疑这是谁故意这么搞的?我记得这种工控板重装系统是要收费的,难不成故意搞这种幺蛾子让一般人用一般的方法装不了系统,所以以此牟利?除此之外我实在想不明白咋个会有这种BUG,只能是有人故意为之了。
验证了一下,先拔掉键盘,开机出现了bay trail的标志以后,以最快的速度插入键盘,然后按DEL键,顺利进入BIOS了,再也不需要通过设置EFI来进入BIOS了,强迫症终于舒服了……