Linux用户:以内核模块形式获得此专辑

发行专辑最怪异的方式是什么?作为Linux内核模块怎么样?

这就是一个叫Netcat的小乐队在他们的最新专辑《每指令循环数》中所做的事情。

如果声音听起来很复杂,请不要惊慌:虽然很古怪,但设置起来并不难。它只需要一个精心编写的说明列表,您也可以通过Linux内核模块来收听专辑。假设您正在使用Ubuntu,这就是您需要做的。

这不是获得音乐访问权限的唯一方法。专辑也在BandCamp上进行流媒体播放。要实际下载音乐,您需要购买歌曲。使用这种内核模块方法不是避免为歌曲付费的方法。内核模块中存在的歌曲不是可由媒体播放器播放的典型文件。

准备

这将安装编译工具,制作内核模块所需的内核头文件,与我们正在制作的内核模块一起工作的音频播放工具,以及用于开发版本控制的git实用程序,我们将使用该实用程序检索代码。

下载

接下来,我们需要“签出"(这意味着要检索)专辑的代码。我们可以使用命令 git clone https://github.com/usrbinnc/netcat-cpi-kernel-module.git 来完成此操作。

这将在您的文件夹中主文件夹名为netcat-cpi-kernel-module。由于它正在下载6首歌曲(总共不到一个小时的时间),因此可能需要一些时间-这是正常的。

编译

如果您曾经编译过软件,在此之前,您可能希望遵循 sudo make install 命令。由于某些原因,这里没有必要。编译完成后,恭喜!现在最困难的部分已经完成。

加载

现在,您已经安装了模块,需要加载它。您可以使用命令 sudo insmod netcat.ko 进行操作。这应该启动内核模块。要进行检查,请运行命令 dmesg 并在底部附近查找类似内容:

[2606.528153] [netcat]:netcat-每个指令的周期-内核模块Edition-2014
[2606.528153] [netcat]:netcat是Brandon Lucia,Andrew Olmstead和David Balatero
[2606.528153] [netcat]:'ogg123-

播放!

要实际播放音乐,您需要执行最后一个命令: ogg123-。这是一种音频工具,可以实际解码netcat内核模块发出的消息,并且应该自动将其发送到当前的音频设备(扬声器,耳机等)。您还可以通过再次发出 dmesg 命令来检查歌曲是否正在播放,但是请先查看下面的其他音符。

其他音符

您您会注意到,您无法再在当前终端窗口中键入任何终端命令-只要ogg123实用程序处于繁忙状态,就会发生这种情况。要结束播放,可以按键盘上的Ctrl + C,或直接关闭终端窗口,这将杀死绑定到该窗口的所有进程(表示ogg123)。

如果要在保留音乐的同时输入某些命令播放时,只需打开一个新的终端标签或窗口即可。然后,您可以使用此新选项卡或窗口来查看当前正在播放的歌曲。如果再次运行命令dmesg并检查输出的底部附近,则可以完成此操作。

结论

此内核模块对您的Linux系统有用吗?并不是的。但这很酷,并且可以一路教您一些有用的Linux命令。而且,老实说,这并不难。因此,不要害怕尝试!

标签: