ПредишенСледващото

В тази статия ще се опитам да се демонстрира функцията на едни и същи, което дава уникална идентичност дистрибуции Archlinux. - управление на пакети.

Pacman - основа на управлението на партида

Archlinux - не е в пълния смисъл на думата дистрибуция Източник на базата, като Gentoo, или дори повече, Linux от нулата. За основната форма на неговото разпространение - все едно под формата на набор от предварително създадени пакети. Вижте тези пакети са сходни с редовни файлове * tar.gz:

При по-внимателно разглеждане се оказва, че Archlinux пакети като архив, който не само гледат, но и характер. ги формат - е прост до крайност, това е чист za- катран "ennoe дърво, сгъстен софтуерна" ти, не съдържа никакви инсталация скрипт, и като цяло не мета информация: само изпълнимия самата (изпълними файлове) двоичния код, предназначен да бъде поставен в директория / ЮЕсАр / хамбар (с изключение на тези програми, които са разумно да бъдат в / хамбар. / sbin / или ЮЕсАр / sbin), след което, ако е необходимо конфигурации (за директорията / ЮЕсАр / и т.н.) и библиотеки (за / ЮЕсАр / ИЪ), както и от човека документация ,

Подобно на своя родоначалник CRUX, Arch признава само леля Маня, информация и други документи на опаковките почистват.

Средства за управление на тези просто създаване на пакет също е много проста и се нарича Пакман (от мениджър на пакети, трябва да се обмисли). си формат призив е:

Определяне на действието е задължително опции, в съответствие с името - по избор.

Планирани дейности Pacman команда. следното:

  • -A. или --add - добавяне (т.е. инсталация) на пакета в системата;
  • -U. --upgrade. и -F. --freshen. - ъпгрейд пакет; разликата между тях е, че само в последния случай актуализира инсталиран преди това (от -А) пакет, в първия - инсталацията се извършва при липса на такива;
  • -S. --sync. - синхронизиращите пакети локално инсталиран разпределение хранилище (ftp.archlinux.org) или огледала;
  • -R. --remove. - премахване на пакета, се извършва без никакво предупреждение, заедно с всичките му конфигурационни файлове и други домакински (с изключение, разбира се, от потребител довереник директория $ HOME);
  • -Q. --query. - информация за искане пакет, независимо дали е или не е поставена;
  • -V. --version. - изход номер на версия на Пакман. информация за авторското право и лицензи.

Както Pacman командни аргументи, когато -A действия. -U и -F трябва да служи пълните имена на файловете пакети, вида - pkg_name-версия-release.pkg.tar.gz. Ако пакетът се намира в един от най-посветена на места (от които ще опиша по-късно), достатъчно е да се формират намален в противен случай трябва да укажете пълния път. В една и съща линия, можете да посочите няколко пакети за монтаж еднократно или ъпгрейд. -Q действие. -R -S и само изисква посочва името на пакета, без други принадлежности.

Има още едно действие - -h. или --help. (Забележка - само това е дадено в съкратена форма с малки букви), - дисплей помощ, по-специално, списъкът с действия. Ако някой от тях са прикрепени към -Н действие. можете да научите повече за опциите, които могат да съпътстват това действие. Така че, екипът

Тя дава списък на всички възможности, които се предлагат под --added действието:

Опции Pacman команди са доста многобройни, което се компенсира с обичайния си избор. Важно може да се -d. --nodeps. Премахването на проверката зависимост, и -f. --force. - задължително инсталирането на пакета, както и -r. --root. . Umolchalnyh предписване различен от източника директория (и това е основната файлова система) и изисква, разбира се, укажете пътя (например, / ЮЕсАр / местни / или неучастие искам да спомена възможността -C --cascade тъй като употребата на това изисква специално внимание ..: тя изисква не само рекурсивно изтриване на този пакет, но и всички, свързани зависимости. имайте предвид, че опциите, за разлика от действието, в обобщена форма, са само с малки букви.

И накрая, най-интересната опция - -u. --sysupgrade. Използва се заедно в действията -U или, още по-добре, -S. тя осигурява пълен ремонт на цялата система:

Очевидно е, че в този случай се изисква връзка с мрежата, за да се синхронизира с хранилища Archlinux.

За да видите и другите възможности, се нарича леля Mans - мъж Pacman.

Конфигуриране на Pacman

Горе споменах мимоходом, че за улеснение на инсталационни пакети трябва да бъде поставен в правилното му място. А мястото е определено в Pacman конфигурационния файл - /etc/pacman.conf.

Както всички добре Archlinux, този файл е предназначена много проста и се състои от две секции - общи настройки на инсталационния пакет, както и списък на хранилища тези. Общите настройки включват:

която се определя от списъка на пакети не е засегната в общия актуализиране означава Pacman -sU;

съдържаща списък с файлове, които не трябва да се пренаписва, при всяко инсталиране и надграждане на пакети (включително актуализация на брой); По подразбиране тук, различни от посочените, изброява всички основни цялата система тип довереник и т.н. / fstab. и т.н. / rc.conf. и т.н. / rc.local. и др.;

пътя до базата данни на пакета (по подразбиране - / Var / ИЪ / Pacman);

Изключване пасивен режим FTP-връзка (използва по подразбиране - и това, другари, е вярна в повечето случаи).

В списъка с арх хранилища показва основния проект FTP-сървър

и всички негови огледала. Списъците могат да се определят поотделно за текущата клон, стабилен, включва хранилище на неофициални пакети. И накрая, можете да зададете и местен пакет хранилище, например:

Тя е намирането на пакета в един от хранилищата, изброени в /etc/pacman.conf файл. Това елиминира необходимостта да укажете пълния път към пакета, както бе споменато по-рано. Ясно е, че инсталационния пакет от FTP-сървърът изисква връзка с мрежата. Локално хранилище е мястото, където можете да поставите пакетите изтеглени по-рано, премахва тази нужда.

зависимостта проблем

Вече казах в статията относно инсталирането Archlinux. че инсталирането на пакети ще фантастично бързо. Това, като цяло, е ясно: тя просто разархивира архива на Pacman пакет и пише, че предкомпилирана компоненти, където трябва. Тъй като няма мета-информация в пакета не се съдържат, и проследяване на зависимости, както това се случва.

Независимо от това се контролира Archlinux зависимости в съществува система за управление на пакети. Тази функция се определя на външната (по отношение на всеки пакет) база данни намира в директория / VaR / ИЪ / Pacman /. Тя включва две поддиректории - / Var / ИЪ / Pacman / ток / и / Var / ИЪ / Pacman / местни. В първия - в основата на всички пакети, включени в разпределението Arch Linux (или по-скоро, на официалната част от нея). Тя се формира от директории форма PKG-вер-относителен (например, Bash-2.05b-6 - примерите дадени по-долу се отнасят до този пакет), всяка от които има два файла: низходящо - кратко описание на опаковката под формата на

и зависи - в списъка на пакети с която асоциираните зависимости, както и евентуално противоречащи си пакети:

В директория / Var / ИЪ / Pacman / местни /. както подсказва името, съдържа база данни пакет инсталиран на тази машина. Тя се формира най-точно / Var / ПЬ / Pacman / ток /. но в директорията на всяка опаковка - вече три файла: опис. зависи и файлове.

Описание пакет низходящо файл включва, в допълнение към обобщена информация (подобно на описанието на тока), както и изграждане и инсталиране на датата на пакет, име колектор (за официалната част от нея стои генерализирана archlinux), а общият размер на:

Файлът зависи. с изключение на списък с пакети, които зависят от това, както и намалената списъка с пакети, които зависят от него:

И накрая, файлове - това е просто списък на всички компоненти на опаковката, което показва начина, по който те са поставени по време на инсталацията:

Когато е необходимо, там може да намерите и списък на файловете могат да се променят, когато инсталирането на пакета (по-специално това се отнася за довереник на цялата система), което показва първоначалния шах:

Тази информация ще бъде необходима при отстраняване на командния пакет Pacman -R - за възстановяване на конфигурацията на девствен система (благодарение на нея Pacman е в състояние да "чисти" деинсталиране на пакети).

От структурата на основната пакет е лесно да се разбере зависимости контролират принцип Archlinux: когато инсталирате нова програма пакет Pacman първите проверки директорията / реактивна / ИЪ / Pacman / ток /, за да определят своите зависимости, а след това - директорията / реактивна / ИЪ / Pacman / местни / на дали пакетите са инсталирани на които това зависи. Ако всичко е наред - пакетът е инсталиран успешно. Ако не - издава списък с имената на липсващия пакет (в реда, в който трябва да се инсталира) и работи Pacman "и завършва със съобщение за грешка. Всякакви опити за разрешаване на зависимости автоматично нарушение, той не, като се остави на акции на потребителя.

Така че, когато е инсталиран пакета, според който не са изпълнени, потребителят ще получи съответен списък трябва да бъде зададена ръчно всички липсващи компоненти. И с всеки един от тях може да се повтори историята - това е нарушение на зависимости, които трябва да бъдат решени ръчно.

Такава система може да не изглежда много удобно. Въпреки че е много по-добре, отколкото на класически оборота в минута. където в нарушение на зависимост, издадено нещо като недостиг imya_rek.so.1 библиотека - и нека изчислява част от пакета, тя идва инча Същият извод Archlinux Pacman командата изглежда така:

След това липсващи пакети (заедно с желания) може лесно да се инсталира една единствена команда.

Ръце срещу автоматизация - плюсове и минуси

Въпреки това, в сравнение с тези как-да "напреднали" системи за управление на пакетите като ап или Yum. Пакман изглежда много примитивни. Все пак, това е) не (защото тя е не повече от една добавка към ABS) и б) има своите предимства.

За ABS реч пред, но за предимствата на "ръчно" подход Пакман (в CRUX приета за една и съща система, както и на PKG-инструменти от Slackware не е много по-различни от тях) преди склонни системите на типа бих искал да говоря повече, защото на тяхната непълни доказателства ,

Все пак, не забравяйте, че има зависимости на опаковките два вида: задължителен, или трудно, и не е задължително, така да се каже, "меки". Първият - обективна реалност, която определя всички средства за изпълнение: не може да се направи програма, която да работи без НЬс (за статично свързване не се говори тук), не Х-приложение няма да работи без Xlib. не KDE-програма, няма да възникне без Qt и kdelibs.

"Soft" е в съответствие с изпълнението не е необходима, тъй като само позволи на пакета някои допълнителни функции, полезни, безполезни и дори откровено вредни - и идеята за ползите и вредите тук откровено субективно. Така че, повечето колекционери връзки или MC считат предпоставка за тяхната подкрепа yuzabilnosti GPM. Аз също да използвате мишката, като посочващо устройство изглежда ясно вредно в тези приложения. Аз не говоря за факта, че резолюцията на незадължителните зависимости води до системни компоненти претрупване на файлове, които потребителят често няма представа (и не са пожелали).

Така че, в Archlinux потребителя с предупреждение, че той се нуждае от пакет изисква нещо и, че нещо може да се определи дали наложената му според отнасят до броя на "твърд" обектив с минимален опит (и някои представяне на зависимостите) или "мека", което се дължи на субективните възгледи на опаковчиците. И във втория случай - съзнателно направи избор:

  • за по-голяма простота, да се съгласи да го направи оферта (което, обаче, ще доведе до претрупване на системата)
  • да откаже да задоволи зависимости от nodeps опция (в този случай, има известен риск, че пакетът няма да функционира правилно - обаче, този риск не е твърде голяма за "мека" зависимостта)
  • или просто парче от тортата и да събере необходимия пакет от източника ръчно - само тези, с / без, и активиране / деактивиране. което той наистина е необходимо.

Разбира се, ръчен монтаж, също има своите недостатъци. Инсталирани софтуерни пакети в допълнение към системата няма да влязат в базата данни. И съответно, ако в бъдеще ще трябва да инсталирате пакетите, които зависят от това "samosbornika" Pacman чрез системата ", но тя няма да бъде открит миналата.

Все пак, ако вземем предвид Archlinux като основа за изграждане на своя собствена система е ограничен само от основата компоненти и всичко останало е бране на ръка - по този начин е доста приемливо. Ако все още се разчита на нейната смесена употреба - критични компоненти са сглобени на ръка, всички останали - набор от предварително създадени пакети, - на изхода все още остава. Тъй като база данни, използвана Pacman на "ОМ, много проста, никой не спира да го направи информация за" самостоятелно сглобяване "пакета ръчно (въпреки че няма такова средства за автоматизация на този процес е да се инжектира Gentoo).

Въпреки това, всички по-горе зависимост се отнася само за случаите на инсталационните пакети от местните медии. И ако използвате хранилището пакет с проект FTP-сървър или неговите огледала - властта не е. Защото, както беше казано, една проста команда Pacman -sU ще извърши пълен ъпгрейд на системата с резолюция на зависимости

Въпреки това, потребителят има Арката има и друга, по-интересна възможност. И това - използването на ABS (Arch Build System), пакет сграда система, която ще бъде предмет следващите бележки.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!