Welcome to the Slackware Documentation Project

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
Последняя версия Следующая версия справа и слева
ru:slackbook:package_management [2013/12/01 12:09 (UTC)]
bormant создано
ru:slackbook:package_management [2013/12/01 16:00 (UTC)]
bormant [Установка, удаление и обновление пакетов]
Строка 1: Строка 1:
 ====== Управление пакетами ====== ====== Управление пакетами ======
- 
-<note important>​WIP \\ Work in progress. \\ В процессе перевода.</​note>​ 
  
 Управление пакетами является неотъемлемой частью любого дистрибутива Linux. ​ Управление пакетами является неотъемлемой частью любого дистрибутива Linux. ​
Строка 30: Строка 28:
 ===== Установка,​ удаление и обновление пакетов ===== ===== Установка,​ удаление и обновление пакетов =====
  
- +Хотя ​**//​pkgtool//​** ​лидирует по удобству, **//​installpkg//​**(8) ​способен ​ 
-While **//​pkgtool//​** ​scores points for convenience, +справиться с нештатными задачамитакими как быстрая установка пакета,  
-**//​installpkg//​**(8) ​is much more capable of +установка целого набора пакетов или создание сценария установки.  
-handling odd taskssuch as quickly installing a single package,  +**//​installpkg//​** ​принимает список пакетов для установки и устанавливает ​ 
-installing an entire disk set of packages, or scripting an install+их без дополнительных вопросовКак и все инструменты управления пакетами ​ 
-**//​installpkg//​** ​takes a list of packages to +Slackware, ​он полагает,​ что вы знаете,​ что делаете,​ и не пытается быть умнее ​ 
-install, and simply installs them without asking any questionsLike +васВ простейшем варианте ​**//​installpkg//​** ​просто принимает список пакетов ​ 
-all Slackware ​package management toolsit assumes that you know what +для установки и делает в точности точто от него ожидалось.
-you're doing and doesn'​t pretend to be smarter than youIn its +
-simplest form, **//​installpkg//​** ​simply takes a +
-list of packages to installand does exactly what you would expect. +
  
 <​code>​ <​code>​
Строка 58: Строка 52:
 # The Blackbox home page is http://​blackboxwm.sourceforge.net # The Blackbox home page is http://​blackboxwm.sourceforge.net
 # #
-Package blackbox-0.70.1-i486-2.txz installed.</​code>​ +Package blackbox-0.70.1-i486-2.txz installed. 
- +</​code>​
- +
-You can of course install multiple packages at a time, and in fact use +
-shell wild cards.The following installs all of the //"​N"//​ series +
-packages from a mounted CD-ROM:+
  
 +Конечно,​ можно устанавливать несколько пакетов разом при помощи символов ​
 +подстановки оболочки. Следующая команда установит со смонтированного CD-ROM ​
 +серию //«N»// целиком: ​
  
 <​code>​ <​code>​
-darkstar:~# installpkg /​mnt/​cdrom/​slackware/​n/​*.txz</​code>​ +darkstar:~# installpkg /​mnt/​cdrom/​slackware/​n/​*.t?z 
- +</​code>​
- +
-At any given time, you can see what packages are installed on your +
-system by listing the contents of /​var/​log/​packages,​ +
-which lists not only every application on your system but also the +
-version number. Should you want to know what individual files were +
-installed as a part of that package, **//​cat//​** +
-the contents of the package:+
  
 +В любое время можно посмотреть список установленных пакетов,​ получив список ​
 +файлов каталога /​var/​log/​packages,​ который содержит не только имена каждого ​
 +приложения в системе,​ но и их версии. Чтобы узнать,​ какие файлы были ​
 +установлены из этого пакета,​ посмотрите содержимое,​ например,​ при помощи ​
 +**//​cat//​**:​
  
 <​code>​ <​code>​
- +darkstar:​~#​cat /​var/​log/​packages/​foo-1.0-x86_64-1
-darkstar:​~#​cat /​var/​log/​packages/​foo-1.0-x86_64.txz+
 </​code>​ </​code>​
  
 +Команда покажет размеры упакованного и распакованного пакета,​ его описание, ​
 +имя и расположение каждого файла в пакете.
  
-This will return everything from the size of the package+Удаление пакета даже проще установки. Команда удалениякак и ожидалось,  
-description of what it does, and the name and location of every file +**//​removepkg//​**(8). ​Просто укажите ейкакие пакеты удалить,​ и  
-installed as a part of the package. +**//​removepkg//​** ​проверит содержимое базы данных и удалит все файлы и  
- +каталоги этого пакета с одной оговоркойЕсли этот файл входит в несколько ​ 
- +установленных пакетовон будет пропущен,​ и, если в каталоге есть новые ​ 
-Removing a package is every bit as easy as installing one. As you +файлыкаталог будет оставлен на местеПоэтому удаление пакетов дольше,  
-might expectthe command to do this is +чем их установка.
-**//​removepkg//​**(8). ​Simply tell it which +
-packages to removeand **//​removepkg//​** ​will +
-check the contents of the package database and remove all the files +
-and directories for that package with one caveatIf that file is +
-included in multiple installed packagesit will be skipped and if a +
-directory has new files in itthe directory will be left in +
-placeBecause of thisremoving packages takes a good while longer +
-than installing them. +
  
 <​code>​ <​code>​
Строка 105: Строка 88:
 </​code>​ </​code>​
  
- +Наконецобновление пакета ​(как вы уженаверное,​ догадались) выполняет ​ 
-Finallyupgrading is just as easy with (you guessed it)+**//​upgradepkg//​**(8), ​который сперва устанавливает новый пакет, затем ​ 
-**//​upgradepkg//​**(8) ​which first installs a new +удаляет файлы ​ и каталоги,​ оставшиеся от прежнего пакетаНужно запомнить ​ 
-packagethen removes whatever files and directories are left-over from +одну важную вещь -- **//​upgradepkg//​** ​не проверяет,​ что номер версии ​ 
-the old packageOne important thing to remember is that +установленного пакета выше, чем у //«нового»//, поэтому подходит и для ​ 
-**//​upgradepkg//​** ​doesn'​t check to see if the +установки предыдущих версий.
-previously installed package has a higher version number than the //"​new"​// +
-package, so it can also be used to downgrade to older versions. +
  
 <​code>​ <​code>​
Строка 134: Строка 114:
 ... ...
 Package blackbox-0.65.0-x86_64-4 upgraded with new package Package blackbox-0.65.0-x86_64-4 upgraded with new package
-./​blackbox-0.70.1-i486-2.txz.</​code>​+./​blackbox-0.70.1-i486-2.txz. 
 +</​code>​ 
 + 
 +Всех эти инструменты принимают полезные параметры. Например,​ //<​nowiki>​--</​nowiki>​root//​  
 +позволяет **//​installpkg//​** устанавливать пакеты в произвольный каталог.  
 +Параметр //<​nowiki>​--</​nowiki>​dry-run//​ указывает **//​upgradepkg//​** вывести,​ что им будет  
 +предпринято,​ без фактического внесения изменений в систему. За подробной  
 +информацией (как всегда) обратитесь к страницам руководств man.
  
  
-All of these tools have useful arguments. For example, the +===== Форматы сжатия пакетов ​=====
-//--root// to **//​installpkg//​** will install +
-packages into an arbitrary directory. The //​--dry-run//​ argument +
-will instruct **//​upgradepkg//​** to simply tell you +
-what it would attempt without actually making any changes to the +
-system. For complete details, you should (as always) refer to the man +
-pages. +
-===== Package Compression Formats ​=====+
  
-In the past, all Slackware ​packages were compressed with the +В прошлом все пакеты ​Slackware ​были сжаты утилитой сжатия ​**//​gzip//​**(1),​  
-**//​gzip//​**(1) ​compression utilitywhich was a +что было хорошим компромиссом между скоростью сжатия и размеромПозже были  
-good compromise between compression speed and size.Recentlynew +разработаны новые схемы сжатиякоторые получили поддержку и в инструментах ​ 
-compression schemes have been added and the package management tools +управления пакетамиСейчас официальные пакеты ​Slackware ​сжаты утилитой ​ 
-have been upgraded to handle theseToday, official ​Slackware +**//​xz//​** ​и имеют расширение ​.txz. Прежние ​(и многие сторонние пакетывсё  
-packages are compressed with the **//xz//** +ещё используют расширение ​.tgz. 
-utility and end with .txz extensions.Older packages ​(and many +
-third party packagesstill use the .tgz extension.+
  
 +Стоит подчеркнуть,​ что расширения .tgz и .txz (если короче,​ файлы .t?z) 
 +общеупотребительные неуникальные расширения для для сжатых файлов .tar. 
 +В этом много преимуществ,​ их легко собрать на почти любой системе UNIX 
 +(многие другие форматы пакетов требуют специальных инструментов) и также ​
 +просто разобрать. ​
  
-It's worth emphasizing that .tgz and .txz (ormore succinctly, .t?z +Тем не менееважно пониматьчто хотя все пакеты Slackware **являются**  
-files) are very standardnon-unique extensions for compressed ​.tar +файлами ​.t?z, но обратное неверно,​ не все ​.t?z файлы являются пакетами ​ 
-filesThis has many advantages; they'​re easy to build on nearly any +Slackware**//​installpkg//​** не умеет волшебным образом устанавливать ​ 
-UNIX system (many other package formats require special toolchains), +произвольные файлы .t?zтолько пакеты Slackware.
-and they'​re just as simple to de-construct.+
  
  
-However, it is also important to realize that just because all Slackware 
-packages **are** .t?z files, not all .t?z files are 
-Slackware packages. **//​Installpkg//​** won't 
-magically install just any .t?z file, only Slackware packages. 
 ==== slackpkg ==== ==== slackpkg ====
  
-**//Slackpkg//** is an automated tool for +**//slackpkg//** -- это автоматизированный инструмент для управления пакетами ​ 
-management of Slackware ​Linux PackagesIt originally appeared in +Slackware. ​Он впервые был включён в /​extra ​в Slackware-12.1, ​а начиная с  
-/​extra ​for the release of slackware-12.1, ​and since the release +выпуска Slackware-12.2 поставляется в наборе ​/ap базовой установки
-of slackware-12.2 it has been included in the apseries of a +
-base installation.+
  
 +**//​slackpkg//​** можно использовать для загрузки пакета из Интернет и 
 +установки также, как используете **//​installpkg//​** для установки пакетов ​
 +Slackware из каталога /extra установочного диска. Это особенно полезно для ​
 +обновлений безопасности или важных обновлений приложений,​ опубликованных на 
 +серверах Slackware, некоторые из которых вы можете захотеть использовать на 
 +своей системе.
  
-Just as you are able to use **//installpkg//** to +Без ​**//slackpkg//** процесс мог быть таким: 
-install ​Slackware ​packages from the /extra directory included on +  - Обнаружить в журнале изменений ​Slackware ​выпуск обновления. 
-the install media, you can use **//slackpkg//** +  - Посмотреть на используемом зеркале Slackware ссылку для загрузки пакета. 
-to pull packages from the Internet and install them. This is +  - Загрузить пакет с зеркала Slackware на жёсткий диск. 
-particularly useful for security updates or significant application +  - Применить ​**//installpkg//** или **//​pkgtool//​** для установки загруженного пакета.
-upgrades that are posted to the Slackware servers, some of which you +
-may want to start using on your own system.+
  
 +При помощи **//​slackpkg//​** он сокращается до:
 +  - Обнаружить в журнале изменений Slackware выпуск обновления для **//​foo//​**.
 +  - **slackpkg** //install// foo
  
-Without **//​slackpkg//​**the process would be: +Очевидночто это упрощает довольно распространённую задачу.
-  - Notice in the Slackware changelog that an update has been released. +
-  - Look on your local Slackware mirror to find a download link of the package. +
-  - Download the package from a Slackware mirror to your hard drive. +
-  - Use either **//​installpkg//​** or **//​pkgtool//​** to install the downloaded package. +
- +
-With **//​slackpkg//​**,​ this is reduced to: +
- +
-  - Notice in the Slackware changelog that an update for **//foo//** has been released. +
-  - **slackpkg** //install// foo+
  
-Clearlythis streamlines a fairly common task.+Для использования **//​slackpkg//​** настройте систему на использование зеркала  
 +Slackwareотредактировав от root ''/​etc/​slackpkg/​mirrors''​. Найдите зеркало,​  
 +соответствующее версии и архитектуре Slackware, и раскомментируйте его. Этот  
 +список зеркал предлагает доступ по HTTP и FTP, но раскомментированным должно  
 +быть **только одно** зеркало.
  
 +После выбора зеркала обновите список файлов сервера командой ​
 +''​slackpkg update''​. Это нужно проделывать при выпуске новых пакетов ​
 +(рекомендуется регулярная проверка журнала изменений Slackware, дополнительную ​
 +информацию см. в [[slackbook:​ru:​tracking_updates|главе 18 «Отслеживание ​
 +обновлений»]]).
  
-To use **//slackpkg//**configure your system +Для поиска пакета используйте ''​slackpkg ​search foo''​для установки --  
-with a Slackware mirror by editing +''​slackpkg ​install foo''​.
-''​/etc/slackpkg/mirrors'' ​as root. Find +
-the mirror that is associated with your Slackware version and +
-architecture,​ and uncomment it. This list of mirrors offers ftp and +
-http access, but you must uncomment **only one** +
-mirror.+
  
-Once a mirror has been selectedupdate the list of remote files by +После установки пакета при помощи **//​slackpkg//​**его можно удалить или ​ 
-issuing the initial command ''​slackpkg update''​. This +обновить при помощи **//​pkgtool//​** или других команд управления пакетами ​ 
-should be done any time you notice that a new package has been +как описано в разделе «[[#​установка_удаление_и_обновление_пакетов|Установка 
-posted (regularly checking in with the Slackware changelog is +удаление и обновление пакетов]]».
-recommended;​ see [[slackbook:​tracking_updates|Chapter 18Keeping Track of Updates]] for more information).+
  
-To search for a package, use ''​slackpkg ​search foo''​+Дополнительную информацию смотрите на страницах руководств **//man//**  
-and to install use ''​slackpkg ​install foo''​.+slackpkg(8) и slackpkg.conf(5)а также на вебсайте [[ 
 +http://​www.slackpkg.org/​|http://​www.slackpkg.org/]].
  
-Once a package has been installed with 
-**//​slackpkg//​**,​ it can be removed or upgraded 
-using **//​pkgtool//​** and the other package 
-management commands as detailed in[[#​installing_removing_and_upgrading_packages|Installing,​ Removing, and Upgrading Packages]]. 
  
-For more information see the **//man//** pages 
-for slackpkg(8) and slackpkg.conf(5),​ and see its website at [[ 
-http://​www.slackpkg.org/​|http://​www.slackpkg.org/​]] 
 ==== rpm2tgz ==== ==== rpm2tgz ====
  
-One of the most ubiquitous package formats for Linux software is +Одним из самых распространённых форматов пакетов программ для ​Linux является ​ 
-RPM; it's not uncommon to find a developer offering their +RPM; нередко разработчики предлагают свои приложения для загрузки только как ​ 
-application for download as either source code or an RPM file, and +исходный код или файл ​RPM. В этом случае у вас есть три варианта
-no moreIn this case, you would have three options:+
  
-  - Build your own Slackware ​package+  - Собрать собственный пакет ​Slackware. 
-  - Compile and install directly from source code+  - Скомпилировать и установить прямо из исходного кода
-  - Convert and install from RPM.+  - Сконвертировать установку из RPM.
  
-Building from source code or creating your own Slackware ​package is +Сборка из исходного кода или создание собственного пакета ​Slackware ​обычно ​ 
-usually not as complex as you might think but installing directly from +не столь сложно,​ как можно подумать,​ а установка прямо из исходного кода не  
-source code is generally discouraged because there is no easy way to +рекомендуется из-за отсутствия простого способа отслеживания того, что было ​ 
-track what has been installed on your system after issuing the +установлено в систему после выполнения команды ​''​make install''​. ​Создание  
-''​make install'' ​commandBuilding your own Slackware +пакетов ​Slackware ​выходит за рамки настоящей главыОстаётся использование ​ 
-packages is outside the scope of this chapterSo this leaves us with +полезной утилиты ​**//​rpm2tgz//​**.
-the helpful tool **//​rpm2tgz//​**+
- +
-**//​rpm2tgz//​** converts RPM packages into a +
-Slackware package that can then be installed via +
-**//​pkgtool//​** or +
-**//​installpkg//​**. This circumvents the need to +
-create your own Slackware package but grants you the benefit of +
-being able to remove, update, and track what you've installed.+
  
 +**//​rpm2tgz//​** преобразует пакет RPM в пакет Slackware, который затем может ​
 +быть установлен при помощи **//​pkgtool//​** или **//​installpkg//​**. Это, с 
 +одной стороны,​ избавляет от сборки собственного пакета Slackware, а с другой ​
 +-- предоставляет возможность удалять,​ обновлять и отслеживать установленное.
  
 <note warning> <note warning>
  
-While a Slackware ​package is just a shell script and source code+Пакет ​Slackware ​является архивом бинарных файлов с установочным сценарием,  
-an RPM package can by comparison be a maze of dependency listings +пакет ​RPM помимо этого содержит списки зависимостей и специальные сценарии.  
-and special instructionsTherefore, +Поэтому ​**//​rpm2tgz//​** ​срабатывает не всегдаособенно на очень сложных ​ 
-**//​rpm2tgz//​** ​will not always work+приложенияха также никогда не обрабатывает зависимости волшебным образом
-especially on very complex applicationsand it will never +
-magically resolve dependencies.+
  
 </​note>​ </​note>​
  
-To try **//​rpm2tgz//​**, ​download an RPM file from +Чтобы попробовать ​**//​rpm2tgz//​**, ​загрузите из доверенного источника файл  
-a trusted source and convert it: +RPM и сконвертируйте его:
  
 <​code>​ <​code>​
- 
 rpm2tgz foo-x.x.xx.rpm rpm2tgz foo-x.x.xx.rpm
 </​code>​ </​code>​
  
 +Результатом будет файл .tgz, поэтому оригинальный RPM после преобразования ​
 +может быть удалён. Для установки только что полученного пакета Slackware ​
 +используйте **//​installpkg//​**,​ равно как для установки всех других ​
 +пакетов,​ необходимых приложению для работы.
 +
 +
 +====== Навигация по главам ======
  
-The result is a .tgz file, so after the conversion is finished, the +**Предыдущая глава: [[ru:​slackbook:​basic_networking_utilities|Основные сетевые утилиты]]**
-original RPM can safely be discarded. Use +
-**//​installpkg//​** to install the Slackware +
-package you've just created, provided that you'​ve +
-installed all dependency code for the application to actually function. +
-====== Chapter Navigation ======+
  
-**Previous Chapter: [[slackbook:​basic_networking_utilities|Basic Networking Utilities]]**+**Следующая глава: [[ru:slackbook:tracking_updates|Отслеживание обновлений]]**
  
-**Next Chapter: [[slackbook:tracking_updates|Keeping Track of Updates]]**+====== Источники ====== 
 +  ​Источник: [[http://​www.slackbook.org/​beta]] \\ 
 +  ​Авторы:​ Alan Hicks, Chris Lumens, David Cantrell, Logan Johnson 
 +  ​Перевод:​ [[wiki:​user:​bormant | Serg Bormant]]
  
-====== Sources ====== +{{tag>​slackbook ​package_management pkgtool slackpkg rpm2tgz}}
-<!-- If you copy information from another source, then specify that source --> +
-  * Original source: [[http://​www.slackbook.org/beta]] \\ +
-<!-- Authors are allowed to give credit to themselves! --> +
-  * Originally written by Alan Hicks, Chris Lumens, David Cantrell, Logan Johnson +
-<!-- * Contrbutions by [[wiki:​user:​yyy | User Y]] -->+
  
-<!-- Please do not modify anything below, except adding new tags.--> 
-<!-- You must also remove the tag-word "​template"​ below. Otherwise your page will not show up in the Table of Contents --> 
-{{tag>​slackbook package_management pkgtool slackpkg rpm2tgz translator_bormant}} 

На других языках
QR Code
QR Code ru:slackbook:package_management (generated for current page)