Arch Linux

Arch Linux (Арч Линукс) е дистрибуция на Linux, оптимизирана за процесори x86-64, която разчита основно на максималната опростеност. Неин създател е Джъд Вине (Judd Vinet), чиято основна цел е била да направи подобрена версия на Crux. Използващите тази дистрибуция са предимно напреднали потребители, които не се страхуват от работа в конзолен режим. Въпреки това има улеснени Arch-базирани дистрибуции, като Antergos и Manjaro.

Създаването на дистрибуцията е вдъхновено от CRUX– дистрибуция на Linux предназначена за по– опитните потребители на платфорамата. Джъд Вине дава началото на Arch Linux през Март 2002. Вине се занимава със разработването ѝ до 1 октомври 2007, когато се отказва поради недостиг на време и ръководството на проекта бива наследено от разработчик под псевдонимът „Aaron Griffin“.

Дизайн и принципи

Arch се основава главно на пакетна система от двоични пакети. Те са насочени към микропроцесори от типа x86-64, за да подпомогнат производителността на модерния хардуер.

Осигурена е система от типа ports/ebuild, която служи за автоматичното компилиране на сорс кода, позната като Arch Build System.

Основният фокус на дистрибуцията е изчистен и семпъл дизайн, състоящ се в това да се създаде среда сравнително лесна за разбиране и праволинейна за употреба, вместо добре познатите ни графични алтернативи– за сравнение мениджърът на пакетите в Arch Linux няма официален графичен интерфейс. До голяма степен това е постигнато чрез насърчаване правенето на компактно коментирани, изчистени конфигурационни файлове, които са аранжирани за бърз достъп и обработка. Това, от своя страна, дава репутация на дистрибуцията като „дистрибуция за добре запознати и напреднали Linux потребители, които не се страхуват от конзолният терминал“.

Инсталация

Уебстраницата на Arch Linux предлага ISO изображения, които могат да се стартират от CD или USB. Базовата системa се инсталира посредством обикновен command line скрипт (pascstrap). Инсталацията на допълнителни пакети се осъществява чрез pascstrap или pacman след инициализирането на системата.

Алтернатива на използването на CD или USB е използването на статична версия на пакетния мениджър pacman, от вече съществуваща Linux базирана операционна система. По този начин потребителят може да „закачи“ ново-форматираният дял и да инсталира основните и/или допълнителни пакети– корен за операциите става коренът на закаченият дял. Този метод на инсталация е от полза когато инсталираме Arch Linux на USB диск, или на временно прикачено устройство, което принадлежи към друга система.

Без значениe от подхода на инсталация, трябва да се предприемат допълнителни мерки преди системата да влезе в употреба, като от особена важност е създаването на bootloader– програма, която да зареди операционната система след стартирането на компютъра, initramfs– временна операционна система в РАМ паметта и конфигурирането на новата система.

Използват се бинарни пакети, като основен инструмент за манипулацията им (инсталиране, деинсталиране, обновяване) е pacman. Пакетите са изградени и оптимизирани за процесори x86-64, което прави Arch Linux бърз и ефективен при работа със съвременен хардуер. За изграждане на пакети от изходен код се използва портовата система ABS (Arch Build System), която прави интегрирането на външни пакети в системата много лесно и ефективно.

Pacman

За улеснение на обичайните промени по използваните пакети, „pacman“ (съкратено от „package manager“) е разработен от Джъд Вине, за да даде на Arch собствена система, която да следи зависимостите между пакетите.

Всички пакети се управляват чрез pacman. Той отговаря за инсталирането, надграждането, премахването, връщането на по-стари версии на пакетите и разполага със система за автоматично разрешаване на зависимостите между тях. Пакетите за Arch Linux се набавят от пакетното дърво на системата и се компилират за x86-64 архитектура. Използват се двоични пакети във tar.xz формат, като преди това окончание се поставя .pkg, за да се означи, че това е pacman пакет (package-name.pkg.tar.xz).

Хранилища (Repositories)

Към този момент съществуват следните официални базови двоични хранилища:

В допълнение съществуват и тестови хранилища, съдържащи пакети в разработка за някои от основните хранилища. Към момента такива са:

Хранилищата staging и community-staging се използват при някои преизграждания, за да се избегнат повредени пакети.

unstable е хранилище преустановено през Юли 2008, повече от пакетите, на което са били преместени в други хранилища..

Съществуват също и редица неофициални хранилища в допълнение на официалните. Най-добре познатото от тях е Arch User Repository или AUR, поддържано на уебсайтът на Arch Linux. Трябва да се отбележи, обаче, че AUR не се състои от двоични пакети, а вместо тях се използва колекция от изграждащи скриптове известни като PKGBUILDs.

Защита на хранилищата

До преди версия 4.0.0 на pacman в пакетния мениджър на Arch Linux е липсвала поддръжката на подписани пакети. Пакетите и метадатата не са били проверявани за автентичност от pacman по време на изтеглянето и инсталирането им. Без автентикация на подправени или злонамерени mirrors на хранилище може да се изложи на риск цялостта на една система Pacman 4 е давал възможност за потвърждение на източника на пакета и самите пакети, но тази опция е била изключена по подразбиране. През месец Ноемвреи 2011 подписването на пакетите е станало задължително за нови пакети, а от 21 март 2012 всеки официален пакет има подпис.

През Юни 2012, подписването на пакетите и проверката стават официални и са активирани по подразбиране по време на инсталационния процес.

Системата на Arch за комплектоване на пакети (Аrch Build System – ABS) е портова система – такава, която използва makefiles – текстови файлове написани по определен предефиниран синтаксис, които съдържат информация относно организацията на кода и patches (patch – „кръпка“, текстов файл съдържащ списък от разлики между оригиналният и обновеният файл). Тя служи за компилирането на архиви от сорс код (tarballs) към двоични пакети, които се инсталират чрез pacman. Тази система осигурява справочник от скриптове, наречени PKGBUILDs, които дават възможност всички, или дадени, официални пакети за Arch да бъдат персонализирани и компилирани. Поддържа се също възстановяването на цялата система чрез използването на модифицирани обозначения за компилация – compiler flags. Arch Build System разполага със makepkg – средство, чрез което могат да се създават персонализирани pkg.tar.xz пакети от неофициални източници. Получените пакети също могат да се инсталират и следят от pacman.

Arch User Repository (AUR)

В допълнение към съществуващите, хранилището Arch User Repository (AUR) осигурява PKGBUILD скриптове, изработени от потребители, които не се съдържат в останалите хранилища. Тези скриптове улесняват изграждането от базов код, като изрично: изготвят списъци и проверяват за зависимости, конфигурират съвпадането на инсталацията и архитектурата на Arch. Изтеглянето на PKGBUILD скриптове и свързаният с тях изготвящ процес може допълнително да се оптимизира чрез използването на помощни програми. Това обаче, идва с възможността да се изпълнят не валидирани скриптове. Като превантивна мярка програмистите разработващи Arch дават становище, че средства за автоматично откриване, изтегляне и изпълнение на PKGBUILD скриптове, никога няма да бъдат включвани в официалните хранилища.

Потребителите могат да създават пакети съвместими с pacman чрез Arch Build System и персонализирани PKGBUILD скриптове. Тази функционалност е помогнала за поддръжането на Arch User Repository, което се състои от потребителски пакети, допълващи официалните хранилища.

Arch User Repository хранилището осигурява обществото с пакети, които не са включени в официалните хранилища. Причините за това включват:

PKGBUILDs скриптове могат да бъдат допринасяни от обикновените потребители и за всеки такъв скрипт, който не е затворен поради политиката за съображение на Arch User Repository, може да се гласува да бъде включен в обществените хранилища.

Arch Linux е дистрибуция ползваща rolling release модел за обновяване на системата, който се реализира с помощта на малки и чести ъпдейти. По този начин не се налага преинсталиране на системата за ъпгрейд към най-новата версия. С помощта на мениджъра на пакети pacman потребителят може да поддържа системата в актуално състояние, като за това е нужно единствено изпълняване на командата pacman -Syu.

Беше ли полезна тази статия?

Оцени я!

Среден рейтинг / 5. Брой гласове:

Ако намираш статията за полезна...

Последвай ни в социалните мрежи!

Съжаляваме, че тази статия не ти беше полезна!

Помогни ни да променим това!