![System V“pg”命令](https://linux22.com/image/938648/System%20V%E2%80%9Cpg%E2%80%9D%E5%91%BD%E4%BB%A4.png)
我是一个老 System V 人,最后终于开始设置 Linux 机器,当然是使用 Ubuntu。我注意到的第一件事就是缺少“pg”命令。网站告诉我它是“util-linux”包的一部分。我加载 Ubuntu 时选中了“安装所有内容”复选框,它告诉我 util-linux 已安装,但“pg”和其他脚本命令根本不存在。这能修复吗?
答案1
查看软件包变更日志(apt-get changelog util-linux
),你会看到已经pg
被弃用并删除:
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>
但是源代码pg
仍然存在于源包中,因此您可以根据需要手动构建和安装它。您将需要一个合适的构建环境(例如安装包提供的)build-essential
,以及相关的依赖项(如
sudo apt-get build-dep util-linux
首先,确保您已deb-src
为main
存储库启用了该类型。然后,您可以在所选目录中下载并修补源代码(与大多数apt
操作不同,这不需要提升权限):
apt-get source util-linux
更改为下载的目录,然后配置构建以启用pg
:
./configure --enable-pg
如果成功完成,
make pg
./pg README
使用或类似方法从当前目录进行测试。
现在,不用再像往常一样执行“sudo make install”(它将尝试构建全部实用程序),只需将pg
二进制文件复制到适当的位置,例如~/bin
或/usr/local/bin
mkdir -p ~/bin && cp pg ~/bin/
如果您选择~/bin
并且之前没有~/bin
目录,那么它将不会被添加到您的目录中,PATH
直到您启动新的登录 shell 或源~/.profile
:
. ~/.profile
这样您就可以pg
从任何地方执行。
或者,您可以用 构建所有包--enable-pg
,然后用checkinstall
它来安装它来代替 Ubuntu 提供的包 - 但是您将负责保持它更新。