/etc这个目录是什么东西的缩写

本文深入解析Unix系统中RC、ETC、Bin、TTY与Dev这几个关键概念的起源与用途,揭示其在Unix及Linux系统中的历史演变与重要角色。
Unix已经有35年历史了。许多人认为它开始于中世纪,这个中世纪是相对于计算机技术的产生和发展来说的。在过去的时间里,Unix和它的子分支Linux收集有许多的历史和一些完全古老的语言。在这篇技巧文章中,我们将介绍一少部分古老的语言和它们的目的和作用,以及它们真正的来源。

  RC

  在Linux中,最为常用的缩略语也许是“rc”,它是“runcomm”的缩写――即名词“run command”(运行命令)的简写。今天,“rc”是任何脚本类文件的后缀,这些脚本通常在程序的启动阶段被调用,通常是Linux系统启动时。如 /etc/rs是Linux启动的主脚本,而.bashrc是当Linux的bash shell启动后所运行的脚本。.bashrc的前缀“.”是一个命名标准,它被设计用来在用户文件中隐藏那些用户指定的特殊文件;“ls”命令默认情况下不会列出此类文件,“rm”默认情况下也不会删除它们。许多程序在启动时,都需要“rc”后缀的初始文件或配置文件,这对于Unix的文件系统视图来说,没有什么神秘的。

  ETC

  在“etc/bin”中的“etc”真正代表的是“etcetera”(附加物)。在早期的Unix系统中,最为重要的目录是“bin”目录 (“bin”是“binaries”二进制文件――编译后的程序的缩写),“etc”中则包含琐碎的程序,如启动、关机和管理。运行一个Linux必须的东西的列表是:一个二进制程序,etcetera,etcetera――换句话说,是一个底层的重要项目,通常添加一些次等重要的零碎事物。今天, “etc”包含了广泛的系统配置文件,这些配置文件几乎包含了系统配置的方方面面,同样非常重要。

  Bin

  今天,许多在Linux上运行的大型子系统,如GNOME或Oracle,所编译成的程序使用它们自己的“bin”目录(或者是 /usr/bin,或者是/usr/local/bin)作为标准的存放地。同样,现在也能够在这些目录看到脚本文件,因为“bin”目录通常添加到用户的PATH路径中,这样他们才能够正常的使用程序。因此运行脚本通常在bin中运行良好。

  TTY

  在Linux中,TTY也许是跟终端有关系的最为混乱的术语。TTY是TeleTYpe的一个老缩写。Teletypes,或者 teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,和古老的电报机区别并不是很大。之后,当计算机只能以批处理方式运行时(当时穿孔卡片阅读器是唯一一种使程序载入运行的方式),电传打字机成为唯一能够被使用的“实时”输入/输出设备。最终,电传打字机被键盘和显示器终端所取代,但在终端或 TTY接插的地方,操作系统仍然需要一个程序来监视串行端口。一个getty“Get TTY”的处理过程是:一个程序监视物理的TTY/终端接口。对一个虚拟网络沮丧服务器(VNC)来说,一个伪装的TTY(Pseudo-TTY,即家猫的TTY,也叫做“PTY”)是等价的终端。当你运行一个xterm(终端仿真程序)或GNOME终端程序时,PTY对虚拟的用户或者如xterm一样的伪终端来说,就像是一个TTY在运行。“Pseudo”的意思是“duplicating in a fake way”(用伪造的方法复制),它相比“virtual”或“emulated”更能真实的说明问题。而在现在的计算中,它却处于被放弃的阶段。

  Dev

  从TTY留下的命令有“stty”,是“set tty”(设置TTY)的缩写,它能够生成一个配置文件/etc/initab(“initialization table”,初始表),以配置gettys使用哪一个串口。在现代,直接附加在Linux窗口上的唯一终端通常是控制台,由于它是特殊的TTY,因此被命名为“console”。当然,一旦你启动X11,“console”TTY就会消失,再也不能使用串口协议。所有的TTY都被储存在“/dev”目录,它是“[physical] devices”([物理]设备)的缩写。以前,你必须在电脑后面的串口中接入一个新的终端时,手工修改和配置每一个设备文件。现在,Linux(和 Unix)在安装过程中就在此目录中创建了它所能向导的每一个设备的文件。这就是说,你很少需要自己创建它。

  随着硬件在电脑中的移出移进,这些名字将变得更加模糊不清。幸运的是,今天在Linux上的高等级软件块对历史和硬件使用容易理解的名字。举例来说,嗯,Pango(http://www.pango.org/)就是其中之一。

  如果你对这些内容很感兴趣,那么我建议你阅读宏大的,但有些以美国英语历史为中心的,由Eric S. Raymond撰写的Jargon File。它并没有解释所有在Unix中使用的术语,但是它给出了这些形成的大致情况。
IDM LDAP 并不是一个标准术语,但根据上下文推测,你可能是在询问与 **Identity Manager (IDM)** 和 **LDAP(Lightweight Directory Access Protocol)** 相关的技术组合。这类术语常见于企业级身份管理和目录服务架构中。 下面我将解释 IDM 与 LDAP 的关系,并说明“IDM LDAP”通常指的是什么。 --- ### ✅ 什么是 IDM? **IDM** 是 **Identity Manager** 的缩写,即“身份管理器”,是一种用于集中管理用户身份、权限、认证和访问控制的系统。常见的 IDM 系统包括: - Red Hat Identity Management (IdM) —— 基于 IPA(Identity, Policy, and Audit) - Microsoft Active Directory Federation Services (AD FS) - IBM Security Identity Manager - Oracle Identity Manager - SailPoint - Keycloak(现代开源 IDM) 其中,**Red Hat IdM** 是一个典型的集成式身份管理系统,它内置了对 LDAP 的支持。 --- ### ✅ 什么是 LDAP? **LDAP(Lightweight Directory Access Protocol)** 是一种开放的、标准的协议,用于访问和维护分布式目录信息服务。它常用于存储组织结构、用户账号、组、设备等信息。 典型用途: - 用户登录验证(如公司内网登录) - 集中式用户数据库(替代本地 `/etc/passwd`) - 与邮件系统、应用系统集成进行身份认证 LDAP 的常见实现有: - OpenLDAP - 389 Directory Server - Microsoft Active Directory(AD 使用 LDAP 协议作为其访问接口之一) --- ### 🔗 IDM 与 LDAP 的关系 在大多数 IDM 系统中,**LDAP 是底层的数据存储引擎**。例如: | IDM 系统 | 是否使用 LDAP | 说明 | |--------|-------------|------| | Red Hat IdM | ✅ 是 | 基于 389 Directory Server(LDAP 实现) | | Microsoft AD | ✅ 是 | AD 域控制器使用 LDAP 提供目录服务 | | OpenLDAP + 自建认证系统 | ⚠️ 部分 | 可以自己构建简易 IDM | | Keycloak | ❌ 否(默认) | 使用数据库(如 PostgreSQL),但可桥接 LDAP | 所以,“**IDM LDAP**”通常是指: 👉 **通过 LDAP 协议访问 IDM 系统中管理的身份目录数据**。 --- ### 🧩 示例:Red Hat IDM 中的 LDAP 使用 Red Hat IdM 使用 **389 Directory Server** 作为其 LDAP 后端。你可以用标准 LDAP 工具查询用户信息。 #### 示例代码:使用 Python 查询 Red Hat IDM 中的用户(通过 LDAP) ```python import ldap3 # 连接到 IDM 的 LDAP 服务器 server = ldap3.Server('ldap://idm.example.com', port=389, use_ssl=False) conn = ldap3.Connection( server, user='uid=admin,cn=users,cn=accounts,dc=example,dc=com', password='Secret123', auto_bind=True ) # 搜索所有用户 conn.search( 'cn=users,cn=accounts,dc=example,dc=com', '(objectClass=person)', attributes=['cn', 'uid', 'mail'] ) # 打印结果 for entry in conn.entries: print(entry) ``` #### 输出示例: ``` dn: uid=jdoe,cn=users,cn=accounts,dc=example,dc=com cn: John Doe uid: jdoe mail: jdoe@example.com ``` 这个例子展示了如何通过 LDAP 协议从 IDM 系统中读取用户信息。 > 注意:实际环境中建议启用 TLS/SSL 加密通信(LDAPS 或 StartTLS)。 --- ### 🔐 IDM LDAP 的典型应用场景 1. **统一身份认证**:多个系统共享一套用户库。 2. **单点登录(SSO)基础**:LDAP 提供用户凭证验证。 3. **自动化账户管理**:新增员工时自动创建 LDAP 账号。 4. **与应用程序集成**:如 GitLab、Jenkins、Kubernetes 等支持 LDAP 认证。 --- ### 总结 “**IDM LDAP**”不是某个具体产品名,而是指: > 在 **身份管理系统(IDM)** 中使用 **LDAP 协议或 LDAP 目录服务** 来实现用户身份的集中管理与认证。 最常见的实现是 **Red Hat IdM** 或 **Microsoft Active Directory**,它们都基于 LDAP 协议提供目录服务。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值