Установка пакетов pkg linux

Работа с модулями.pfs

Модуль монтируется в корень / AUFS. Если подключить в верхний слой AUFS — он перекроет прочие ausf файлы (только ausf, то что Вы изменяли будет всегда сверху ; посмотреть изменения — в /mnt/live/memory/changes ). Можно перед подключением скопировать его в память, что даст:

Плюсы — можно отключить загрузочную флэшку, обращения к винту минимальны — экономим ресурс и батарею, система работеет быстрее

Некоторые модули имеют зависимые модули (без которых работать не будет). При подключении модуля через sfs-get — будет предложено подключить зависимые. Просмотреть зависимости без подключения можно :

Добавляйте модуль в автозагрузку системы (в /modules) только после его тестирования в интерактивном режиме и только со всеми зависимостями

Отключить

Если хотя бы один файл модуля занят (запущен или открыт в другой программе) — он не отключится

Закройте связанные программы, перезагрузите Х. Иногда помогает только reboot

Установить

Модуль будет распакован в корень и перекроет все. Если после этого не сделать сохраненку — после перезагруза все пропадет. По большому счету — это рудименты .pet. Там был только этот вариант.

Практическая польза — сделать во время экспериментов, чтобы файлы модуля гарантированно перекрыли все (aufs и changes)

Смотреть

Модуль монтируется на чтение (mount -o loop ) в каталог. Можно посмотреть что внутри. Ничего более

Читайте также:  Java home linux command

Распаковать (пересобрать)

Автообновление модулей

Стандарты названий модулей

Для правильной работы автообновления, необходимо придерживаться стандарта:

XXX-*.pfs : базовые модули. X- цифры по которым модули сортируются по слоям aufs (т.е. какой модуль перекрывает остальные). При загрузке из /optional и т.п. используйте sort=

chroot2pfs: создание модуля.pfs из репозитория Arch на любом Linux с AUFS

chroot2pfs создает свой корень системы из перечисленных модулей (каталогов) , делает chroot и при выходе сохраняет результат ваших действий

chroot2pfs --mlist /путь/001. /путь/030-qt5. --command bash

Если вы собираете на загруженной системе (т.е. модули 001*.pfs и 030-qt5*.pfs являются слоями AUFS Вашей системы и уже подключены):

chroot2pfs -m "^\(001\|030-qt5\)-.*" --command bash
pacman -Sy && pacman -S нужные_пакеты

mk-dp: создание псевдопакета arch и ubuntu

В ubuntu-debian переносит /var/lib/dpkg/status в /var/lib/dpkg/_status/имя_модуля.stt удалив из него все не про этот модуль. Так удобнее для chroot2pfs (внутри сделать dpkg-fix) и апдейта части модулей (верхние модули не перекроют обновленные индексы обновленных пакетов).

можно установить дистрибутив как FULL (инсталлятором) и работать (удалять) с этими модулями как с пакетами.

Для портированных модулей mk-dp создает псевдо (без зависимостей и т..п.) индексы для apt и pacman. Пример

# mk-dp Создание индексов apt и pacman модуля.pfs. Дает возможность удалить модуль, установленный распаковкой (unsquashfs -dest / модуль.pfs) модуля.pfs в корень FULL дистрибутива его стандартным пакетным менеджером (apt purge или pacman -R) Для apt нужно после распаковки дополнительно использовать dpkg-fix Usage: /usr/local/bin/mk-dp [-1] [-l] [-a] [-p] dir dir : директория с распакованным составным модулем.pfs , т.е. dir/mod1 dir/mod2 . -1 : директория с распакованным одиночным модулем.pfs. Можно не указывать - автоопределится -l : показать устанновленные в систему такие модули. apt - группа portable. pacman - группа mk-dp -a : создать только apt индексы -p : создать только pacman индексы -r : удалить */var/lib/dpkg и */var/lib/pacman

mkmod: создание модуля.pfs из пакетов ubuntu или arch на загруженной системе

Это обертка вокруг chroot2pfs. Использует уже загруженные модули вашего дистрибутива

Читайте также:  Linux команда удаления папки

Источник

Установка пакетов pkg linux

Метод создания chroot-окружения подходит для создания окружения с любым дистрибутивом, использующим репозиторий основанный на .rpm пакетах.

¶ DEB пакеты

Метод создания chroot-окружения подходит для создания окружения с любым дистрибутивом, использующим репозиторий основанный на .deb пакетах.

¶ Установка .apk пакетов

¶ Установка .pkg.tar.zst, .tgz, .tbz, .tbz2, .pkg.gz пакетов

Для установки .tgz, .tbz, .tbz2, .pkg.gz необходимо имеющийся пакет разархивировать с помощью утилиты tar:

#Для архивов сжатых с помощью GZIP (.gz, .gz2 и т.д.): tar -xvzf имя_файла #Для архивов сжатых с помощью BZIP (.bz, .bz2 и т.д.): tar -xvjf имя_файла #Для архивов сжатых с помощью XZ (.tar.xz, .txz): tar -xvJf имя_файла 
  • x — извлечь файлы из архива;
  • v — подробный вывод информации на экран;
  • f — Обязательная опция. Если не указать, Tar будет пытаться использовать магнитную ленту вместо файла;
  • z — обработать архив сжатый gzip’ом;
  • j — обработать архив сжатый bzip’ом.

После выполнения команды, будет создан каталог с именем, идентичным названию пакета .

Переход в созданный каталог:

Далее, все зависит от того, как была собрана программа: в виде исполняемого файла , или в исходном коде .

Перед установкой прочитать инструкцию (README), которая присутствует в каждом архиве.

Если программа собрана в виде исполняемого файла , в папке будет находиться файл, с расширением .sh или же с названием необходимой программы (например, firefox). Его достаточно просто запустить на исполнение:

Если же программа представлена в исходном коде , выполнить следующие команды:

./configure # Поиск необходимых для компиляции библиотек и заголовочных файлов make # компиляция программы sudo make install # установка программы 

После установки выполнить очистку каталога от всех файлов полученных в результате компиляции:

¶ Пример установки

Для примера приведена установка GParted.

Читайте также:  Linux подмонтировать диск usb

Клонируем актуальную версию GParted с GitHub:

git clone https://github.com/GNOME/gparted.git 

В файле README указаны необходимые зависимости для устанавливаемой программы, если они отсутствуют в системе, то их необходимо установить.

Далее следует запустить формирование установочного файла:

Затем необходимо запустить:

Программа GParted установлена.

Источник

Оцените статью
Adblock
detector