Install/Introducing Portage/ru

From Funtoo
< Install
Revision as of 23:31, April 13, 2019 by Snipers88 (talk | contribs) (Created page with "Это - "официальный" метод обновления Funtoo Linux - системы. Первым делом, мы сначала обновим наше дере...")
Jump to navigation Jump to search
Other languages:
English • ‎español • ‎português do Brasil • ‎русский • ‎中文(中国大陆)‎

Руководство по установке: Введение в Portage

Install Guide, Chapter 12 < Prev Next >

Менеджер пакетов Funto Linux под названием Portage имеет команду под названием emerge которая используется для сборки и установки пакетов из исходных текстов. Также эта команда обеспечивает контроль за всеми зависимостями этих пакетов. Запустить emerge можно следующим образом:

(chroot) # emerge packagename

Когда Вы устанавливаете пакет указав его имя в командной строке, Portage записывает его имя в файл /var/lib/portage/world. Он предполагает, что если Вы решили установить пакет по его имени, Вы вероятнее всего рассматриваете его как часть вашей системы и в будущем его нужно будет обновлять. Это - очень удобная вещь, поскольку если все такие пакеты добавлены в группу world, всю систему можно обновить лишь набрав следующую команду:

(chroot) # ego sync
(chroot) # emerge -auDN @world

Это - "официальный" метод обновления Funtoo Linux - системы. Первым делом, мы сначала обновим наше дерево Portage-ей с помощью git чтобы получить самые последние версии ebuild-ов (скриптов сборки), после чего запустим команду emerge для обновления набора пакетов world. У emerge есть опции командной строки чтобы:

  • a - show us what will be emerged, and ask us if we want to proceed
  • u - update the packages we specify -- don't emerge them again if they are already emerged.
  • D - Consider the entire dependency tree of packages when looking for updates. In other words, do a deep update.
  • N - Update any packages that have changed (new) USE settings.

You should also consider passing --with-bdeps=y when emerging @world, at least once in a while. This will update build dependencies as well.

Of course, sometimes we want to install a package but not add it to the world file. This is often done because you only want the package installed temporarily or because you know the package in question is a dependency of another package. If this behavior is desired, you call emerge like this:

(chroot) # emerge -1 packagename

Advanced users may be interested in the Emerge wiki page.

Updating World

Certain packages in the Funtoo stage3 tarball are compiled with the bindist USE flag enabled by default. (The bindist flag controls enabling or disabling of options for proprietary and/or patented parts of code which is not allowed to be distributed in images due to licensing issues). You may notice a dependency resolution problem with bindist USE flags during updating packages after initial system setup. To avoid potential problems, update the system before first boot or any other package installation as shown below:

(chroot) # ego sync
(chroot) # emerge -auDN @world
   Important

Make sure you read any post emerge messages and follow their instructions. This is especially true if you have upgraded perl or python.

   Important

If you choose different file systems then the ones in this guide, like JFS, XFS, ZFS or Btrfs, make sure the kernel has the tools to check them. For JFS the package is jsfutils, similar packages exist for all file systems.