/home 目录什么时候出现的?

/home 目录什么时候出现的?

最初在 Unix 中/usr用于用户(主)目录。因此,如果我有一个名为 的用户alex,我的主目录将是/usr/alex。 (有趣的是,计划9,Unix 的后继者,仍然在 中拥有用户目录/usr。)

当然,现在我们将主目录存储在/home. (至少在 GNU/Linux 上。我不知道其他 Unices,但 OS X 不算。)这在什么时候成为标准做法?它以什么 Unix 风格出现?其他 Unices 的采用需要多长时间?已经/home被大家采纳了吗?

我在这里做了一些搜索,但一无所获。

答案1

这一变化是 BSD 在 1985 年之后引入的(BSD 4.2 仍然是记录 /usr)并且在 1988 年或之前(BSD 4.3/SunOS 4.1hier(7)手册页已经文件 /home)。紧随其后的是 Solaris 2.0(它合并了 System V 和 BSD),后来被大多数其他 Unix 供应商采用。

这是来自 Solaris 2.0useradd手册页:

   -D 显示 group、basedir、skel、shell 的默认值
               不活跃,并且过期。与 -g、-b、-f 或 -e 一起使用时
               选项,-D 选项设置默认值
               指定字段。默认值为:

                       其他组(GID 为 1)
                       基迪尔     /家
                       斯凯尔 /etc/skel
                       外壳 /sbin/sh
                       不活跃 0
                       Null 过期(未设置)。

在此之前,较旧的 Unix 使用传统/usr目录或某些变体,例如 SVR3 和 SVR4.0 中记录的 /user1。 Unix版本7hier(7) 手册页定义/usr为用户主目录的默认位置:

/usr/wd/     initial working directory of a user, typically wd is the
             user's login name

Unix 版本 6,第一个在贝尔实验室之外广泛发布的 Unix,还没有hier手册页,但已经在使用和记录 /usr

有多种原因可以解释从其他事物转变/usr为其他事物,其中包括:

  • 对于某些 Unix 版本,升级操作系统是吹走/usr目录

  • 禁止使用tmpsrcbin等用户名,因为它们与 下的现有目录冲突。local/usr

  • /usr无法用作自动安装程序基目录,因为它不为空(感谢 Johan 指出这一点)

  • 无盘机器预计使用只读 NFS 共享/usr但可读写主目录

相关内容