Команда System V "pg"
Я старый парень с System V, и я, наконец, добрался до установки Linux, используя, конечно же, Ubuntu. Одна из первых вещей, которые я заметил, отсутствовала — это команда «pg». Интернет сообщает мне, что он доступен как часть пакета «util-linux». Ubuntu, который я загрузил, установив флажки «установить все», сообщает мне, что util-linux установлен, но «pg» и другие команды сценариев просто отсутствуют. Можно ли это исправить?
1 ответ
Глядя на журнал изменений пакета (
apt-get changelog util-linux
) вы увидите, что это устарело и удалено:
util-linux (2.29.2-2) unstable; urgency=medium "The big post-release cleanup." [ Andreas Henriksson ] * Add DEP12 upstream metadata (Closes: #852731) * Revert "Add configure flag to make libmount skip /etc/mtab" * Drop explicit --disable-silent-rules configure flag * Stop shipping the deprecated 'pg' utility * Revert "Explicitly (re)enable deprecated pg utility" * Stop shipping deprecated 'tunelp' utility * Stop shipping the deprecated 'line' utility * Drop explicitly passing CC for cross-building * Use configure flags to disable utils shipped by bsdmainutils * Revert "Attempt to work around debootstrap problems for hwclock.sh" * Drop no longer needed lintian overrides for dropped workaround * Drop obsolete fdisk reclaim on PPC * Revert "Rename libuuid user to uuidd in libuuidd1 postinst as well" * Revert "libuuid1: add passwd dependency for user migration" * Drop obsolete uuid-runtime user/group migration code * Remove 'pg' from being a pager alternative * Stop shipping deprecated tailf utility * Mention tailf removal in util-linux.NEWS</code></pre>
Однако исходный код по-прежнему присутствует в исходном пакете, поэтому при желании вы можете собрать и установить его вручную. Вам понадобится подходящая среда сборки, такая как предоставленная при установке
build-essential
package, а также соответствующие зависимости, предоставленные
sudo apt-get build-dep util-linux
Во-первых, убедитесь, что у вас есть
deb-src
тип включен для вашего
main
репозиторий. Затем вы можете загрузить исходный код и исправить его в каталоге по вашему выбору (в отличие от большинства
apt
операции, для этого не нужны повышенные привилегии):
apt-get source util-linux
Перейдите в загруженный каталог, а затем настройте сборку, чтобы включить:
./configure --enable-pg
Если он завершится успешно,
make pg
Проверьте его из текущего каталога, используя
./pg README
или т.п.
Теперь вместо обычного «sudo make install» (который попытается собрать все утилиты) просто скопируйте двоичный файл в подходящее место, например или
/usr/local/bin
mkdir -p ~/bin && cp pg ~/bin/
Если вы выбрали и ранее не имели
~/bin
каталог, то он не будет добавлен в ваш
PATH
пока вы не запустите новую оболочку входа или источник
~/.profile
:
. ~/.profile
так что вы можете выполнить
pg
откуда угодно.
В качестве альтернативы вы можете собрать ВЕСЬ пакет с помощью
--enable-pg
, затем используйте
checkinstall
установить его вместо предоставленного пакета Ubuntu, однако в этом случае вы будете нести ответственность за его обновление.