Raspberry Pi handledning hur man gör mer
NyheterFör priset på en USB-hårddisk kan du göra Raspberry Pi till en super billig och extremt flexibel nätverksansluten förvaringslåda.
Till att börja med ska vi aktivera SSH på enheten. SSH är ett skyddsskalprotokoll och är ett sätt att komma åt kommandoraden för din Pi från hela ditt nätverk. Detta är särskilt viktigt med Pi, för att sitta framför en tv inte är det bästa stället för hacking. SSH låter dig hacka bort från någon annan Linux, Windows eller OS X-låda.
Även om SSH ingår som standard på Debian-distributionen som vi har installerat, körs den inte. För att komma igång, logga in på din Pi (standard användarnamnet är "pi" med ett lösenord för "hallon") och skriv följande:
sudo service ssh starta
Om du är ny på Linux kan den här linjen se ut som om den är skrivet på ett främmande språk, men efter det är det avkodat, är det mycket lätt att förstå. Enkla ord på kommandoraden startar vanligen ett verktyg med samma namn, eller ger instruktioner till verktyget om vad man ska göra.
I ovanstående kommando är "sudo" ett verktyg som låter dig köra andra kommandon med administratörsbehörigheter. "Service" är verktyget som används för att köra ett script från katalogen /etc/init.d och "ssh start" är extra information "service" behöver springa - den första är tjänsten att ändra - ssh - och den andra är vad man ska göra med det - starta. Detta kan också vara stopp eller omstart.
Du kan ta reda på kommandon genom att skriva man följt av kommandot. Typ man sudo, till exempel om du vill upptäcka mer om sudo-kommandot.
Vi vill också starta SSH när vi startar Raspberry Pi, och det kan vi göra med ett annat kommando:
sudo insserv ssh
Om du skriver man insserv, Du får se att det här är kommandot för att möjliggöra att ett skript körs när systemet startar, och nu när SSH är igång, behöver du inte ens ansluta din Pi till ett tangentbord, en mus och en skärm. Så länge det är anslutet till nätverket, kan du använda SSH för att styra enheten på avstånd - men innan du kan göra det måste du veta enhetens IP-adress.
Raspberry Pi berättar om sin IP-adress i slutet av startutmatningen, men du kan också hitta den genom att skriva ifconfig och letar efter numret till höger om "inet addr"i eth0 sektion.
Ifconfig-kommandot är kraftfullt och kan användas för att ändra massor av saker om nätverket, såväl som utmatning av den aktuella konfigurationen. Den "lo" -enhet som är listad under Ethernet-porten är en virtuell loopback-enhet, som är användbar för när du vill komma åt tjänster som körs på Pi från Pi själv.
Nu har du IP-adressen till Raspberry Pi, från en annan maskin i samma nätverk, skriv ssh [email protected] - men ersätt IP-adressen med din egen. Du kommer att bli ombedd för lösenordet, varefter du befinner dig på exakt samma kommandotolp som på själva maskinen och du kan göra alla samma saker som du kan från kommandoraden via den här SSH-anslutningen. Välkommen till den underbara världen av telekommunikation!
Pakethantering
Förr eller senare kommer du att vilja installera ytterligare programvara på din RPi. På Linux görs det vanligtvis genom något som kallas en pakethanterare - ett koncept som är i stort sett detsamma som en appbutik. Du bestämmer vilket program du vill installera, och det laddas ner automatiskt för dig.
På Linux innehåller nedladdningen alla beroenden, eftersom det är bibliotek och applikationer som krävs för att köra vad du vill installera. Eftersom vårt operativsystem i Raspberry Pi är Debian, och paketansvariga kan vara distorspecifika använder vi Debians pakethanterare.
Gränssnittet till detta kallas benägen - det avancerade paketverktyget. Eftersom Ubuntu är baserat på Debian använder den samma förpackningssystem (med olika paket), så det är högst troligt att du redan har stött på det, men kanske inte från kommandoraden. Installera något är lika enkelt som att skriva:
apt-get installeringspaketnamn
Det finns dock ett enklare sätt - ett verktyg som kallas aptitude. Du kan använda den på kommandoraden för att söka efter och installera paket (aptitude search packagename och aptitude installera paketnamn), men det erbjuder också ett primitivt kommandoradsgränssnitt. Detta visas om du skriver in aptitude på egen hand, och det är mycket lättare att navigera än att använda kommandoraden ensam.
Efter lanseringen har paketets cache uppdaterats och vyn är uppdelad i tre. På toppen finns en meny. Under det här är en lista över paket som du kan flytta med markörknapparna, och under det här är resultatet av alla alternativ du väljer.
För att söka efter ett paket måste du hoppa till översta menyn. Ett klick ska fungera om du har en mus bifogad, även om du använder en SSH-anslutning, men du kan också trycka på [Ctrl] + [T] för att växla inmatningsfokus till menyerna manuellt. Sökningen uppdaterar de upptäckta paketen i realtid, och du kan hoppa över och ner paketlistan med antingen markörknapparna eller med [Page Up] och [Page Down].
Dessa paket laddas ner från något som kallas ett förråd. Som standard är lagret som används av Debian ganska strikt och innehåller inte något som inte anses vara en del av Debians operativsystem, men du kan komma runt denna begränsning genom att lägga till nya repositories.
Du hittar listan över repositories i /etc/apt/sources.list textfilen, och du måste öppna detta med en textredigerare som systemadministratör. Från kommandoraden kan du göra det genom att skriva sudo nano /etc/apt/sources.list.
Med filen öppen måste du lägga till ordet contrib till slutet av den första raden (den ena som slutar med "squeeze main"). Bidragsarkivet innehåller fria paket som beror på paket som finns listade på det fria arkivet - ett förråd som redan borde finnas i din sources.list-fil. Skriv nu:
sudo apt-get uppdatering
Du bör nu kunna installera många andra paket som inte var tillgängliga först. Vi installerade Commodore 64 emulatorns Vice till exempel som ett sätt att sätta vår Pi i kontakt med 80-talets hemdatorrötter. För att få detta till arbete på egen Pi, skriv apt-get install vice (det här skulle inte ha fungerat tidigare).
Därefter måste du hämta de ROM-skivor som krävs av emulatorn för att fungera korrekt. De är en del av Windows-versionen av Vice, men deras tvivelaktiga laglighet förbjuder dem från att vara med i Debians paket. Om du lagligen har rätt att göra det kan du pakka ut ROM: erna från Windows-versionen och placera dem på rätt plats med följande kommandon:
tjära xvf vice-1,5-roms.tar.gz
sudo cp -a vice-1,5-roms / data / * / usr / lib / vice /
Du kan nu starta emulatorn genom att skriva x64. Du måste använda emulatorn medan den är ansluten till en riktig skärm istället för genom SSH, men tack vare Vice punkt och klicka-gränssnitt behöver du bara klicka på filmenyn för att öppna en beställare och starta dina spel.
Vi rekommenderar att du använder autostart-alternativet, eftersom det börjar belastningsprocessen utan att du måste komma ihåg att skriva LOAD "*", 8,1 följd av SPRINGA för att starta standardspelet på en skivavbildning.
Vi fick ganska bra prestanda ur emulatorn, och vi kunde spela de flesta matcherna med 100 procent hastighet. Även om frameraten ibland sjunker under 10 procent, är spelen fortfarande spelbara.
Arbetande ljud
Anledningen till att det inte finns något fungerande ljud, åtminstone med den tidiga versionen av Debian vi använder, beror på att föraren som hanterar ljudenheten inte har laddats. Linux-drivrutiner skiljer sig från Windows-drivrutiner, precis som dess paket skiljer sig från nedladdningsbara körbara filer, och drivrutiner är vanligtvis en del av kärnan i stället för separata enheter som behöver laddas ner och installeras.
Det är därför så många enheter fungerar utan någon manuell ingrepp - kärnan upptäcker sin närvaro och laddar föraren automatiskt. Drivrutiner som kan laddas dynamiskt så här kallas moduler, och om du skriver sudo lsmod På kommandoraden ser du vanligtvis en lång lista över moduler som redan har laddats.
Men eftersom distributionerna som byggts för Raspberry Pi vet exakt vilken typ av hårdvara de kör på, behöver de inte de flesta modulära drivrutinerna. Med undantag för ljud. Vår installation visar bara en säkring - vilken är en modul som gör det möjligt för användare att dynamiskt montera fjärrfilsystem.
Ljudmodulen ska redan vara en del av din distribution, och du kan ladda den genom att skriva:
sudo modprobe snd_bcm2835
Om du skriver lsmod igen ser du att denna modul har laddats, tillsammans med någon av dess beroende. Dessa är moduler som ljuddrivrutinen behöver arbeta.
Du kan nu kontrollera att ljudet fungerar från skrivbordet genom att ansluta ett par hörlurar eller högtalare till Pi: s ljudutgång och köra musikspelarens program från ljud- och video-menyn. Debian-installationen innehåller även en musikbit för dig att testa.
Med ljud som nu fungerar måste du aktivera ljudet i viceemulatorn för att höra någonting. Eftersom detta börjar driva CPU: n till gränsen, rekommenderar vi också att sänka samplingsfrekvensen, öka buffert- och fragmentstorlekarna och stäng av filteremulering i Vice-inställningsmenyerna.
Vi har hittat ljudmodulen för att vara ganska fläckig på Raspberry Pi, ibland hängande ljudappar. Detta kan vara varför det inte är aktiverat som standard, men om du vill ladda modulen vid starttiden, lägg bara till modulens namn (snd_bcm2835) till / etc / modules med en textredigerare.
Du måste vara systemadministratören för att skriva ändringarna tillbaka, men du bör upptäcka att modulen laddas automatiskt när du startar om Pi. Ta bara bort den här posten från filen för att stoppa modulen, eller skriv rmmod snd_bcm2835 för att ta bort den laddade modulen medan systemet är igång.
Fildelning
För vårt sista knep denna fråga kommer vi att vända vår Raspberry Pi till en NAS. Detta gör att du kan ansluta en USB-hårddisk till enheten och dela dessa filer över nätverket. Kombinera detta med ljuduppspelning på enheten, och du kan till och med börja använda Raspberry Pi i mitten av ett media hub - dela filer och spela musik, alla kontrollerade från en fjärranslutning.
Kärnan i denna funktionalitet är ett verktyg som heter Samba, vilket är en stabil och allmänt använd omfördelning av Microsofts nätverksprotokoll. Eftersom detta används av Windows, OS X och Linux för att få tillgång till fjärråtkomst, är det det bästa sättet att konfigurera en fildelningsserver som alla kan komma åt. Det kan installeras med ett enda kommando:
sudo apt-get installera samba
Efter installationen har två bakgrundsprocesser startat. Processer som dessa och SSH-servern vi startade tidigare kallas vanligtvis daemoner, och de hanterar automatiskt alla begäranden som görs över nätverket.
Vi behöver nu definiera den del av filsystemet vi ska använda för att lagra filerna. Eftersom vi ska använda en fjärrdriven ansluten via USB måste vi skapa en punkt på filsystemet för att detta ska vara tillgängligt och se till att det är permanent.
När du har satt i en USB-enhet skriver du in dmesg. Detta visar utmatningen från systemloggarna och i slutet bör du se den del där ditt system hanterar införandet av USB-pinnen. Titta i denna produkt för något liknande sda: sda1; Det kan vara exakt det här, eller det kan vara SDB. Hur som helst, det här är din enhetens nod på det virtuella filsystemet Linux använder för att hantera enheter. Ta en titt i / dev / för en överväldigande lista över vad som är möjligt.
För att kunna lägga till vår enhet i systemet måste vi först skapa en ny mapp för att fungera som rootnod för enheten. Vi använde mkdir / mnt / aktie för att skapa en mapp som heter "share" i det existerande / mnt mapp för att montera den här mappen vid starttid, lägg till följande rad till / Etc / fstab:
/ dev / sda1 / mnt / dela vfat standardvärden 0 0
Denna linje har formen av en källa, som är vår USB-enhet med en nod som tas från utgången av dmesg, ett mål, vilket är den mapp vi just skapat, följt av en filsystemtyp, standardinställningarna, nyckelordet och två nollor.
Den enda problematiska delen av den här raden är filsystemtypen, eftersom vi gissar att det kommer att bli en Microsoft-formaterad USB-minnepinne (vfat i filsystemsparation). Det är mycket bättre att formatera enheten på samma sätt som vi formaterade SD-kortet, och att använda ett inbyggt Linux-filsystem, till exempel ext3. Om du gör det, ändra filsystemet i enlighet med detta.
Spara dina ändringar i fstab och testa om fästet fungerar korrekt genom att skriva sudo mount / mnt / share. Om allt går bra borde du kunna bläddra i innehållet på din USB-enhet genom att peka på en webbläsare eller kommandoraden vid / Mnt / share.
Läser och skriver
Om du upptäcker att detta inte fungerar, ta en titt på någon ny utmatning från dmesg-kommandot för att få en bättre uppfattning om vad som kan ha gått fel. Annars borde din USB-enhet nu monteras automatiskt när du startar Pi.
Vi vill nu se till att alla kan läsa och skriva till den delade mappen. Vi kan göra detta från kommandoraden med följande två kommandon:
sudo chown -R root: användare / mnt / share
sudo chmod -R ug + rwx / mnt / share
Den första av dessa ändrar ägandet av alla filer i enheten eftersom -R argument innebär att dessa ändringar kommer att göras rekursivt. De root: användare del gör root (systemadministratören) ägaren, men tilldelar också ett gruppvärde av användare. I Linux-termer betyder det att en användare som också ingår i användargruppen kommer att ha gruppåtkomst också.
Om du skriver grupper Du får se listan över grupper som din nuvarande användare är medlem i. Om du använder standardpi-användarnamnet bör du se användare som en del av den här listan. Det andra kommandot säkerställer att alla filer och mappar är inställda på (r) ead, (w) rite och e (x) ecutable för både användaren och grupperna som tilldelats filerna.
Vi vill nu skapa ett användarkonto som du kan använda för att komma åt delningen. För att göra detta måste vi först skapa ett nytt lokalt konto, länka sedan detta till Samba. Då måste du ange användarnamnet och lösenordet som skapades i det här steget när du öppnar Samba-delen från en fjärrmaskin.
Du kan göra detta med följande två kommandon:
sudo useradd smbaccess -m -G användare
sudo passwd smbaccess
sudo smbpasswd -a smbaccess
Först måste vi lägga till en användare som heter smbaccess och se till att den är en del av gruppanvändarna. Då ställer vi in ett lösenord för det här kontot innan du lägger till kontot till Samba. Nu kommer den del där vi ber Samba att dela monteringspunkten över nätverket, och detta kan göras genom att lägga till följande till slutet av /etc/samba/smb.conf:
[offentlig]
kommentar = allmän
sökväg = / mnt / dela
Giltiga användare = @users
Force Group = användare
skapa mask = 0660
katalog mask = 0771
läs bara = nej
Det sista steget är att starta om Samba, vilket vi kan göra genom att se över det första kommandot från denna handledning:
sudo service samba omstart
Vi är nu redo att komma åt vår del, och du kan göra det från vilken maskin som helst på samma nätverk. Använd bara smb-protokollet, följt av IP-adressen till din Raspberry Pi.
I KDE bör du till exempel skriva smb: //[email protected] in i antingen kommandotångaren eller filhanteraren. Då ser du dina filer och läser och skriver dem från alla rutor i nätverket.