Команда System V "pg"

Я старый парень с System V, и я наконец-то добрался до установки Linux, используя Ubuntu, конечно. Одна из первых вещей, которую я заметил, это отсутствие команды "pg". В Интернете мне сказали, что она доступна как часть пакета "util-linux". Ubuntu, которую я загрузил, поставив галочки напротив "установить все", говорит мне, что util-linux установлен, но "pg" и других команд сценариев там просто нет. Можно ли это исправить?

0
задан 22 June 2021 в 04:17

1 ответ

Просматривая журнал изменений пакета ( apt-get changelog util-linux ), вы увидите, что pg устарел и удален:

 util-linux (2.29.2 -2) нестабильный; urgency = medium 
 
 «Большая уборка после релиза». 
 
 [Андреас Хенрикссон] 
 * Добавить метаданные восходящего потока DEP12 (закрытие: # 852731) 
 * Вернуть "Добавить флаг конфигурации, чтобы libmount пропустил / etc / mtab" 
 * Убрать явный флаг конфигурации --disable-silent-rules 
 * Прекратить доставку устаревшего ' pg 'utility 
 * Вернуть "Явно (повторно) включить устаревшую утилиту pg" 
 * Прекратить доставку устаревшей утилиты' tunelp '
 * Прекратить доставку устаревшей утилиты' line '{{1 }} * Отбросьте явную передачу CC для кросс-компоновки 
 * Используйте флаги конфигурации для отключения утилит, поставляемых bsdmainutils 
 * Отмените «Попытка обойти проблемы debootstrap для hwclock.sh» 
 * Отбрасывание больше не требует переопределения lintian для обходного пути 
 * Отбросить устаревшее восстановление fdisk на PPC 
 * Отменить «Переименовать пользователя libuuid в uuidd также в libuuidd1 postinst» 
 * Отменить «libuuid1» : добавить зависимость passwd для миграции пользователей "
 * Удалить устаревший код миграции пользователя / группы uuid-runtime 
 * Remov e 'pg' больше не является альтернативой пейджеру 
 * Прекратить выпуск устаревшей утилиты tailf 
 * Упомяните об удалении tailf в util-linux.NEWS  

Однако исходный код для pg все еще присутствует в исходном пакете, поэтому вы можете собрать и установить его вручную, если хотите.Вам понадобится подходящая среда сборки, такая как предоставленная путем установки пакета build-essential , а также соответствующие зависимости, как указано в

sudo apt-get build-dep util-linux

Во-первых, убедитесь, что у вас тип deb-src включен для вашего основного репозитория. Затем вы можете загрузить и исправить исходный код в выбранном вами каталоге (в отличие от большинства операций apt , для этого не требуются повышенные привилегии):

apt-get source util-linux

Перейдите в загруженный каталог, а затем настройте сборку на enable pg :

./configure --enable-pg

Если он завершится успешно,

make pg

Протестируйте его из текущего каталога, используя ./ pg README или подобное.

Теперь вместо обычного «sudo make install» (который попытается собрать все утилиты) просто скопируйте двоичный файл pg в подходящее место, например ~ / bin или / usr / local / bin

mkdir -p ~/bin && cp pg ~/bin/

Если вы выберете ~ / bin и ранее не имели каталога ~ / bin , то он выиграл не будет добавлен к вашему ПУТЬ , пока вы не запустите новую оболочку входа или не создадите ~ / .profile :

. ~/.profile

, чтобы вы могли выполнить pg из где угодно.

В качестве альтернативы вы можете собрать ВЕСЬ пакет с помощью - enable-pg , а затем использовать checkinstall , чтобы установить его вместо пакета, предоставленного Ubuntu - однако тогда вы будете отвечает за его обновление.

1
ответ дан 28 July 2021 в 11:26

Другие вопросы по тегам:

Похожие вопросы: