Linux-brugere: Få dette album som et kernemodul

Hvad er den nørdeste måde at frigive et album på? Hvad med et Linux-kernemodul? Det er netop hvad Netcat gjorde med deres nyeste album.

Hvad er den nørdeste måde at frigive et album på?  Hvad med et Linux-kernemodul?  Det er netop hvad Netcat gjorde med deres nyeste album.
Reklame

Hvad er den nørdeste måde at frigive et album på? Hvad med et Linux-kernemodul?

Det var præcis hvad et lille band kaldet Netcat gjorde med deres nyeste album, Cycles Per Instruction. Sådan får du det.

Hvis dette lyder komplekst, skal du ikke panikere: selvom det er helt sært, er det ikke svært at oprette. Alt du behøver er en velskrevet liste over instruktioner, og du kan også lytte til albummet via et modul til Linux-kernen. Hvad er forskellen mellem Linux-distributioner, hvis de er alle Linux? [MakeUseOf Forklarer] Hvad er forskellen mellem Linux-distributioner, hvis de er alle Linux? [MakeUseOf Forklarer] Når en bruger først introduceres til Linux, kan de blive fortalt, at de bruger Linux, men de vil hurtigt lære at det hedder noget andet. Ja, Ubuntu, Fedora, Linux Mint, Debian, openSUSE og så mange andre ... Læs mere. Her er hvad du skal gøre, hvis du bruger Ubuntu.

Dette er ikke den eneste måde at få adgang til musikken. Albummet er også på BandCamp, til streaming. For faktisk at downloade musikken skal du købe sangene. Brug af denne kerne modul metode er ikke en måde at undgå at betale for sangene. Sangene, som de eksisterer for kernemodulet, er ikke typiske filer, der kan afspilles af en medieafspiller.

Forberedelse

netcat_dependencies
Da vi skal kompilere et kernemodul, skal vi sørge for, at vores byggemiljø er klar til at gå. For at installere alle nødvendige afhængigheder på Ubuntu, kør kommandoen sudo apt-get install build-essential vorbis-tools git linux-headers-$(uname -r) .

Dette vil installere kompileringsværktøjerne, de kerneloverskrifter, der er nødvendige for at lave kernemoduler, lydafspilningsværktøjerne, der arbejder med kernemodulet, vi laver, og git-værktøjet, der bruges til styring af udviklingsversion. Hvad er Git og hvorfor du bør Brug Version Control Hvis du er udvikler Hvad er Git, og hvorfor du bør bruge Version Control Hvis du er udvikler Som webudviklere har meget tid, vi plejer at arbejde på lokale udviklingswebsteder, bare uploade alt, når vi er Færdig. Det er fint, når det bare er dig, og ændringerne er små, ... Læs mere, som vi vil bruge til at hente koden.

Henter det

Derefter skal vi "kasse" (hvilket betyder at hente) koden til albummet. Vi kan gøre dette ved hjælp af kommando git clone https://github.com/usrbinnc/netcat-cpi-kernel-module.git .

Dette vil lave en mappe i din hjemmemappe, der hedder netcat-cpi-kernel-modul. Da det downloader 6 sange (det er bare genert af en times lang total) kan det tage lidt tid - det er normalt.

netcat_download2
Når den er færdig med at downloade, vil vi gerne gå ind i den pågældende mappe. Det kan vi gøre med kommandoen cd netcat-cpi-kernel-module .

Udarbejde

netcat_compile
Nu skal vi kompilere kernemodulet. Dette kan gøres meget nemt med kommandoen gør. Afhængigt af dit system hardware kan det ikke vare meget lang tid. Bemærk dog, at kompilering af dette kernemodul kræver lidt over 1 GB i ledig RAM, der skal udfyldes. Udviklerne nævnte dette i deres README-fil, og jeg kan bekræfte, at jeg så samme spike, mens jeg compilerede.

Hvis du nogensinde har kompileret software før, kan du forvente en sudo make install kommando at følge. Af en eller anden grund er det ikke nødvendigt her. Når kompilering er afsluttet, tillykke! Den hårde del er nu færdig.

Indlæs det

netcat_dmesg

Nu hvor du har installeret modulet, skal du indlæse det. Du kan gøre det med kommandoen sudo insmod netcat.ko . Dette skal starte kernemodulet. For at kontrollere, kør kommandoen dmesg og kig efter noget der ligner dette nær bunden:

[ 2606.528153] [netcat]: netcat - Cycles Per Instruction - Kernel Module Edition - 2014
[ 2606.528153] [netcat]: netcat is Brandon Lucia, Andrew Olmstead, and David Balatero
[ 2606.528153] [netcat]: 'ogg123 -< /dev/netcat' to play.

Spil det!

For faktisk at afspille musikken har du en sidste kommando: ogg123 -< /dev/netcat . Dette er lydværktøjet, som faktisk kan dekode de meddelelser, som netcat-kernemodulet sender ud, og det skal automatisk sendes til din nuværende lydenhed (højttalere, hovedtelefoner osv.). Du kan også kontrollere, om en sang spiller ved at udstede kommandoen dmesg igen, men tjek de forskellige noter nedenfor først.

Diverse noter

Du vil bemærke, at du ikke længere kan skrive flere terminalkommandoer. En AZ af Linux - 40 vigtige kommandoer, du bør vide, en AZ af Linux - 40 vigtige kommandoer, du bør vide, Linux er det ofte ignorerede tredje hjul til Windows og Mac. Ja i løbet af det sidste årti har open source-operativsystemet fået en masse trækkraft, men det er stadig langt fra at blive betragtet ... Læs mere i dit nuværende terminalvindue - dette sker så længe ogg123-værktøjet er optaget. For at afslutte afspilningen kan du trykke Ctrl + C på tastaturet eller blot lukke terminalvinduet, der dræber alle processer bundet til det (hvilket betyder ogg123).

Hvis du vil indtaste nogle kommandoer, mens du behøver musikafspilning, skal du bare åbne en ny terminalfan eller et vindue. Du kan derefter bruge denne nye fane eller et vindue til at tjekke hvilken sang der aktuelt spiller. Dette kan gøres, hvis du kører kommandoen dmesg igen og tjekker i nærheden af ​​bunden af ​​udgangen.

Konklusion

Gør dette kernemodul noget nyttigt for dit Linux-system? Ikke rigtig. Men det er cool, og det lærer dig nogle nyttige Linux-kommandoer undervejs. Og i ærlighed er det virkelig ikke så svært. Så vær ikke bange for at prøve det!

Hvad er den nørdeste ting, du har set nogen gør? Er der andre kølige Linux goodies (muligvis ligner dette), der kommer til at tænke på? Lad os vide i kommentarerne!

In this article