让我们弄清楚所有 bin 和 sbin 文件夹(来自文件系统层次结构标准):
/bin
用于系统级二进制文件/sbin
用于其他系统级二进制文件,主要用于引导加载程序和系统管理员/usr/bin
用于非必要的二进制文件/usr/sbin
- 这是混乱开始的地方 - 不是系统管理员必不可少的工具?这是什么意思?为了实验?/usr/local/bin
- 没有关于这个文件夹的消息/usr/local/sbin
- 本地安装的系统管理程序。再次?怎么样/usr/sbin
?所以问题是:为什么有这么多目录,/usr/sbin
,/usr/local/sbin
和的含义是/usr/local/bin
什么?
许多程序通过档案分发,我们必须从源代码构建它们。通常他们有makefile,所以很容易。此过程涉及在 usr/local/lib、usr/local/bin... usr/local/whatever 中创建文件,而不为给定程序创建特定文件夹。
为什么会这样?
我认为这是不对的,因为如果我们需要删除程序,如果程序的创建者没有照顾它,我们必须手动删除它的每个文件。
Red*_*ick 24
这应该包含在文件系统层次结构标准 ( 2.3 PDF ) 中
/bin/ 需要在单用户模式下可用的基本命令二进制文件; 对于所有用户,例如 cat、ls、cp /sbin/ 基本系统二进制文件,例如 init、ip、mount。 /usr/bin/ 非必要的命令二进制文件(单用户模式下不需要); 对于所有用户 /usr/sbin/ 非必要的系统二进制文件,例如各种网络服务的守护进程。 /usr/local/ 本地数据的三级层次结构,特定于该主机。 通常还有更多子目录,例如 bin/、lib/、share/
我尽可能使用包管理器(例如 yum 或 apt-get)。这对于大量应用程序是可能的,在少数情况下,您可能需要添加存储库。我的第二个选择是较低级别的包,例如 RPM,从源代码编译将是我最后的选择(但有些人更喜欢这个)
一些包管理器可以从 RPM 安装(例如yum install oddity.rpm
)
如果您是从源代码编译,那么创建自己的包可能不是一个很大的步骤,以便系统安装程序知道您做了什么。
然后你的问题减少到例如 yum remove packagename
另一种方法是保留有关所有系统管理员活动的良好文档(无论如何我将日记保存在文本文件中)