含有标签 Linux 的文章

插图

解决 Pipewire 被 SIGKILL 的问题

症状我频繁遇到 Pipewire 音频框架突然停止运行的情况:问题通常出现在我的笔记本电脑连接 / 断开电源的时候,此时我的电脑会因为切换性能模式卡顿一小段时间;systemctl --user status pipewire.service 只能看到 Pipewire 进程被 SIGKILL 信号终止,没有其它有用的日志信息;coredumpctl 和 dmesg 里也找不到 Coredump 内存转储事件的记录。原因Pipewire 进程运行时具有实时优先级,其调度需求被最优先满足,以便及时处理音频数据,避免音频卡顿。Pipewire 提高进程优先级是通过它的 libpipewire-module-rt 模块请求系统中以 root 权限运行的 RTKit(Realtime Kit)服务,然后 RTKit 以特权修改进程优先级来达成的。但是,如果一个具有实时优先级的进程出了 Bug,进入了死循环,那么它会占用所有的 CPU 资源。系统上绝大部分其它进程(包括但不限于 SSH 服务端,Xorg,还有你的 Shell)由于优先级更低,就无法得到任何 CPU 时间片,无法处理任何任务,...

用逆向工程方式给惠普暗影精灵宏按键编写 Linux 驱动

我前段时间换了台新电脑,惠普的暗影精灵 17t-ck000(美版,应该对应的是国内的暗影精灵 7 Plus)。这台电脑好是好,做工优秀,性能强大,就是有一个问题:它在 Linux 下的驱动支持实在是太烂了。不支持调节风扇转速,你能看到风扇转速,但仅此而已。再加上惠普的默认风扇策略非常激进,即使我开启了 BIOS 中的低温风扇停转功能,它依然在 CPU 温度只有 40 度、显卡空载的情况下转得非常欢快。其实可以用 NBFC 直接写 EC 寄存器来控制,但在某次不幸的事故中当时的配置方案丢失了。我配置 NBFC 时正在新电脑试用 NixOS。事故发生时新电脑上的 NixOS 被我删掉了,而且当时的配置没上传 GitHub。过段时间再重新写一遍(咕咕咕)不支持调整键盘背光颜色,它们在 Windows 下由 OMEN Command Center 软件控制。有时系统崩溃、我长按电源键断电重启时,BIOS 会将键盘背光恢复成默认的五彩斑斓的颜色,此时我只能回到 Windows 进行调节。...

系统禁用摄像头防止网课翻车

本文介绍如何在 Windows 和 Linux 中禁用摄像头驱动,从而:在系统层面上避免误操作开启摄像头,把你 在吃饭 在床上 在玩王者荣耀 在(数据删除) 的样子直播出来避免部分网课软件后台开启偷拍Windows 操作方法按下 Win+R 组合键调出运行窗口,输入 devmgmt.msc 并确定调出设备管理器窗口。你的摄像头会出现在 图像处理设备 一类中,右键停用它。(下图截自 Windows XP,但 Windows 7 和 10 上的操作相同。)当需要使用摄像头时,再回到此处启用摄像头,关闭并重新打开浏览器 / 网课软件即可。Linux 操作方法12345# 首先关闭浏览器、网课软件等占用摄像头的设备sudo modprobe -rv uvcvideosudo nano /etc/modprobe.d/disablecamera.conf# 输入如下内容并保存blacklist uvcvideo当需要使用摄像头时运行 sudo modprobe -v uvcvideo 加载驱动,用完后 sudo modprobe -rv uvcvideo 卸载驱动。加载 / 卸载后,关闭并重新打开浏览器 / 网课软件即可。...

树莓派 3B 折腾笔记:BT 下载与策略路由

这次就直接进入正题。(其实是不知道该拿什么开头)安装 Transmission 挂 PT作为一个可以自由连接各种传感器的小型电脑,树莓派的可玩性相当高。即使你不想在 GPIO 上接一大堆传感器(或者像我一样觉得另外的传感器暂时没什么用),你也可以利用它低功耗的特点,让它 24 小时运行,做一些不需要大量 CPU 运算,但是因为其它因素需要较长时间才能完成的任务,例如…… 挂机下载。我所在的大学有一个内网的 PT(Private Tracker)站。PT 站就是一个 BT 种子的发布网站,但是它在传统 BT 的基础上增加了用户管理功能,并且通过限制客户端种类、强制要求上传率等方式,解决了传统 BT 下各类客户端吸血(只下载不上传,例如迅雷)和种子很快失效(因为一段时间后就没人继续上传了)的问题。但因为有了这些要求,PT 站用户往往需要长时间挂机上传下载,而这刚好是树莓派擅长的事。在上篇文章里,我弄好了一个简单的 NAS。在此基础上装一个 BT 下载软件就可以挂 PT 了。...
插图

使用东北大学网络中心的 SSH 黑名单系统

东北大学网络中心在其网站上提供了一份 SSH 黑名单,列出了使用端口扫描工具扫描 SSH 端口的 IP 名单,貌似是由他们自己设立的蜜罐服务器检测统计的。同时,他们也提供了黑名单对应的 hosts.deny 文件的下载,允许用户使用 cron 一类的计划任务软件自动更新 SSH 黑名单列表并屏蔽这些扫描者(阻止它们登录)。不确定这套系统是什么时候推出的,但是它至少已经运行了两年了。另外,它对于这些 IP 的屏蔽时间貌似是最后一次发现的 60 天内。使用方法:在服务器上安装 cron,然后运行如下命令安装脚本:ldd `which sshd` | grep libwrapcd /usr/local/bin/wget antivirus.neu.edu.cn/ssh/soft/fetch_neusshbl.shchmod +x fetch_neusshbl.shcd /etc/cron.hourly/ln -s /usr/local/bin/fetch_neusshbl.sh ../fetch_neusshbl.sh这个脚本会每小时连接东北大学网络中心的服务器,下载最新的 hosts.deny 并应用到你的系统上。...
插图

一次 Linux 内存泄漏的排查

起因我最近在用 PHP 写一套自己的 VPS 监控系统,包括 VPS 端和显示端。今天下午 3 点,我给监控系统加上了监测 VPS 上服务的运行情况的功能。由于我的 VPS 统一使用 Debian 8 系统,我使用了 service --status-all 作为获取服务运行情况的方式。在测试正常后,我去干其它事了。晚上 9 点多,我看到了 NodeQuery 于 7 点给我发的报警邮件,提示我的某台 VPS 内存占用过高。我打开监控系统一看,这台 VPS 的内存占用达到了 400M / 500M。不仅如此,另一台 VPS 也内存暴涨,达到了 600M / 1G,但因为总内存大没有触发报警。问题是,这两台 VPS 都只安装了 SS 和锐速,怎么可能占用这么大的内存?我登上其中一台,用 ps -aux 查看进程列表,却发现没有任何进程占用了这么大的内存。锐速背锅?我第一时间怀疑的是锐速。众所周知,锐速官方关闭了新用户的购买和下载安装通道,因此我们只能使用破解版的锐速。/serverspeeder/bin/serverSpeeder.sh stop 关闭锐速后,...

Ubuntu 安装 BCM4331 网卡闭源驱动

Ubuntu 系统对于大量设备都可以做到安装即用,因为 Ubuntu 内置了许多开源社区提供的驱动。问题是,开源驱动相对于官方驱动有稳定性差、性能差的问题,而闭源驱动由于版权问题不能集成在安装光盘内,因此一般安装完 Ubuntu 后就要立即联网安装闭源驱动。正如知乎网友邓博元所说:http://www.zhihu.com/question/227769091234567891011Windows消失后:一时间世界人民给石油工地的电脑装上Linux和新开发的Linux上的工业软件,但是圈内就石油设备的驱动问题分成两派,美国的开源原教旨主义者坚持在墨西哥湾的钻井平台上使用开源驱动,导致产能大大下降;大庆油田被cnbeta的技术宅装上了5种桌面8种发行版并逐一美化跑分,而且要用石油设备放个Bad Apple,后自行编译内核,卒…其他油田由于发行版不同,升级工业软件后有些需要停工几天,特别是天天pacman -Syu的,爆炸事故时有发生。```我的 Macbook Pro 使用 BroadCom 公司的 BCM4331 无线网卡,...

在 Macbook Pro 上安装 Ubuntu 操作系统

Mac 系统的确非常漂亮,非常流畅。但是 VirtualBox 虚拟机在上面的运行速度惨不忍睹,而且一大堆在 Windows 或者 Ubuntu 上可以非常简单实现的功能在 Mac 上就要大费周折。再加上我看到网上的文章,Ubuntu 系统的 UnixBench 分数比 Mac 要高得多。因此我决定在 Macbook 上安装 Ubuntu。经过查询,我的 Macbook 是 2012 年中款,即 Macbook 9-2,在 Ubuntu 的官方维基上标明,在这款 Macbook 上 Ubuntu 只能和 Mac 共存,不能单独存在,否则引导会出现问题。拜托,Mac 的引导和系统是分开的好不好?在 Ubuntu 演示环境中的 GParted 上显示,Mac 系统共创建了三个分区:一个 200M 的 FAT32 分区,作为 EFI 启动分区,一个 HFS 格式系统区,还有一个 600M 左右,HFS 格式的恢复区。我们要干的事情,就是把 Mac 系统区和恢复区干掉,换成 Ubuntu 的分区就可以了。一。安装引导工具因为 Macbook 默认的引导可能无法启动 Ubuntu(不过我测试可以直接启动),...
插图

用安卓手机引导启动 SliTaz Linux

用安卓手机的,大概没人不知道安卓手机用数据线插在电脑上可以当 U 盘存文件用。但是,安卓手机也可以用来在电脑上引导一个 Linux,你知道吗?首先得从电脑的启动来讲。你按下电脑电源键,CPU、内存等部件通电后,就会开始执行一段预先设定在主板里的程序,叫 BIOS。BIOS 再通过以下方式启动你的操作系统:1)根据设置里的引导顺序(光驱,硬盘,网络……)逐个查找,如果找到有设备可以启动,就执行上面的代码启动系统。2)如果你按下了引导菜单键进入引导菜单,也就是手动选择启动的硬件(一般是 Esc 键或者 F12),就执行这个硬件上的代码。3)如果 BIOS 支持 UEFI 启动并且写入了 UEFI 设置,BIOS 就自动调用与设置一起保存的 UEFI 引导器或者设置中指定的 UEFI 引导文件进行启动。这种方法比较深奥,这里不讨论。不过如果你购买的电脑预装 Win8 或者是苹果电脑,你已经在通过 UEFI 启动操作系统了。在前两种方式下,...
插图

Ubuntu 安装 LRC 歌词显示插件和开启类 SRS WOW 音效

我的华硕笔记本原先 Windows 7 下的声卡驱动自带一个叫 ASUS Sonic Focus 的技术,原理就是通过对音频的均衡器调节做到心理学杜比环绕,也就是让人心理上以为声音是环绕声。开启 Sonic Focus 后,我觉得音效好多了。(我不是耳机党)但是在 Ubuntu 上,自然不会有 Sonic Focus,华硕才没空对付这样一个升级频繁的系统。Dolby 和 SRS 等也不会给 Linux 支持,所以开源社区有大神就写出了 Extra Stereo,用于替代这些功能。还有一个 Crystalizer,也就是增强高频声音响度让声音清澈动听,用过创新声卡和创新 X-Fi 的人应该知道。同时,在 Ubuntu 上听歌,没有歌词是最痛苦的。Rhythmbox 自带个什么歌词自动下载,结果我打开根本没用…… 没办法,自己去网上找吧。于是,我找到了 OSD Lyrics。OSD Lyrics is a lyrics show compatible with various media players. It is not a plugin but a standalone program. OSD Lyrics shows lyrics on your desktop,...