Annonse

Hva er den geekiest måten å gi ut et album? Hva med en Linux-kjernemodul?

Det var akkurat det et lite band som het Netcat, gjorde med det siste albumet deres, Cycles Per Instruction. Slik får du det.

Hvis dette høres komplekst ut, ikke gå i panikk: mens det absolutt er sart, er det ikke vanskelig å konfigurere. Alt som trengs er en velskrevet liste over instruksjoner, og du kan også høre på albumet via en modul til Linux-kjernen Hva er forskjellen mellom Linux-distribusjoner hvis de alle er Linux? [MakeUseOf Explains]Når en bruker først blir introdusert for Linux, kan de bli fortalt at de bruker Linux, men de vil raskt lære at det heter noe annet. Ja, Ubuntu, Fedora, Linux Mint, Debian, openSUSE og så mange andre ... Les mer . Dette er hva du trenger å gjøre, forutsatt at du bruker Ubuntu.

Dette er ikke den eneste måten å få tilgang til musikken. Albumet er også på BandCamp, for streaming. For å laste ned musikken, må du kjøpe sangene. Å bruke denne kjernemodulmetoden er ikke en måte å unngå å betale for sangene. Sangene slik de finnes for kjernemodulen er ikke typiske filer som kan spilles av en mediaspiller.

instagram viewer

Forbereder

netcat_dependencies
Siden vi trenger å sette sammen en kjernemodul, må vi sørge for at byggemiljøet vårt er klart til å brukes. Kjør kommandoen for å installere alle nødvendige avhengigheter på Ubuntu sudo apt-get install build-essential vorbis-tools git linux-headers - $ (uname -r).

Dette vil installere kompileringsverktøyene, kjerneoverskriftene som trengs for å lage kjernemoduler, lydavspillingsverktøyene som fungerer med kjernemodulen vi lager, og GIT-verktøyet, som er brukes for utviklingsversjonskontroll Hva er git og hvorfor du bør bruke versjonskontroll hvis du er en utviklerSom webutviklere, mye av tiden vi pleier å jobbe med lokale utviklingsnettsteder, er det bare å laste opp alt når vi er ferdige. Dette er bra når det bare er deg og endringene er små, ... Les mer , som vi bruker vil hente koden.

Laster ned det

Deretter må vi "kassa" (som betyr å hente) koden for albumet. Vi kan gjøre dette ved å bruke kommandoen git klon https://github.com/usrbinnc/netcat-cpi-kernel-module.git.

Dette vil lage en mappe i hjemmemappen din som heter netcat-cpi-kernel-module. Siden det laster ned seks sanger (som bare er en time lang total), kan det ta litt tid - dette er normalt.

netcat_download2
Når nedlastingen er fullført, vil vi gå inn i den mappen. Vi kan gjøre det med kommandoen cd netcat-cpi-kernel-module.

Kompilere

netcat_compile
Nå må vi sette sammen kjernemodulen. Dette kan gjøres veldig enkelt med kommandomerket. Avhengig av systemets maskinvare kan det ikke ta veldig lang tid. Vær imidlertid oppmerksom på at kompilering av denne kjernemodulen krever litt over 1 GB i tilgjengelig RAM for å fullføre. Utviklerne nevnte dette i README-filen sin, og jeg kan bekrefte at jeg så den samme piggen mens jeg samlet.

Hvis du noen gang har satt sammen programvare før, kan du forvente a sudo make install kommando til å følge. Av en eller annen grunn er det ikke nødvendig her. Når samlingen er fullført, gratulerer! Den harde delen er nå unnagjort.

Last det inn

netcat_dmesg

Nå som du har installert modulen, må du laste den inn. Du kan gjøre det med kommandoen sudo insmod netcat.ko. Dette bør starte kjernemodulen. For å sjekke, kjør kommandoen dmesg og se etter noe som ligner på dette nær bunnen:

[2606.528153] [netcat]: netcat - Cycles Per Instruction - Kernel Module Edition - 2014
[2606.528153] [netcat]: netcat er Brandon Lucia, Andrew Olmstead og David Balatero
[2606.528153] [netcat]: 'ogg123 - dev / netcat' å spille.

Spill Det!

For å faktisk spille musikken, har du en siste kommando: ogg123 - dev / netcat. Dette er lydverktøyet som faktisk kan avkode meldingene som netcat-kjernemodulen sender ut, og det skal automatisk sendes til din nåværende lydenhet (høyttalere, hodetelefoner osv.). Du kan også sjekke om en sang spilles ved å gi ut dmesg kommandoen igjen, men sjekk ut de diverse merknadene nedenfor først.

Diverse merknader

Du vil merke at du ikke lenger kan skrive noen flere terminalkommandoer En A-Z av Linux - 40 viktige kommandoer du burde viteLinux er det ofte ignorerte tredje hjulet til Windows og Mac. Ja, det siste tiåret har open source-operativsystemet fått mye trekkraft, men det er fremdeles langt fra å bli vurdert ... Les mer inn i det nåværende terminalvinduet - dette skjer så lenge ogg123-verktøyet er opptatt. For å avslutte avspillingen, kan du trykke på Ctrl + C på tastaturet, eller ganske enkelt lukke terminalvinduet som dreper alle prosesser bundet til det (som betyr ogg123).

Hvis du vil angi noen kommandoer mens du beholder avspilling av musikk, er det bare å åpne en ny terminalfane eller et vindu. Du kan deretter bruke denne nye fanen eller vinduet til å sjekke hvilken sang som spilles for øyeblikket. Dette kan gjøres hvis du kjører kommandoen dmesg igjen og sjekker nær bunnen av utgangen.

Konklusjon

Gjør denne kjernemodulen noe nyttig for Linux-systemet ditt? Ikke egentlig. Men det er kult, og det lærer deg noen nyttige Linux-kommandoer underveis. Og i all ærlighet er det virkelig ikke så vanskelig. Så ikke vær redd for å prøve det!

Hva er den geekiest tingen du har sett noen gjøre? Er det andre kule Linux-godbiter (muligens lik den) som kommer til hjernen? Gi oss beskjed i kommentarene!

Danny er senior ved University of North Texas som liker alle aspekter av open source programvare og Linux.