返回介绍

Linux

发布于 2025-02-21 23:48:35 字数 4496 浏览 0 评论 0 收藏 0

这是对 Linux 操作系统的附加说明。

6.1.1. / :根文件夹

在 Linux 系统上,如果内核位于 / ,我们建议使用 vmlinuxvmlinuz 这样的名称,这在最近的内核源软件包中已经采用。

6.1.2. /bin :必要的用户命令二进制文件(所有用户使用)

需要它们的 Linux 系统将这些附加文件放在 /bin 中:

  • Setserial

6.1.3. /dev :设备和特殊文件

/dev 下必须有以下文件

  • /dev/null

    所有写入到这一设备的数据将被忽略。读该设备将返回一个 EOF 条件。

  • /dev/zero

    该设备是一个输出零数据的源。所有写入此设备的数据被忽略。读该设备时将返回包含所请求数量的 0 值。

  • /dev/tty

    这一设备是进程控制终端的同义词。一旦打开该设备,所有的读取和写入会和实际打开了控制终端设备一样。

基础知识

以前的 FHS 版本对 /dev 有更严格的要求。其他设备也可以存在于 /dev 中。设备名可以是到 /dev//dev 的子文件夹下其他设备节点的符号链接。没有对主/次设备号值的要求。

6.1.4. /etc :主机特定的系统配置

需要它们的 Linux 系统将这些附加文件放在 /etc

  • lilo.conf

6.1.5. /lib64 和/lib32:64 位/32 位库(依赖于架构)

64 位架构的处理器 PPC64、s390x、sparc64 和 AMD64 必须将 64 位库放在 /lib64 中,32 位(或 s390 上的 31 位)库放在 /lib 中。

64 位架构 IA64 必须将 64 位库放在 /lib 中。

基础知识

这是对 /lib<qual>/usr/lib<qual> 通用规则的一个完善。PPC64、s390x、sparc64 和 AMD64 架构同时支持 32 位(对于 s390 更准确是 31 位)和 64 位程序。使用 /lib 放置 32 位二进制文件可以使现有 32 位系统中的二进制不须作任何改变就可以使用:这些二进制文件是很多的。IA-64 使用不同的方案,反映了该架构对 32 位二进制文件(连带库)的排斥。

6.1.6. /proc :内核和进程信息虚拟文件系统

Proc 是 Linux 中处理进程和系统信息的实际标准方法,而不是 /dev/kmem 和其他类似的方法。我们强烈建议使用它来存储和取回进程信息和其他内核与内存信息。

6.1.7. /sbin :必要的系统二进制文件

Linux 系统将这些附加文件放在 /sbin 中。

  • 第二扩展文件系统(ext2)命令(可选):
    • badblocks
    • dumpe2fs
    • e2fsck
    • mke2fs
    • mklost+found
    • tune2fs
  • 引导装载程序映射安装器(可选):
    • lilo

其他/sbin 的文件:

  • 静态二进制文件:
    • ldconfig
    • sln
    • ssync

    使用静态的 lnsln )和静态的 syncssync )在出错时很有用。 Sln 的主要用途(在进行编排不当的升级后修复 /lib 中受损的符号链接)已经不是关注的重点;因为有了 ldconfig 程序(通常位于 /usr/sbin ),它可以作为升级动态库的向导工具。在一些紧急情况下静态的 sync 是有用的。注意这不是说必需使用静态链接版本的 lnsync ,但可以是。

    ldconfig 二进制文件是 /sbin 中可选的,因为一个站点可能选择在启动时运行 ldconfig ,而不只在升级共享库时。(在每次启动时运行 ldconfig 是好是坏没有定论)。尽管如此,有些人喜欢顺手使用 ldconfig ,在以下情况下(都很常见):

    1. 刚删除了 /lib/<file>
    2. 找不到库的名称,因为 ls 是动态链接的,使用了一个没有内建 ls 的 shell,也不知道可以用 echo * 代替它。
    3. 有一个静态的 sln ,但不知道如何调用该链接。
  • 杂项:
    • Ctrlaltdel
    • Kbdrate

    这里为了应付有些键盘自带的重复速度过快以致无法使用的情况,可以在一些系统中安装 kbdrate 程序到 /sbin

    由于内核中 Ctrl - Alt - Del 组合键的默认动作是立即硬重启,通常可以考虑在以读写模式挂载根文件系统前禁止该行为。有些 init 套件能够禁用 Ctrl - Alt - Del ,但另一些可能需要 ctrlaltdel 程序,它可以安装在这些系统的 /sbin 中。

6.1.8. /usr/include:C 程序包含的头文件

对于安装了 C 或 C++编译器且不使用 glibc 的系统,要求有以下的符号链接。

  • /usr/include/asm -> /usr/src/linux/include/asm-<arch>
  • /usr/include/linux -> /usr/src/linux/include/linux

6.1.9. /usr/src:源代码

对于基于 glibc 的系统,对此文件夹没有特殊规定。对于基于比 glibc 早的 Linux libc 修订版的系统,要遵守以下的规定和基本原理:

  • 唯一应该被放置在特殊位置的是 Linux 内核源代码。它位于/usr/src/linux。
  • 如果安装了 C 或 C++编译器,但没有安装完整的 Linux 内核源代码,则内核源代码的头文件必须位于以下文件夹:
    • /usr/src/linux/include/asm-<arch>
    • /usr/src/linux/include/linux

    <arch> 是系统架构的名称。

注意

/usr/src/linux 可以是到内核源码树的符号链接。

基本知识

内核头文件放在 /usr/src/linux 而不是 /usr/include 是很重要的,因为这样系统管理员初次更新他们的版本号时不会出现问题。

6.1.10. /var/spool/croncronat 任务

此文件夹包含了 cronat 程序的可变数据。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文