我最近安装了 ubuntu 20.04,蓝牙似乎开箱即用。昨天,它无故停止工作。
我尝试了以下方法:
$ sudo -i
$ rfkill list
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
3: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
Run Code Online (Sandbox Code Playgroud)
在跑步时bluetoothctl,
代理注册 [蓝牙]#关机 没有可用的默认控制器 [蓝牙]#开机 没有可用的默认控制器 [蓝牙]#退出
可能是什么问题以及如何解决它?
我想在 Linux(最好是 Ubuntu)中创建一个 USB 到 USB 数据传输系统。为此,我不想使用任何外部硬件或开关(除了这条电缆)。这就像将 USB 驱动器安装到系统一样,但在这种情况下,一个 Linux 系统将安装在另一个系统上。我怎样才能创建这个?
鉴于我的内核编程经验非常基础,是否有任何可用的内核模块?
第一个背景。我正在为 Logitech 游戏面板设备开发驱动程序。这是一个带有屏幕的键盘。驱动程序运行良好,但默认情况下设备由 HID 处理。为了防止 HID 在我的驱动程序之前接管设备,我可以在 hid-core.c 中将其列入黑名单。这有效,但不是最好的解决方案,因为我正在与几个人一起工作,我们都必须不断修补我们的 HID 模块,这正在成为一件苦差事,尤其是因为它通常涉及重建 initramfs 等。
我对这个问题做了一些研究,我发现了这个邮件列表帖子,它最终把我带到了关于 LWN 的这篇文章。这描述了一种在运行时将设备绑定到特定驱动程序的机制。这似乎正是我所需要的。
所以,我试过了。我能够解除键盘与 HID 的绑定。这行得通,正如预期的那样,我无法再打字了。但是当我尝试将它绑定到我们的驱动程序时,我收到“错误:没有这样的设备”并且操作失败。
所以我的问题是:如何使用内核绑定/取消绑定操作来复制当您将 hid-core 中的 HID 设备列入黑名单并提供您自己的驱动程序时会发生什么?- 即 - 取代一直修补 hid-core.c 的需要?
我们驱动的源码在这里:https : //github.com/ali1234/lg4l
这个概念是否仅适用于终端驱动程序(大多数站点涵盖的内容)或任何一般的驱动程序?
我正在尝试了解字符特殊文件。从wikipedia,我了解到这些文件为一次一个字符传输数据的设备“提供了一个接口”。我的理解是系统以某种方式调用字符设备而不是直接调用设备驱动程序。但是文件是如何提供这个接口的呢?它是一个翻译系统调用的可执行文件吗?有人可以解释一下是怎么回事吗。
我想知道如何确定哪个驱动程序(以下驱动程序之外)正在处理我的触摸板:
appletouch.ko.gz,
cyapa.ko.gz,
sermouse.ko.gz,
synaptics_usb.ko.gz,
bcm5974.ko.gz,
psmouse.ko.gz,
synaptics_i2c.ko.gz,
vsxxxaa.ko.gz
Run Code Online (Sandbox Code Playgroud) 在 Ubuntu 15.10 上,当我想使用 NTFS 文件系统格式化通过 USB3 连接的外部 4TO 磁盘(在 StarTech USB/eSATA 硬盘底座上)时,我有很多I/O 错误,并且格式化失败。
我在最新的 live CD 上尝试了 GParted v 0.19 和 GParted,但遇到gparted-live-0.23.0-1-i586.iso了同样的问题。
之后,在 Ubuntu 15.10 和相同的 USB3 连接上使用 GParted,我尝试格式化为ext4,没有问题。这真的很奇怪。
因为不知道mkfs.ext4GParted用来格式化磁盘的工具是不是对磁盘进行了像(或不像)这样的测试mkntfs,所以首先假设问题出在新磁盘上。也许这个新磁盘引起了问题。所以我尝试e2fsck -c在这个硬盘上运行。在 Ubuntu 15.10 上,e2fsck -c冻结在 0.45%,我不知道为什么。
因此,在同一台 PC 上使用另一个版本的 Ubuntu (15.04),我尝试使用 StarTech HDD 扩展坞的 eSATA 连接来连接同一个 4TO 磁盘。这一次,e2fsck -c运行正确。
几个小时后,您可以看到结果:
sudo e2fsck -c /dev/sdc1
e2fsck 1.42.12 (29-Aug-2014)
ColdCase : récupération du journal
Vérification …Run Code Online (Sandbox Code Playgroud) 我一直在为Intel Core 2 Quad (Yorkfield) 处理器调整我的 Linux 内核,我注意到以下消息dmesg:
[ 0.019526] cpuidle: using governor menu
[ 0.531691] clocksource: acpi_pm: mask: 0xffffff max_cycles: 0xffffff, max_idle_ns: 2085701024 ns
[ 0.550918] intel_idle: does not run on family 6 model 23
[ 0.554415] tsc: Marking TSC unstable due to TSC halts in idle
Run Code Online (Sandbox Code Playgroud)
PowerTop 仅显示用于封装和单个内核的状态 C1、C2 和 C3:
Package | CPU 0
POLL 0.0% | POLL 0.0% 0.1 ms
C1 0.0% | C1 0.0% 0.0 ms
C2 8.2% | C2 9.9% 0.4 …Run Code Online (Sandbox Code Playgroud) 设备驱动程序是一个独立运行的程序,还是只是一个加载在内存中的库(一组函数),程序可以调用它的一个函数(所以它不是独立运行的)。
如果它是一个程序,它是否有进程 ID,例如,我可以像终止任何其他进程一样终止设备驱动程序吗?