Raspberry Pi

Jämfört med Raspberry Pi OS vs. Armbian vs. Debian GNU / Linux

Jämfört med Raspberry Pi OS vs. Armbian vs. Debian GNU / Linux
Många programmerare kan ha samma fråga: Är Armbian bara en annan smak av Debian GNU / Linux, eller är det något helt annat? Vilka är skillnaderna mellan Raspberry Pi OS, Armbian och Debian? I den här artikeln kommer vi att diskutera operativsystemen Armbian, Debian och Raspberry Pi i detalj, inklusive en jämförelse mellan dessa olika system.

Fruktig uppvaknande

År 2012 populariserade Raspberry Pi klassen Single-Board (SBC) för allmänheten. Då sågs alla med kunskap om enheter som RouterBOARD från Mikrotik [9] eller ALIX Board från PC Engines [11] som exotiska. Idag är det omöjligt att föreställa sig vardagens existens utan dessa kraftfulla minidatorer. Du hittar dessa enheter överallt - i wifi-routrar, väderstationer, hemautomationsenheter och mätinstrument för fint damm. Dessa enheter körs med specialanpassade Linux- eller BSD-distributioner, av vilka Armbian och RaspberryPi OS bara är två representanter för många.

'Armbian' är ett konstgjort ord som kombinerar orden 'ARM' för motsvarande RISC-processorarkitektur [3] och de två sista stavelserna 'bian' från 'Debian.'Detta gör det mycket tydligt vad som skiljer Armbian från Debian GNU / Linux; till skillnad från Debian är Armbian fokuserad och optimerad för ARM-arkitekturen.

Även om Debian GNU / Linux-distribution stöder en mängd olika hårdvaruarkitekturer, inklusive ARM7 (32 bitar) [4] och ARM8, fokuserar Armbian-distributionen endast på ett brett spektrum av ARM-baserade utvecklingskort. Från projektwebbplatsen kan du ladda ner distributionsbilder för Orange Pi [5], Cubieboard [6],

och Asus Tinkerboard [7], bland andra bilder. Cubian [12], en gaffel med Debian GNU / Linux för Cubieboard, verkar inte längre upprätthållas, eftersom den senaste utgåvan går tillbaka till 2014.

Raspberry Pi OS [8] är det officiella operativsystemet för Raspberry Pi Foundation [17] för deras SBC. Ursprungligen fick den namnet Raspbian för Raspbian-projektet [15] som det bygger på. Raspberry Pi Foundation lade senare till ett annat paketförvar med delvis sluten källprogramvara till sina bilder. Raspbian-projektet publicerade aldrig sina egna bilder utan hänvisade alltid till bilderna från Raspberry Pi Foundation. Stiftelsen tillfogade så småningom sin egen skrivbords smak och många fler anpassningar, och nådde långt bortom Raspbians ombyggnad och minimala lapp av Debian-paket. För att tydligt skilja mellan Raspbian-projektet och Raspberry Pi Foundation-derivatet döptes det senare till Raspberry Pi OS 2019.

Jämfört med Armbian följer Raspbian-projektet och Raspberry Pi OS ett motsatt tillvägagångssätt: dessa distributioner är beroende av dussintals bidragsgivare för att fokusera på en enda SBC-plattform. Baserat på 32-bitars "armhf" -versionen av Debian GNU / Linux, är den tänkt att köras på alla versioner av Raspberry Pi-kortet men är inte utformad för att fungera på andra ARM SBC: er. Raspberry Pi 3 och 4-hårdvaran kan köra 64-bitars operativsystem. Under tiden kör Raspberry Pi OS alltid 32-bitars, med undantag för Linux-kärnan, som kan vara en 64-bitars kärna. Vissa paket gjorda speciellt för Raspberry Pi OS finns också för Intel-arkitekturen (32- och 64-bitarsvarianter) och kan till och med köras på en vanlig stationär dator som kör Debian GNU / Linux.

Endast under en begränsad tid erbjuds (inofficiella) Debian GNU / Linux-bilder för Raspberry Pi-familjen av SBC: er [16]. Huvudskillnaden för Raspberry Pi OS är att bilderna för dessa Raspberry Pi-system, som kan köra ett 64-bitars OS (Raspberry Pi 3 och 4), också innehåller ett 64-bitars OS ('arm64' i Debian); medan de andra bilderna kör 32-bitars 'armhf' (Raspberry Pi 2) eller 'armel' (Raspberry Pi 1 och Zero) arkitekturer. De två senare skiljer sig från "armhf" -paketen som tillhandahålls av Raspbian och Raspberry Pi OS. Historiskt har flera distributioner, inklusive Debian GNU / Linux och Fedora, beslutat om en minsta uppsättning CPU-instruktioner [19] som behövs för "armhf" -arkitekturen. Det första Raspberry Pi OS publicerades strax efteråt och stödde alla nödvändiga CPU-instruktioner utom en.

Så det fanns två alternativ: antingen 1) använd den mycket långsammare men inte optimerade "armel" -arkitekturen, som Debian GNU / Linux fortfarande gör för Raspberry Pi 1 och 0, eller 2) omdefiniera "armhf" -arkitekturen. Debian GNU / Linux ville inte göra det andra alternativet, eftersom detta alternativ skulle avvika från det som redan hade beslutats och implementerats. Detta var det ögonblick då Raspbian-projektet föddes: Debian-utvecklaren Peter Green (även känd av taggen plugwash i IRC) kompilerade alla 'armhf' Debian-paket för Raspberry Pi 1-processorer (då var det bara Raspberry Pi 1) med enda CPU-instruktion saknas. Detta är också anledningen till att du inte kan blanda Debians "armhf" och Raspbian's "armhf" -utgåvor.

Bildstorlek

Installationsbilderna som erbjuds av de tre projekten är helt olika. Armbian kräver att du väljer en kategori (som General, IOT, NAS, Networking eller Desktop) och SBC, först. Därefter väljer du motsvarande bild som erbjuds med antingen 4.9 eller 5.9 Linux-kärna för oldstable (tidigare version), stabil (aktuell release) och testning (kommande release). Bildstorleken är mellan 270 och 600 M. Varje bildfil kan hämtas som direktnedladdning eller via BitTorrent från projektwebbplatsen. Uppdatering av en befintlig Armbian-installation görs med samma instruktioner som de som används för att underhålla Debian GNU / Linux.

Däremot är alternativen för Raspberry Pi OS lite mer begränsade. Raspberry Pi kräver att du väljer mellan OS Lite, OS med skrivbord och OS med skrivbord och rekommenderad programvara. Alla bilder är utrustade med 32-bitarsversionen av en 5.4 Linux-kärnor. Bildstorleken varierar från 440 M till 3 G. Nedladdning av bilden kan göras direkt, som en torrent dataström, eller via Raspberry Pi Imager, ett GUI-baserat installationsverktyg tillgängligt för Windows, macOS och Ubuntu. Som med Armbian görs uppdatering av en befintlig version av Raspberry Pi med samma instruktioner som de som används för att underhålla Debian GNU / Linux.

Slutligen, för de flesta enheter, inklusive de flesta ARM-enheter, erbjuder Debian GNU / Linux en mängd färdiga installationsbilder, inklusive en grundläggande installation, en liten bild för nätverksbaserad installation, olika skrivbordsvarianter som passar på en CD eller DVD, levande CD-skivor och till och med en uppsättning fulla CD / DVD-bilder. Även om dessa bilder inte är färdiga att köras, innehåller de Debian Installer, ett minimalt operativsystem som endast är för att utföra OS-installationen. Livebilderna som körs direkt från en skrivskyddad installation innehåller också Debian Installer.

Bildstorleken är mellan 250 M och 3 G. Nedladdning av en bild är möjlig som direktnedladdning eller via BitTorrent. De vanliga Debian-förpackningskommandona används för att uppdatera en befintlig installation.

Detta är inte så för operativsystemet Raspberry Pi. Faktum är att det inte finns några officiella Debian GNU / Linux-bilder för Rasberry Pi. Det finns dock inofficiella färdiga bilder (inga installationsbilder) med Debian GNU / Linux för Raspberry Pi, gjorda av samma utvecklare bakom de officiella (men "icke-fria") Raspberry Pi-firmwarepaket i Debian GNU / Linux [16].

Först väljer du mellan dagligen byggda bilder baserat på de senaste paketen i Debian GNU / Linux 10 Buster (den nuvarande stabila utgåvan vid skrivning av den här artikeln) eller "testade" bilder som garanterat kommer att köras. Jämfört med Raspberry Pi OS, som erbjuder bilder som fungerar på alla Raspberry Pi-kort, med denna distribution måste du välja vilket Raspberry Pi-kort som ska innehålla bilden. Bilderna för operativsystemen Raspberry Pi 1 och Raspberry Pi 0 (inte 0W) är ungefär desamma, eftersom de använder mer eller mindre samma CPU och har inga Wi-Fi-komponenter. Beroende på det får du också olika OS-arkitekturer; nämligen 'armel' för Raspberry Pi 1, 0 och 0W; den ursprungliga 'armhf' för Raspberry Pi 2; och 'arm64' för Raspberry Pi 3 och 4.

Enheter som stöds

När det gäller stödda plattformar och enheter går de tre projekten i lite olika riktningar. För Armbian finns enhetsinformationen för varje SBC som stöds på Armbian-webbplatsen. Detta åtföljs av en lista över testad tredje parts hårdvara för att säkerställa att alla hårdvarukomponenter fungerar bra tillsammans. Sammantaget stöder Armbian flera olika ARM SBC: er, men det stöder inte Raspberry Pi-familjen av SBC: er.

För Raspberry Pi OS finns enhetsinformation för varje Raspberry Pi-version online på Raspberry Pi-webbplatsen. Och naturligtvis ger Raspberry Pi OS stöd för alla Raspberry Pi-enheter.

För Debian GNU / Linux organiseras informationen i en wiki, sorterad efter operativsystemarkitektur, med specialavsnitt för mer specifik information. Debian stöder för närvarande nio OS-arkitekturer officiellt (varav tre är för ARM-enheter). Debian bygger också sina paket och installationsbilder för ytterligare 13 OS-arkitekturer som inte stöds officiellt och körs under etiketten 'Debian Ports' [21].

Utveckling

Dessutom skiljer sig metoderna med var och en av de tre Linux-distributionerna väsentligt. Armbian och Debian GNU / Linux är gemenskapsbaserade projekt. För Armbian är motsvarande GitHub-projektsida nyckeln. Debian GNU / Linux använder sin egen distribuerade infrastruktur som möjliggör utveckling av Linux-distributionen från hela världen.

Under tiden upprätthålls Raspberry Pi OS av den ideella Raspberry Pi Foundation som ett internt projekt. Bidrag till Raspberry Pi Foundation kan göras via Raspberry Pi Forum [20]. Raspbian-projektet är till stor del en sammanställning av Debian-paketen som skapats för Raspberry Pi och verkar inte ha en egen grupp. Den föråldrade Raspbian-webbplatsen [16] hänvisar ofta användare till antingen Debian GNU / Linux eller Raspberry Pi Foundation-webbplatser.

Licensiering

Armbian är licensierat under GPL2, medan både Raspberry Pi OS och Debian GNU / Linux använder en blandning av licenser, inklusive GPL och andra. Raspberry Pi OS-bilden "med rekommenderad programvara" innehåller flera "gratis att använda" kommersiella programvarupaket, varav de flesta är begränsade demoversioner. Planen är att dessa kostnadsfria paketerbjudanden är att ansluta användare så att de köper den programvaran för sina andra datorer.

Vissa firmware-blobs som behövs för Raspberry Pi och andra ARM-SBC: er finns bara som "endast binär", i.e., utan källkod. I mjukvaruvärlden anses dessa mjukvarupaket vara ”icke-fria.”De tidigare nämnda inofficiella Debian-bilderna för Raspberry Pi innehåller Debians” icke-fria ”förvar, aktiverat som standard eftersom det innehåller programvarupaketet“ raspi-firmware ”.

Programvarupaket och installation

Armbian beskriver sig själv som en ”lättviktsdebian- eller Ubuntu-baserad Linuxdistribution specialiserad för ARM-utvecklingskort.”Den kommer som en färdig bild som är optimerad för minnesblixtenheter, som NAND, SATA, eMMC och USB. Både SSH- och DHCP-tjänster aktiveras redan från början. En trådlös adapter stöder DHCP (om sådan finns), men den här funktionen måste aktiveras av användaren. Detta möjliggör en enkel installation för att ansluta detta system till din router eller skapa en individuell åtkomstpunkt. XFCE används som skrivbordsmiljö [18].

För att öka exekveringshastigheten för kod och data och minimera I / O-operationer har flera funktioner överförts för att fungera så mycket som möjligt från minnet. Till exempel håller log2ram-tjänsten loggfiler i minnet och sparar dem på disken dagligen och vid avstängning [13]. Diskcache lagras i minnet i tio minuter med alternativet "commit = 600" i katalogkonfigurationen i filen / etc / fstab [14].

Som tidigare nämnts riktar Raspberry Pi OS sig till de olika Raspberry Pi-modellerna, som började med ganska begränsade hårdvarukomponenter. För att hantera dessa begränsningar som en skrivbordsmiljö startar standardinställningen ett modifierat LXDE-skrivbord med namnet PIXEL (Pi Improved X-windows Environment Lightweight), som också är tillgängligt från Raspberry Pi Foundation för Intel-baserade Linux-datorer.

Som standard finns en användare med namnet "pi" med lösenordet "hallon" och SSH-tjänsten är inaktiverad för den här användaren. Du kan aktivera den för en enda start genom att redigera filkonfigurationen.txt på den första partitionen. Det rekommenderas starkt att ändra lösenordet omedelbart efter den första inloggningen. Först då kan du aktivera SSH-tjänsten permanent för att undvika välkända standardlösenord som är tillgängliga via SSH.

Debians inofficiella Raspberry Pi-bilder levereras också med nätverket aktiverat som standard via DHCP, men Wi-Fi kommer inte förkonfigurerat, när detta skrivs. En annan skillnad med Raspberry Pi OS-bilder är att det inte finns någon normal användare, bara en rootanvändare utan lösenord och SSH-rootinloggningen inaktiverad. Att ställa in rootlösenordet eller en SSH-nyckel för root-inloggning i förväg stöds av redigering av "sysconf.txt ”på den första partitionen. Dessa inställningar rensas efter att de har tillämpats på det startade systemet för att undvika läckage av lösenordet för vanlig text.

För närvarande är alternativet att konfigurera åtkomst till ett Wi-Fi-nätverk i planeringsfasen. Framtida versioner av Raspberry Pi OS-bilder kommer att vara utrustade med den här funktionen.

Slutsats

Programmeringsgemenskapen har använt Debian GNU / Linux och Armbian i produktionsliknande miljöer utan att misslyckas i många år; till exempel en CubieTruck som en mobil samarbetsplattform ("mobilt moln"). Enheter med Raspberry Pi OS har använts i experimentella stadier, och vi var också mycket glada över dem. Det är ett stort nöje att ha tillgång till så små, pålitliga, prisvärda och kraftfulla maskiner. Vi vill ha mer tid att utforska dem ännu mer detaljerat.

Länkar och referenser

[1] Debian GNU / Linux-projektet, https: // www.debian.org /
[2] Armbian-projektet, https: // www.armbian.com /
[3] ARM, Wikipedia, https: // sv.wikipedia.org / wiki / ARM_architecture
[4] ARM7, Wikipedia, https: // sv.wikipedia.org / wiki / ARM7
[5] Orange Pi, http: // www.orangepi.org /
[6] Cubieboard, http: // cubieboard.org /
[7] Tinkerboard, https: // www.som oss.com / us / Single-Board-Computer / Tinker-Board /
[8] Raspberry Pi OS, https: // www.Raspberry Pi.org / programvara / operativsystem /
[9] Mikrotik, https: // mikrotik.com /
[10] Frank Hofmann: Zwergenaufstand. Das Cubietruck im Alltagstest, RaspberryPi Geek 04/2016, https: // www.hallon-pi-nörd.de / ausgaben / rpg / 2016/04 / das-cubietruck-im-alltagstest /
[11] PC-motorer, https: // www.pc-motorer.ch /
[12] Kubiskt, http: // kubiskt.org /
[13] Log2Ram, https: // github.com / azlux / log2ram
[14] Fördelar / nackdelar med att öka "commit" i fstab, https: // unix.stackexchange.com / frågor / 155784 / fördelar-nackdelar med att öka-commit-in-fstab
[15] Raspbian-projekt, https: // www.raspbian.org /
[16] Inofficiella Debian-bilder för Raspberry Pi SBC-familjen, https: // raspi.debian.netto/
[17] RaspberryPi Foundation, https: // www.Raspberry Pi.org / om /
[18] XFCE, https: // xfce.org /
[19] “armhf” på Wikipedia, https: // sv.wikipedia.org / wiki / ARM_architecture # VFP
[20] RaspberryPi Forum, https: // www.Raspberry Pi.org / forum /
[21] Debian-portar, https: // www.hamnar.debian.org /

Om Författarna

Frank Hofmann arbetar på vägen - helst från Berlin (Tyskland), Genève (Schweiz) och Kapstaden (Sydafrika) - som utvecklare, tränare och författare för tidningar som Linux-User och Linux Magazine.

Axel Beckert arbetar som Linux-systemadministratör och specialist för nätverkssäkerhet med de centrala IT-tjänsterna i ETH Zürich. Han är också volontär med Debian GNU / Linux-distribution, Linux User Group Switzerland (LUGS), Hackerfunk radioprogram och podcast och olika open source-projekt.

Hofmann och Beckert har också skapat en Debian-pakethanteringsbok

(http: // www.dpmb.org).

Så här installerar du League Of Legends på Ubuntu 14.04
Om du gillar League of Legends är det här en möjlighet för dig att testa League of Legends. Observera att LOL stöds på PlayOnLinux om du är en Linux-a...
Installera det senaste OpenRA-strategispelet på Ubuntu Linux
OpenRA är en Libre / Free Real Time Strategy-spelmotor som återskapar de tidiga Westwood-spelen som det klassiska Command & Conquer: Red Alert. Distri...
Installera senaste Dolphin Emulator för Gamecube & Wii på Linux
Dolphin Emulator låter dig spela dina valda Gamecube & Wii-spel på Linux Personal Computers (PC). Eftersom Dolphin Emulator är en fritt tillgänglig o...