Linux 术语全解析:从基础符号到系统概念
1. 符号与基本概念
在 Linux 和 Unix 环境中,一些符号有着特殊的含义。在文件管理中,“.” 表示当前目录,“..” 指向当前浏览目录的父目录,“/” 代表文件系统的根,同时也用于分隔路径列表中的目录,“~” 则指向用户的主目录。
在命令提示符下,“|” 是管道符号,用于将一个命令的输出传递给另一个命令;“>” 表示将输出重定向到一个文件;“<” 则意味着命令应从文件接受输入。“#” 通常表示用户当前以 root 用户身份登录,“$” 表示普通用户登录,但部分 Linux/Unix 版本会用 “%” 或 “>” 替代 “$”。
“?” 和 “” 是通配符,“?” 表示任意字符可替代其位置,“” 则表示零个或多个字符可出现在其位置。“*nix” 是一种流行但非官方的说法,用于描述包含 Unix 及其各种克隆版本(如 Linux 和 Minix)的家族体系。
2. 系统角色与管理
2.1 管理员相关
“administrator” 指的是 root 用户或临时获得其权限的人。在 IBM 环境中,“AIX” 是 IBM 专有的 Unix 版本,可运行在其专有硬件以及基于 AMD 和 Intel 处理器的通用硬件上,但如今 IBM 正逐渐弃用 AIX 而转向 Linux。
2.2 软件管理
“alias” 是创建用户自定义命令的方法,输入该自定义命令时会执行另一个命令或展开字符串。“Apache” 是流行的开源 Web 服务器软件,运行于 Unix、Linux 等操作系统平台,在 20 世纪 90 年代后期对 Linux 的普及起到了推动作用。
在 Ubuntu 和 Debian Linux 系统中,“APT”(Advanced Packaging Tool)是管理和安装软件的底层系统。以 “apt” 开头的 shell 命令(如 “apt-get”)可从各种软件仓库安装新软件,在 Ubuntu 中,“Synaptic Package Manager” 程序提供了使用 APT 的图形界面方法。
2.3 程序与设备
“BASH”(Bourne Again SHell)是 Linux 下最常用的 shell 解释器,许多 Linux 系统将其作为默认选项。“binary executable” 指已编译好可日常使用的程序。
“block device” 是 Linux 内核与发送和接收数据块的设备(通常是硬盘或可移动存储设备)进行通信的方式,与之相对的 “character device” 指异步发送/接收数据的设备,通常指终端显示。
3. 编程语言与开发
3.1 编程语言
“C” 语言是编写 Linux 内核的主要语言,也是早期 Unix 版本使用的语言,它由创建 Unix 的部分人员开发,其发展与 Unix 同步。“C++” 是面向对象的编程语言,最初是对 C 语言的增强,如今是流行的替代方案。“C#” 是微软创建的现代编程语言,通过 Mono 项目在 Linux 上重新实现。
3.2 开发相关
“compile” 是从源代码创建二进制文件的过程,通常使用 “./configure”、“make”、“make install” 系列命令和脚本实现。“config file” 是包含程序设置列表的配置文件,有时需要使用 “vi” 或 “Emacs” 等程序手动编辑,但通常程序会根据用户选择的设置自行写入配置文件。
“copyleft” 是一种法律原则,通过具有法律约束力的许可证保护共享创意作品(如计算机程序)的权利,并确保作品的后续迭代也受同样保护。
4. 系统服务与任务调度
4.1 服务相关
“cron” 是后台服务,依赖 “crontab” 文件来安排任务在特定时间执行。“CUPS”(Common Unix Printing System)是一组在后台工作以处理 Unix 和 Linux 下打印任务的程序。
4.2 版本控制
“CVS”(Concurrent Versioning System)允许将软件包的最新版本通过互联网分发给开发者和其他相关方。
4.3 系统依赖与设备
“dependency” 指程序运行所需的系统文件,如果在程序安装时缺少这些依赖项,程序可能拒绝安装。“device” 是 Linux 中对系统上为用户提供功能或系统运行所需组件的简称,通常指硬件,也可指为提供特定 Linux 功能而创建的虚拟设备。
以下是部分符号和术语的简单表格总结:
| 符号/术语 | 含义 |
| ---- | ---- |
|. | 当前目录 |
|.. | 父目录 |
| / | 文件系统根目录 |
| ~ | 用户主目录 |
| | | 管道符号 |
| > | 输出重定向 |
| < | 输入重定向 |
| administrator | root 用户或临时获权者 |
| APT | 软件管理工具 |
| BASH | 常用 shell 解释器 |
mermaid 流程图展示文件管理符号的关系:
graph LR A[文件管理] --> B[当前目录:.] A --> C[父目录:..] A --> D[根目录:/] A --> E[用户主目录:~]5. 系统发行版与文件系统
5.1 系统发行版
“Debian” 是一个志愿组织,致力于生产包括 Linux 在内的免费软件操作系统发行版。因其由热情的自由软件倡导者运营的非营利组织,被认为是最具道德性的 Linux 组织。许多发行版(如 Ubuntu)以 Debian 为软件基础,因其声称的可靠性和相对简单性。
“distribution”(也称为 “distro”)是构成 Linux 操作系统的软件集合,通常由公司或组织编译,旨在易于安装、管理和使用。常见的发行版包括 Ubuntu、SUSE Linux、Red Hat 和 Debian。
5.2 文件系统
“FAT32” 是 Windows 98、Me、2000 和 XP 提供的文件系统,Linux 可以读写该文件系统。“NTFS” 是 Windows NT、2000 和 XP 提供的文件系统,Linux 可以读取,但通常禁止写入,因为被认为不安全。“VFAT” 是微软在 Windows 和可移动存储设备(如闪存卡)上提供的 FAT 文件系统的技术名称。
6. 图形界面与网络相关
6.1 图形界面
“GNOME”(GNU Network Object Model Environment)是 Ubuntu 等多个发行版使用的基于 GUI 的桌面环境,使用 GTK+ 库。“KDE”(K desktop environment)是在 Mandriva 和 Ubuntu 的变种 Kubuntu 等发行版上使用的 GUI 和一组附加程序。
“GUI”(Graphical user interface)是提供图形系统以显示数据并让用户控制 PC(通常通过鼠标)的软件。
6.2 网络相关
“NFS”(Network File System)是在基于 Unix 的操作系统网络中可靠且成熟的共享文件、打印机和其他资源的方法。“Samba” 程序在 Unix 或 Linux 下重新创建了基于 Microsoft SMB 的网络资源共享系统,使 Linux 可以成为 Linux 和 Windows 计算机的文件或打印机服务器,也允许 Linux 客户端访问基于 Windows 的服务器。
“SSH”(Secure SHell)程序允许通过 Internet 访问 Linux/Unix 计算机,并对传输的数据进行加密。“SSL”(Secure Sockets Layer)是一种网络数据传输方式,旨在为安全目的对信息进行加密,常用于某些网站和 Linux 中的某些类型的安全数据交换。
7. 系统启动与进程管理
7.1 系统启动
“GRUB”(GRand Unified Bootloader)是一个启动管理器程序,提供一个菜单,用户可以从中选择要启动的操作系统,它是加载内核程序并启动 Linux 启动过程所必需的。
“init” 是在内核加载完成后自动运行的程序,负责启动操作系统。“init.d” 是一组构成运行级别组件的启动脚本,在 Ubuntu 中,这些脚本位于 /etc/init.d/ 目录,指向选定 init.d 脚本的符号链接包含在以运行级别编号命名的文件夹中(如 rc0.d、rc1.d 等)。
7.2 进程管理
“PID”(Process ID)是用于引用进程的编号系统。“process” 是系统对在内存中运行的单个程序(或程序组件)的称呼。“job” 是 BASH shell 对正在运行的程序的称呼,以便用户进行管理。
8. 其他重要概念
8.1 开源与专有
“open source” 指软件开发方法和哲学,即源代码可供所有人查看,但这与 “Free Software” 不同,描述软件为开源并不意味着代码可以被他人共享或使用。“proprietary” 指需要获取软件许可证(通常需付费)的软件,通常源代码保密,或虽可查看但不能用于自己的项目或与他人共享。
8.2 数据备份与压缩
“archive” 是包含多个较小文件的文件,可压缩或不压缩,“tar”(Tape Archive)软件可以将多个文件组合成一个较大的文件,以便备份到磁带驱动器或通过 Internet 传输,此类文件通常以.tar 扩展名结尾。“bzip2” 和 “gzip” 是 Linux 下流行的文件压缩方式,使用 bzip2 压缩的文件通常以.bz2 扩展名结尾,使用 gzip 压缩的文件通常以.gz 扩展名结尾。
8.3 用户与权限
“root” 既指 Linux 文件系统目录结构的底部(通常用 “/” 表示),也指对硬件、软件和文件系统具有完全控制权的用户,还可指临时获得 root 用户权限的用户(如通过 “sudo” 命令)。“sudo” 程序允许普通用户临时获得管理员权限,Ubuntu 依赖 “sudo” 作为用户管理系统的唯一方式。
以下是部分术语的表格总结:
| 术语 | 含义 |
| ---- | ---- |
| Debian | 免费软件操作系统发行组织 |
| GNOME | 桌面环境 |
| NFS | 网络文件共享系统 |
| GRUB | 启动管理器 |
| open source | 开源软件开发理念 |
| archive | 包含多个文件的文件 |
| root | 根目录或超级用户 |
| sudo | 普通用户提权程序 |
mermaid 流程图展示系统启动相关组件的关系:
graph LR A[系统启动] --> B[GRUB] A --> C[init] C --> D[init.d] D --> E[运行级别脚本]以上对 Linux 相关术语的解析涵盖了从基础符号到系统概念的多个方面,希望能帮助大家更好地理解和使用 Linux 系统。