我想在我的机器上卸载 tmux。我的 tmux 版本是:
tmux next-3.4
并which tmux
给我:
/usr/local/bin/tmux
我尝试使用 卸载它sudo yum remove tmux
,我得到:
Updating Subscription Management repositories.
No match for argument: tmux
No packages marked for removal.
Dependencies resolved.
Nothing to do.
Complete!
我的机器信息如下:
NAME="Red Hat Enterprise Linux"
VERSION="8.6 (Ootpa)"
ID="rhel"
ID_LIKE="fedora"
VERSION_ID="8.6"
PLATFORM_ID="platform:el8"
PRETTY_NAME="Red Hat Enterprise Linux 8.6 (Ootpa)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:redhat:enterprise_linux:8::baseos"
HOME_URL="https://www.redhat.com/"
DOCUMENTATION_URL="https://access.redhat.com/documentation/red_hat_enterprise_linux/8/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Red Hat Enterprise Linux 8"
REDHAT_BUGZILLA_PRODUCT_VERSION=8.6
REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux"
REDHAT_SUPPORT_PRODUCT_VERSION="8.6"
Red Hat Enterprise Linux release 8.6 (Ootpa)
Red Hat Enterprise Linux release 8.6 (Ootpa)
答案1
您没有安装 tmux 软件包,您自己编译并安装了 tmux - 因此软件包管理工具(例如yum
)对您自行安装的 tmux 版本一无所知。
简而言之:您手动安装了它,您必须手动卸载它。
一些可能使这变得更容易的可能性:
有些程序的Makefile 中同时带有 和
install
和目标。uninstall
我不知道tmux
这是否有效,但值得检查。运行make uninstall
或检查 tmux 的 Makefile 以查看它是否具有该目标。请注意,uninstall
makefile 目标并不总是可靠,并且通常不会在任何接近 asbuild
或install
目标的地方进行测试。买者自负。 YMMV。祝你好运!运行
make -n install
并记下将安装的所有文件。然后手动删除它们。提示:将 的输出重定向到文件会有所帮助make -n
,特别是在有大量输出的情况下。顺便说一句,如果不明显,
make
的-n
选择是试运行 - 来自man make
:-n
,--just-print
,--dry-run
,--recon
打印将要执行的命令,但不执行它们(某些情况除外)。
对未来的建议:
要么坚持使用打包软件,要么使用类似的程序GNU 斯托或者检查安装编译和安装软件时。它们提供了软件包的一些(但不是全部)有用功能,并使升级和/或卸载自编译软件变得更加容易。
请注意,99% 以上的情况下,自己编译软件几乎没有任何好处。 “它更闪亮、更新”和“它有更大的版本号”几乎永远都不是足够好的理由。特别是如果您不知道如何卸载自编译的程序,或者打包软件和自编译软件之间的区别。
如果有一个特定的新功能是您绝对必须拥有的,或者是一个影响您的错误,并且您知道它已在最新的上游版本中修复,并且您不能等待几天或几周才能更新软件包,那么它可能值得麻烦……但即使这样,通常也不是,您只是用一个问题(错误或缺乏功能)来换取另一个问题(未打包的软件)。等待几乎总是更好。
或者,不只是下载源代码并运行make install
,而是充分了解发行版的打包系统来构建您自己的最新版本的包。通常这可以像下载包裹源文件并对其应用上游补丁,然后重新构建软件包,或将软件包更改(例如 debian/ubuntu/etc 上的 debian/ 目录,或基于 RPM 的发行版上的规范文件等)移植到最新的上游源。