Arch Linux | |
---|---|
Udvikler | Aaron Griffin, Allan McRae og Anatoly Pomozov |
Første udgave | marts 2002 |
nyeste version | 2022.11.01 |
Opdateringsmetode | Rullende udløser |
Pakkeansvarlige | pacman |
Understøttede platforme | x86_64 |
Kernel type | linux |
Licens | GNU GPL |
Kildekodelager | git.archlinux.org |
Internet side | archlinux.org |
Mediefiler på Wikimedia Commons |
Arch Linux ( IPA : [ ɑ ː r t ʃ ˈ l ɪ n ə k s ] [1] [2] [3] ) er en uafhængig GNU / Linux - distribution til superbrugere, optimeret til x86-64-arkitekturen , der sigter mod for at levere de seneste "nyeste" versioner af software, efter den rullende udgivelsesmodel . Standardbrugeren er forsynet med et minimalistisk basissystem, hvori brugeren kan tilføje det, han har brug for. Pacman -pakkehåndtering [4] [5] [6] [7] [8] [9] [10] bruges til at installere, fjerne og opgradere pakker .
De officielle Arch Linux- depoter indeholder for det meste gratis software , men distributionen er ikke godkendt af FSF , da Arch har en loyal, ikke-fri softwarepolitik [11] . GNU - projektet anbefaler den Arch Linux-baserede distribution Parabola [12] til installation . Der er i øjeblikket mere end 12.000 pakker i de officielle arkiver [13] , med over 83.000 i AUR [14] .
Arch Linux distribueres hovedsageligt i form af færdige binære pakker , selvom det tillader bygning fra kilde, og pakker fra AUR kan bygges både på brugerens maskine og konverteres fra deb / rpm - pakker til pacman -pakker . På nogle måder ligner Arch Slackware- distributionen , men i modsætning til sidstnævnte administrerer den pakkeafhængigheder. Arch Linux binære filer er kompileret til x86-64 arkitekturen , som sikrer høj ydeevne på moderne computere . Der er uofficielle versioner til andre arkitekturer (for eksempel PowerPC og ARM ), samt flere grene.
Arch Linux har en omfattende dokumentationssektion i ArchWiki [15] underdomænet , baseret på MediaWiki , som vedligeholdes af udviklere og fællesskabet. Dokumentationen er blevet oversat til snesevis af sprog, men den vigtigste er engelsk. Du kan også finde den officielle installationsvejledning i dokumentationen [16] .
Med omfattende dokumentation og uden grafisk installationsprogram er Arch af stor akademisk interesse for dem, der ønsker at lære GNU/Linux.
Arch Linux er en uafhængig distribution udviklet fra bunden. Skaberen af distributionen, Judd Wyneth, var inspireret af CRUX , men forestillingen om, at Arch er baseret på CRUX , er forkert. Fordelinger baseret på Arch inkluderer Antergos , Parabola GNU , ArchBang , Arch Hurd , Chakra , ConnochaetOS , Manjaro og andre [17] .
I slutningen af januar 2017 annoncerede udviklerne, at de stoppede understøttelsen af 32-bit versionen [18] . Support til billeder og pakker til x86-processorer vil blive videreført af fællesskabet [19] . Som det viste sig senere, fortsatte Parabola GNU/Linux-libre- fællesskabet uofficielt med at understøtte x86 [20] .
Filosofien bag Arch Linux er baseret på flere grundlæggende principper [21] :
Sådan beskriver udviklerne de vigtigste funktioner og principper, som Arch er baseret på [22] :
I modsætning til de fleste distributioner er installation af Arch Linux næsten "manuel". I stedet for et grafisk installationsprogram leveres en Grml-tilpasset [23] zsh som en kommandoskal og et sæt specialiserede scripts (Arch Install Scripts). Teksteditorerne vi , vim og nano er tilgængelige til redigering af konfigurationsfiler under installationen . Under installationen, efter at have oprettet forbindelse til internettet, kan du gå til https://wiki.archlinux.org/index.php/Installation_guide . Tidligere versioner af systemet inkluderede et pseudografisk installationsprogram, men dets officielle support er afsluttet. Også i 2021 introducerede udviklerne archinstall-konsolinstallationsprogrammet, som giver dig mulighed for fuldt ud at automatisere installationsprocessen gennem scripts
En af Archs hovedfunktioner er Pacman-pakkehåndteringen, som har til formål at forenkle pakkehåndteringen. I lighed med andre pakkeadministratorer, for at holde systemet opdateret, synkroniserer Pacman lister (databaser) med pakker med Arch-hovedserveren, normalt gennem spejle.
Pacman giver en enkel, men meget kraftfuld CLI med mange avancerede funktioner (såsom registrering af batchfiler, der er blevet ændret af brugeren eller systemet).
For at autentificere pakker bruger Pacman GnuPG- nøgler til at signere pakker [24] . Mens alle officielle pakker i øjeblikket er underskrevet, er arbejdet med at signere pakkedatabaser stadig i gang, men brugere har mulighed for at aktivere verifikation af databasesignatur.
Arch er primært baseret på binære pakker, men er i stand til problemfrit at integrere pakker bygget fra kilden (svarende til Gentoo ). De administreres ved hjælp af Pacman -pakkehåndteringen , som administrerer installationspakker, opdateringer, fjernelser og databaseforespørgsler.
Pacman er i stand til at finde afhængigheder på egen hånd, automatisk downloade og installere alle nødvendige pakker. Som regel er det nok for brugeren at udføre kun én kommando for fuldstændig at opdatere hele systemet.
Fra marts 2010 [25] er alle Pacman-pakker LZMA2 - komprimerede tarballs , som hver indeholder kompilerede programmer og yderligere information. Den tidligere brugte gzip-komprimeringsalgoritme understøttes dog stadig. [26] Der har været en vis debat om navngivningen og formatet af pakker. Det blev besluttet at lade pakkerne blive som almindelige arkiver, da det gør det nemt at udtrække og analysere indholdet af pakken. Et typisk pakkefilnavn kan ligne linux-4.14.13-1-x86_64.pkg.tar.xz, hvor en del af suffikset .pkgindikerer, at arkivet er en pakke.
Alle pakker kan også bygges fra kildekode (inklusive binære filer) ved hjælp af makepkg .
Det officielle Arch Linux-lager indeholder to grene: den officielt understøttede gren og brugerlageret - AUR [27] [28] .
Officielt vedligeholdt filialDen officielt vedligeholdte gren har en fælles fejlsporer og indeholder 7 sektioner [29] :
Kerne Indeholder alle de nødvendige pakker til at køre systemet (som Debian netinst undtagen X Window System ). Ekstra Indeholder pakker, der er valgfrie til at arbejde med systemet, men populære ( KDE , GNOME , forskellige grafiske programmer). Fællesskab Indeholder pakker, der ikke er inkluderet i Core og Extra, men som kræves af brugere, understøttet af betroede brugere (Trusted Users). samfundstest Indeholder pakker, der kan forårsage problemer under kørsel og mens de venter på fejlmeddelelser, er inkluderet i fællesskabet efter fejlretning. Community-testafsnittet er ikke nødvendigt for arbejde og anbefales ikke til hverdagsarbejde på grund af øgede stabilitetsrisici, understøttet af betroede brugere. Multilib Et lager til x86_64-arkitekturen med en praktisk mulighed for at installere 32-bit applikationer i et 64-bit miljø. Multilib-testning Multilib, men med friske (testede) versioner af pakker fra multilib. afprøvning Indeholder pakker, der kan forårsage problemer under drift, og mens de venter på fejlmeddelelser, er de efter fejlretning inkluderet i Core, Extra, samt softwarepakker i udvikling og officielt ikke-udgivne programmer (SVN builds, alpha, beta releases). Testafsnittet er ikke nødvendigt til arbejde og anbefales ikke til dagligt arbejde på grund af øgede stabilitetsrisici.Pakker fra den officielt vedligeholdte filial er binære (i modsætning til AUR), men kan altid bygges fra kilde ved hjælp af ABS (eller yderligere applikationer, der forenkler processen, såsom yay eller pacaur), hvis det ønskes.
AURAUR (Arch User Repository), et community-vedligeholdt lager indeholdende PKGBUILD , scripts til automatisk opbygning af applikationer fra kilde ved hjælp af ABS, ikke inkluderet i hovedlagrene. Alle har ret til at tilføje den applikation, de kan lide til depotet ved blot at skrive og sende PKGBUILD, hvorefter en af Trusted Users (Trusted User) vil tjekke det, og om alt er i orden (der er ingen rootkits , og applikationen er korrekt bygget og installeret), vil den blive markeret som sikker (sikker) . Det ultimative mål med pakker fra AUR er at migrere til den officielt understøttede filial (fællesskabssektionen); der er et afstemningssystem (ved hjælp af aurvote-værktøjet), der giver dig mulighed for at bestemme de vigtigste kandidater til flytning. [30] Pakker fra AUR kan dog installeres uden at vente på Fællesskabets lager, til dette kan du installere et hjælpeværktøj til at arbejde med AUR'en (for eksempel pacaur, yay, yaourt (forældet) og mange andre ), eller bygge det fra kildekoden ved hjælp af makepkg [31] .
Uofficielle arkiverUd over de officielle opretter brugere arkiver, der for det meste indeholder modificerede, yderligere eller nyere versioner af pakker. [32] Den mest populære af disse er Archlinux.fr-depotet [33] .
Abs-værktøjet er blevet forældet. Udfasning af ABS-værktøj .
Arch Build System (ABS) er et FreeBSD -porteringssystem til at bygge binære pakker fra kilden. Pakken kan bygges ved hjælp af makepkg-værktøjet ved hjælp af specielle scripts - PKGBUILD . De oprettede pakker kan nemt installeres og overvåges ved hjælp af pacman [34] .
Arch Linux adskilte sig noget fra andre distributioner i stil med opstartsscripts før udgivelsen af 2012.08.04. Den såkaldte BSD - stil blev brugt i stedet for System V. Dette gjorde det muligt for alle opstartsindstillinger, såsom indlæsbare kernemoduler , dæmoner , lokalisering og netværksgrænsefladeindstillinger , at blive indeholdt i en enkelt /etc/rc.conf-fil med en enkel og forståelig syntaks. [35]
I øjeblikket er standard init-systemet i Arch Linux systemd [36] . systemd er et ret ungt centraliseret system til initialisering og styring af et Linux-system, designet til at eliminere manglerne ved init, samt samle mange forskellige programmer og andre værktøjer til systemadministration på ét sted. Meningerne om overgangen blandt brugere er blandede, men de fleste udviklere, der er mere objektive omkring systemd, betragter det som en rentabel erstatning for init [37] . Hvorom alting er, Arch "er hvad du gør det til", og er ikke beregnet til begyndere, men til mere erfarne brugere, så det er rent formelt at erstatte standard init-systemet fra sysvinit til systemd. Enkelheden af sysvinit gør det muligt for brugeren at vedligeholde det selv, selv når den officielle support ophører.
Arch er en konstant opdateret distribution, med nye pakkeversioner udgivet dagligt. Med en pakkehåndtering kan brugerne holde deres system opdateret. I modsætning til distributioner, der tilbyder at installere builds i den tilstand, de var i, da de blev udgivet, er Arch builds snapshots af det nuværende system. På grund af dette er der ingen grund til regelmæssigt at udgive nye versioner (selvom uerfarne brugere har en tendens til at opfatte dette som en modvilje hos udviklere til at udvikle distributionen).
Fra oprettelsesøjeblikket og til og med Voodoo-versionen blev Arch-builds nummereret efter distributionsversionen (0.1-0.8). Fra og med udgivelsen 2007.05 (Duke) er versionsnummeret i formatet ГГГГ.ММ året og måneden for ISO -installationsudgivelsen . ISO-billedet inkluderer kun pakker fra Core-lageret. I øjeblikket er udgivelsen af Core builds afbrudt. I stedet frigives minimalistiske netinstall-builds, hvis formål er at starte op og skabe en netværksforbindelse, så du kan installere den aktuelle version af systemet over netværket. Resten af lagrene er altid i den aktuelle tilstand og har intet at gøre med frigivelsen af builds.
Version | kodenavn | datoen | Bemærk |
---|---|---|---|
0,1 | Homer | marts 2002 | Første udgave. |
0,2 | Vega | april 2002 | |
0,3 | ildflue | august 2002 | |
0,4 | Trække på | december 2002 | |
0,5 [38] | Nova | juli 2003 | Understøttelse af PAM , LVM og GRUB . |
0,6 [39] | Widget | marts 2004 | Tilføjet understøttelse af JFS- og XFS -filsystemer . |
0,7 [40] | Wombat | januar 2005 | |
0,8 [41] | Voodoo | marts 2007 | Installationsprogrammets udvidede funktioner. |
2007.05 [42] | Duke | maj 2007 | Pacman v3.0 |
2007.08 [43] | Gå ikke i panik | august 2007 | Rettede fejl i installationsprogrammet. |
2008.06 [44] | Overlord | juni 2008 | Brug af .img-billeder til at skrive til USB -enheder. |
2009/02 [45] | februar 2009 | Brug af AIF ( Arch Installation Framework ). | |
2009.08 [46] | august 2009 | Pacman 3.3, brug af redesignet AIF ( LVM -kapacitet og andre ændringer), forskellige forbedringer. | |
2010.05 [47] | maj 2010 | Brug af et enkelt billede til at brænde til CD og USB -enheder. Fremkomsten af et dobbeltbillede, foruden separate billeder til x86- og x86-64-arkitekturer . | |
19.08.2011 [48] | august 2011 | Forbedrede installationsmuligheder | |
15/07/2012 [49] | juli 2012 | Fjernet AIF, bruger simple installationsscripts i stedet | |
04.08.2012 [50] | august 2012 | GRUB 2.0, ZSH som shell, netværksautostart, hvis DHCP er tilgængelig. | |
07.09.2012 [51] | september 2012 | Linux 3.5.3, det er muligt at oprette forbindelse til internettet via et UMTS USB-modem på et Live-system | |
2012.10.06 [52] | oktober 2012 | Brugt af systemd til at starte systemet, initscripts er ikke tilgængelige på Live-systemet, EFI-start og installation gjort lettere, gummiboot bruges til at tegne menuer i EFI | |
2012.11.01 [53] | november 2012 | Linux 3.6, ConsoleKit fjernet fra repositories, polkit og netværksmanager flyttet til ekstra, opstartet ved hjælp af systemd-login [54] | |
2012.12.01 [55] | december 2012 | Linux 3.6.8, systemd 196 | |
2013.01.04 | januar 2013 | Linux 3.6.11 | |
2013.06.01 | juni 2013 | Linux 3.9.4 | |
2013.07.01 | juli 2013 | Linux 3.9.8 | |
2013.08.01 | august 2013 | Linux 3.10.3 | |
01.09.2013 | september 2013 | Linux 3.10.10 | |
2013.10.01 | oktober 2013 | Linux 3.11.2 | |
2014.01.05 | januar 2014 | Linux 3.12.6 | |
2014.02.01 | Februar 2014 | Linux 3.12.9 | |
2014.03.01 | marts 2014 | Linux 3.13.5 | |
2014.04.01 | april 2014 | Linux 3.13.7 | |
2014.05.01 | maj 2014 | Linux 3.14.1 | |
2014.06.01 | juni 2014 | Linux 3.14.4 | |
2014.07.03 | juli 2014 | Linux 3.15.3 | |
03.09.2014 | september 2014 | Linux 3.16.1 | |
2014.10.01 | oktober 2014 | Linux 3.16.3 | |
2014.11.01 | november 2014 | Linux 3.17.1 | |
2014.12.01 | december 2014 | Linux 3.17.4 | |
2015.01.01 | januar 2015 | Linux 3.17.6 | |
2015.03.01 | marts 2015 | Linux 3.18.6 | |
01.06.2015 | juni 2015 | Linux 4.0.4 | |
01.08.2015 | august 2015 | Linux 4.1.3 | |
2015.12.01 | december 2015 | Linux 4.2.5 | |
2016.01.01 | januar 2016 | Linux 4.3.3 | |
2016.04.01 | april 2016 | Linux 4.4.5 | |
2016.05.01 | maj 2016 | Linux 4.5.1 | |
2016.06.01 | juni 2016 | Linux 4.5.4 | |
2016.07.01 | juli 2016 | Linux 4.6.3 | |
2016.08.01 | august 2016 | Linux 4.6.4 | |
03.09.2016 | september 2016 | Linux 4.7.2 | |
2016.12.01 | december 2016 | Linux 4.8.11 | |
2017.01.01 | januar 2017 | Linux 4.8.13 | |
2017.02.01 | februar 2017 | Linux 4.9.6 | |
2017.03.01 | marts 2017 | Linux 4.9.11 | |
2017.04.01 | april 2017 | Linux 4.10.6 | |
2017.05.01 | maj 2017 | Linux 4.10.13 | |
2017.06.01 | juni 2017 | Linux 4.11.3 | |
2017.07.01 | juli 2017 | Linux 4.11.7 | |
2017.08.01 | august 2017 | Linux 4.12.3 | |
2017.09.01 | september 2017 | Linux 4.12.8 | |
2017.10.01 | oktober 2017 | Linux 4.13.3 | |
2017.11.01 | november 2017 | Linux 4.13.9 | |
2017.12.01 | december 2017 | Linux 4.13.12 | |
01.01.2018 | januar 2018 | Linux 4.14.9 | |
2018.02.01 | februar 2018 | Linux 4.14.15 | |
01.03.2018 | marts 2018 | Linux 4.15.6 | |
2018.04.01 | april 2018 | Linux 4.15.14 | |
2018.05.01 | maj 2018 | Linux 4.16.5 | |
2018.06.01 | juni 2018 | Linux 4.16.12 | |
2018.07.01 | juli 2018 | Linux 4.17.3 | |
01.08.2018 | august 2018 | Linux 4.17.11 | |
01.09.2018 | september 2018 | Linux 4.18.5 | |
2018.10.01 | oktober 2018 | Linux 4.18.9 | |
2018.11.01 | november 2018 | Linux 4.18.16 | |
2018.12.01 | december 2018 | Linux 4.19.4 | |
01.01.2019 | januar 2019 | Linux 4.20.0 | |
2019.02.01 | februar 2019 | Linux 4.20.6 | |
01.03.2019 | marts 2019 | Linux 4.20.13 | |
2019.04.01 | april 2019 | Linux 5.0.5 | |
2019.05.01 | maj 2019 | Linux 5.0.10 | |
2019.05.02 | maj 2019 | Linux 5.0.10 | |
01.06.2019 | juni 2019 | Linux 5.1.5 | |
2019.07.01 | juli 2019 | Linux 5.1.15 | |
01.08.2019 | august 2019 | Linux 5.2.5 | |
01.09.2019 | september 2019 | Linux 5.2.11 | |
2019.10.01 | oktober 2019 | Linux 5.3.1 | |
2019.11.01 | november 2019 | Linux 5.3.8 | |
2019.12.01 | december 2019 | Linux 5.3.13 | |
01.01.2020 | januar 2020 | Linux 5.4.6 | |
2020.02.01 | februar 2020 | Linux 5.4.15 | |
01.03.2020 | marts 2020 | Linux 5.5.6 | |
2020.04.01 | april 2020 | Linux 5.5.13 | |
2020.05.01 | maj 2020 | Linux 5.6.8 | |
2020.06.01 | juni 2020 | Linux 5.6.15 | |
2020.07.01 | juli 2020 | Linux 5.7.6 | |
01.08.2020 | august 2020 | Linux 5.7.11 | |
01.09.2020 | september 2020 | Linux 5.8.5 | |
2020.10.01 | oktober 2020 | Linux 5.8.12 | |
2020.11.01 | november 2020 | Linux 5.9.2 | |
2020.12.01 | december 2020 | Linux 5.9.11 | |
2021.01.01 | januar 2021 | Linux 5.10.3 | |
2021.02.01 | februar 2021 | Linux 5.10.11 | |
2021.03.01 | marts 2021 | Linux 5.11.2 | |
2021.04.01 | april 2021 | Linux 5.11.11 | |
2021.05.01 | maj 2021 | Linux 5.11.16 | |
2021.06.01 | juni 2021 | Linux 5.12.8 | |
2021.07.01 | juli 2021 | Linux 5.12.13 | |
2021.08.01 | august 2021 | Linux 5.13.6 | |
2021.09.01 | september 2021 | Linux 5.13.13 | |
2021.10.01 | oktober 2021 | Linux 5.14.8 | |
2021.11.01 | november 2021 | Linux 5.14.15 | |
2021.12.01 | december 2021 | Linux 5.15.5 | |
2022.01.01 | januar 2022 | Linux 5.15.12 | |
2022.02.01 | februar 2022 | Linux 5.16.4 | |
2022.03.01 | marts 2022 | Linux 5.16.11 | |
2022.04.01 | april 2022 | Linux 5.17.1 | |
2022.04.05 | april 2022 | Indeholder ikke en aprilsnar | |
2022.05.01 | maj 2022 | Linux 5.17.5 | |
2022.06.01 | juni 2022 | Linux 5.18.1 | |
2022.07.01 | juli 2022 | Linux 5.18.7 | |
2022.08.05 | august 2022 | Linux 5.18.16 |
Legende:
Sidste nummer Seneste udgivelse
Linux distributionsfamilier | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Debian |
| ||||||||||||||
ubuntu |
| ||||||||||||||
Fedora |
| ||||||||||||||
rød hat |
| ||||||||||||||
Mandriva |
| ||||||||||||||
Slackware | |||||||||||||||
Gentoo | |||||||||||||||
Arch | |||||||||||||||
Uafhængig | |||||||||||||||
Særlig |
| ||||||||||||||
Kategori Wikimedia Commons Wikinews Wikidata |
Gratis og open source software | |
---|---|
Det vigtigste |
|
Fællesskab |
|
Organisationer | |
Licenser | |
Problemer | |
Andet |
|
|