AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 24523
Accepted
Luke
Luke
Asked: 2009-06-12 21:11:57 +0800 CST2009-06-12 21:11:57 +0800 CST 2009-06-12 21:11:57 +0800 CST

Unix 和类 Unix 系统上目录的含义

  • 772

我已经使用 Linux 几年了,但我仍然没有弄清楚某些目录名称在 Unix 和类 Unix 系统上的来源或含义是什么。例如,什么etc代表或var?opt名字从何而来?

无论如何,当我们讨论这个话题时。有人可以清楚地解释哪个目录最适合做什么。我有时会混淆某些软件的安装位置,或者最适合安装软件的目录。

linux unix directory
  • 7 7 个回答
  • 54682 Views

7 个回答

  • Voted
  1. Best Answer
    sysadmin1138
    2009-06-12T21:16:01+08:002009-06-12T21:16:01+08:00

    有关 Linux 文件系统布局的更多数据,请查看Filesystem Hierarchy Standard(现在是 2.3版,最新发行版上部署了beta 3.0版)。它确实解释了一些名称的来源:

    • /bin -二进制文件。
    • /boot -引导所需的文件。
    • /dev -设备文件。
    • / etc -等等。该名称继承自最早的 Unix,当时它成为放置配置文件的地方。
    • /home -保存主目录的位置。
    • /lib -保存代码的地方。
    • /media - 一个更现代的目录,但是安装了可移动媒体。
    • /mnt - 临时文件系统被装载的地方。
    • /opt -安装附加软件的位置。/usr/local/由于我稍后会谈到的原因,这是离散的
    • /run -保存运行时变量数据的地方。
    • /sbin -超级二进制文件的位置。这些通常仅适用于 root。
    • /srv - 代表“服务”。此目录适用于提供的静态文件。将用于静态网站,用于 FTP 服务器。/srv/http/srv/ftp
    • / tmp -可以存储临时文件的位置。
    • /usr - 从旧的Unix继承的另一个目录,它代表“ UNIX系统资源”。它不代表“用户”(参见Debian Wiki)。该目录应该可以在主机之间共享,并且可以通过 NFS 安全地挂载到多个主机。它可以安全地以只读方式安装。
    • /var - 从旧的 Unix 继承的另一个目录,它代表“ var iable”。这是可以存储变化的系统数据的地方。诸如假脱机和缓存目录之类的东西可能位于此处。如果一个程序需要写入本地文件系统并且不直接向某人提供该数据,它会去这里。

    /opt 与 /usr/local

    我见过的经验法则最好描述为:

    用于/usr/local通常会进入的/usr事物,或者覆盖已经进入的事物/usr。用于/opt安装在一个目录中或其他特殊的东西。

    • 178
  2. Mike
    2013-06-06T09:13:13+08:002013-06-06T09:13:13+08:00

    很抱歉复活一个旧线程,但我觉得这个细节对于所有未来寻求此信息的人来说是一个重要的澄清:

    • /opt代表可选(如在可选附加包中)。
    • /bin代表二进制(包含操作系统使用的可执行文件)。
    • /lib代表库(包含文件系统和引导使用的共享库,可能由 bin 中的可执行文件使用)
    • /proc代表进程。
    • /root表示 root 用户。
    • /home保存所有非 root 用户的 home 子目录。
    • /dev代表设备(保存特殊和设备文件)。
    • /tmp代表临时。
    • /srv代表服务。
    • /mnt代表挂载点(在这里挂载一个临时文件系统)。
    • /include包含#include 文件,即头文件(例如,stdio.h)。
    • /var代表变量
    • /etc代表等等

    • /usr代表 Unix 系统资源(来源)

    • 30
  3. Eddie
    2009-06-12T21:29:24+08:002009-06-12T21:29:24+08:00

    从历史上看,/etc代表“etcetera”,/var是“variable”的缩写。我想前者是因为大量不相关的系统配置文件进入/etc. 后者是因为/var预期中的文件会更改。您通常可以以只读方式挂载(执行更新时除外),但永远不能以/usr只读方式挂载。它保存系统日志文件、锁定文件、假脱机文件和其他动态变化的东西。//var

    其他人给了你一些建议,以帮助你找出最好的地方。

    • 22
  4. Anonymous
    2009-06-24T10:18:38+08:002009-06-24T10:18:38+08:00

    尝试这个:

    $ man hier
    
    • 22
  5. Joe
    2009-06-12T21:16:10+08:002009-06-12T21:16:10+08:00

    寻找它的最佳位置是文件系统层次标准 (FHS)。最新版本是 2.3,可在以下网址获得:http: //www.pathname.com/fhs/pub/fhs-2.3.html。

    • 7
  6. prado
    2016-05-18T09:58:46+08:002016-05-18T09:58:46+08:00

    /usr实际上意味着Unix 系统资源

    来源:: https://wiki.debian.org/FilesystemHierarchyStandard

    • 2
  7. Anwar khan
    2017-11-21T22:57:33+08:002017-11-21T22:57:33+08:00

    如果您观察几种风格的 unix 操作系统,您会发现目录名称有一些区别,但大多数常见的都在下面解释......

    /bin 代表二进制(包含二进制文件,也包含用户最常用的命令。它也是命令执行的默认路径)。

    /sbin(这包含通常由超级用户触发的特殊命令)

    /lib 代表库(包含文件系统和引导使用的共享库,可能由 bin 中的可执行文件使用) /proc 代表进程(如果您想验证只需检查此目录,它将包含几个以随机数命名的目录,即只有进程号,您可以通过 ps - ef 进行交叉检查)

    /root 表示 root 用户。(root 用户的默认目录) /home(所有非 root 用户在此目录下都有主目录) /dev 代表设备(保存特殊和设备文件,如果您通过 ls 查看此目录-l 命令主要和次要编号也显示在这个目录中,也显示在 ls -l 结果中每行开头的设备类型。B 表示块特殊设备,c 表示字符特殊设备)。/tmp 代表临时。(某些进程需要的临时资源暂时保存在这里) /mnt 代表挂载点(在这里挂载一个临时文件系统)。/var 代表变量(它保存可变数据,它包含的目录每次都会改变大小) /opt 代表可选(通常第三方软件安装在此目录中)。/usr 代表 Unix 系统资源。

    • 1

相关问题

  • 你最喜欢的 Linux 发行版是什么?[关闭]

  • 更改 PHP 的默认配置设置?

  • 保护新的 Ubuntu 服务器 [关闭]

  • (软)Ubuntu 7.10 上的 RAID 6,我应该迁移到 8.10 吗?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve