一、GNU 项目与 GPL 许可
(一)GNU 项目
-
GNU :GNU 是一个递归缩写,代表 "GNU's Not Unix"。GNU 项目旨在开发一个完全自由的操作系统,该操作系统基于 Unix 的设计理念但不包含 Unix 的代码。GNU 项目提供了大量的自由软件,如 GNU Compiler Collection(GCC)、GNU Bash 等,这些软件在 Linux 系统中得到了广泛的应用。
(二)GPL 通用公共许可
-
开源与修改 :GPL 规定,使用 GPL 许可的软件,其源代码必须对用户开放,用户可以获取源代码并进行修改。
-
修改后的代码公开 :任何基于 GPL 软件修改后的版本也必须采用 GPL 许可,且修改后的源代码需要公开。这意味着在使用和修改 GPL 软件时,必须遵守其开源和共享的原则。
二、Linux 发展历程
(一)关键人物与里程碑
-
Unix 的诞生 :Unix 是一个强大的多用户、多任务操作系统,由 AT&T 贝尔实验室的肯・汤普逊(Ken Thompson)和丹尼斯・里奇(Dennis Ritchie)等人在 20 世纪 70 年代初开发。Unix 的成功为后续操作系统的发展奠定了基础。
-
谭宁邦与 Minix :谭宁邦(Andrew Tanenbaum)开发了 Minix 操作系统,它是一个小型的 Unix-like 系统,主要用于教学目的。Minix 的出现为那些想了解操作系统内部工作原理的人提供了一个实验平台。
-
斯托曼与 GNU :理查德・斯托曼(Richard Stallman)于 1983 年发起了 GNU 项目,旨在创建一个完全自由的操作系统。他开发了大量自由软件,并创立了自由软件基金会(FSF),推广自由软件理念。
-
托沃兹与 Linux 内核 :1991 年,林纳斯・托沃兹(Linus Torvalds)在 GNU 组件的基础上开发了 Linux 内核,并通过互联网发布。Linux 内核的出现使得 GNU 组件有了一个稳定的核心,形成了完整的操作系统,即 GNU/Linux 系统。随着时间的推移,Linux 不断发展,形成了多种不同的发行版本。
(二)Linux 系统的分类与特点
-
红帽企业版 Linux(RHEL) :
-
特点 :红帽企业版 Linux 是一款商业化的 Linux 发行版,提供长期支持、稳定性和安全性。它适用于企业环境,提供专业的技术支持和更新服务。
-
应用场景 :广泛应用于企业级服务器、数据中心等场景,适合对稳定性要求极高的生产环境。
-
-
CentOS :
-
特点 :CentOS 是基于红帽企业版 Linux 的源代码重新编译而成的免费发行版,与 RHEL 在功能和使用体验上几乎一致,但去掉了红帽的商业标志和部分商业组件。它继承了 RHEL 的稳定性和安全性特点。
-
应用场景 :常用于企业级服务器、云计算环境等,适合对成本敏感但又需要稳定性和可靠性的用户。
-
-
Rocky Linux :
-
特点 :Rocky Linux 是在 CentOS 停止更新后出现的一个替代品,由 CentOS 的创始人之一领导开发,目标是提供一个与 RHEL 兼容的免费、开源的企业级操作系统。
-
应用场景 :逐渐被企业所采用,尤其是在 CentOS 用户群体中,作为 CentOS 的替代方案。
-
-
Fedora :
-
特点 :Fedora 是一个由社区支持的 Linux 发行版,注重最新的软件技术和创新。它提供了丰富的软件包和强大的功能,桌面环境较为酷炫,适合追求新技术和个性化配置的用户。
-
应用场景 :适合开发者、技术爱好者以及对最新软件有需求的用户,常用于桌面系统和开发环境。
-
-
Debian :
-
特点 :Debian 是一个以稳定性和安全性著称的 Linux 发行版,严格遵循软件自由协议。它拥有庞大的软件包库,经过严格的测试和质量控制,确保系统的稳定性和安全性。
-
应用场景 :适用于对系统稳定性要求较高的服务器和个人桌面环境,尤其适合对安全有较高要求的场景。
-
-
Ubuntu :
-
特点 :Ubuntu 基于 Debian 开发,提供了简单易用的安装过程和用户友好的桌面环境。它注重用户体验,拥有丰富的软件资源和活跃的社区支持,既有适合桌面使用的版本,也有适用于服务器的企业级版本(如 Ubuntu Server)。
-
应用场景 :广泛应用于个人电脑、工作站、服务器以及云计算环境,是开发者和普通用户都较为喜爱的 Linux 发行版之一。
-
-
SUSE/openSUSE :
-
特点 :SUSE Linux 原产于德国,以高级数据库和高级邮件服务等功能而闻名。openSUSE 是其社区版本,提供了稳定、灵活的操作系统,适合对特定企业级服务有需求的用户。
-
应用场景 :适用于企业级服务器环境,尤其是在需要高性能数据库和邮件服务的场景中。
-
-
红旗 Linux(RedFlag) :
-
特点 :红旗 Linux 是中国本土的 Linux 发行版,得到了政府和企业的支持,致力于提供符合中国用户需求的操作系统解决方案,注重本地化和安全性。
-
应用场景 :在国内政府机构、企事业单位等领域有一定的应用,特别是在对国产操作系统有需求的场景中。
-
-
中标麒麟 Linux :
-
特点 :中标麒麟 Linux 是一款面向政府和企业市场的 Linux 操作系统,通过了相关安全认证,提供了高安全性、可靠性和易用性的特点。
-
应用场景 :在政府、金融、能源等关键行业领域得到应用,满足对信息安全和自主可控有较高要求的场景。
-
(三)Linux 在企业中的应用
-
国内现状 :在国内,CentOS 曾经是主要的服务器 Linux 系统之一,但由于 CentOS 在 2021 年底停止更新,部分用户逐渐转向其他发行版。目前,Rocky Linux 的使用逐渐增加,同时国内的 Linux 系统(如红旗 Linux、中标麒麟 Linux 等)也在一些特定领域占据了一定的市场份额。
-
版本选择建议 :
-
企业级推荐 :对于企业级应用,推荐使用 CentOS 7.x,由于其稳定性和广泛的应用支持。部分企业仍在使用较旧的 CentOS 6.x 版本,但由于安全更新和软件支持的限制,建议逐步升级到 newer 的版本。
-
其他选择 :如果 CentOS 不是首选,Rocky Linux 是一个很好的替代方案。对于桌面使用场景或开发环境,Ubuntu 20.04 LTS(长期维护版)是一个不错的选择,它提供了良好的用户体验和长期的支持周期。
-
三、Linux常用命令与远程连接工具
(一)显示 IP 地址的指令
-
命令 :
ip a
(ip addr
的简写) -
作用 :用于显示网络接口的 IP 地址信息,包括 IPv4 和 IPv6 地址、网卡状态等。
(二)远程连接工具
-
Windows 系统 :
-
Xshell :一款功能强大的安全终端模拟软件,支持多种协议(如 SSH、Telnet 等),提供稳定的远程连接服务,界面友好,操作便捷。
-
SecureCRT :由 VanDyke Software 开发的一款终端仿真程序,支持 SSH、Telnet 等协议,以其卓越的性能和强大的功能而闻名,广泛应用于企业级远程管理。
-
Putty :一款免费的开源软件,支持 SSH、Telnet 等多种协议,体积小巧,易于使用,适合个人用户和小型团队进行远程连接。
-
FinalShell :集成了文件管理、远程桌面、数据库管理等功能的远程连接工具,支持 SSH 协议,操作简单,功能全面。
-
MobaXterm :一款支持多种协议(如 SSH、RDP、VNC 等)的远程连接工具,同时还提供 X11 服务器功能,方便在 Windows 系统上运行 Linux 的图形界面应用程序。
-
-
Mac 系统 :
-
SecureCRT :与 Windows 版本类似,提供安全可靠的远程连接服务。
-
iTerm2 :一款 macOS 平台上的终端仿真器,支持 SSH 等协议,具有丰富的功能和良好的用户体验,可作为系统自带终端的替代品。
-
FinalShell :同样适用于 Mac 系统,提供便捷的远程连接和管理功能。
-
-
Android 系统 :
-
JuiceSSH :一款功能较为全面的 SSH 客户端应用,支持 SSH 和 Mosh 协议,界面简洁,操作方便,适合在移动设备上进行远程连接。
-
-
iOS 系统 :
-
Termius :支持 SSH、Telnet 等协议的远程连接应用,界面直观,操作便捷,适合在 iOS 设备上使用。
-